|
297 | 297 | /obj/structure/bed/rogue
|
298 | 298 | icon_state = "bed"
|
299 | 299 | icon = 'icons/roguetown/misc/structure.dmi'
|
300 |
| - anchored = TRUE |
301 |
| - can_buckle = TRUE |
| 300 | + anchored = 1 |
| 301 | + can_buckle = 1 |
| 302 | + buckle_lying = 1 |
302 | 303 | buckle_lying = 90
|
303 | 304 | pixel_y = 5
|
304 | 305 | sleepy = 2
|
|
309 | 310 | /obj/structure/bed/rogue/inn
|
310 | 311 | icon_state = "inn_bed"
|
311 | 312 | sleepy = 3
|
312 |
| - |
| 313 | +// Borbop's double bed code, thank you Borbop. --Cadet |
313 | 314 | /obj/structure/bed/rogue/inn/double
|
314 | 315 | icon_state = "double"
|
| 316 | + max_buckled_mobs = 2 |
315 | 317 | pixel_y = 0
|
316 | 318 | sleepy = 3
|
317 | 319 | debris = list(/obj/item/grown/log/tree/small = 2)
|
318 |
| -//////WIP This will essentially allow for multiple mobs to buckle, just needs to change mousedrop function |
319 |
| -/obj/structure/bed/rogue/inn/double |
320 |
| -// var/list/buckled_mobs = list() shouldnts be needed |
321 |
| -/* |
322 |
| -/obj/structure/bed/rogue/inn/double/post_buckle_mob(mob/living/M) |
| 320 | + /// The mob who buckled to this bed second, to avoid other mobs getting pixel-shifted before they unbuckle. |
| 321 | + var/mob/living/goldilocks |
| 322 | + |
| 323 | +/obj/structure/bed/rogue/inn/double/post_buckle_mob(mob/living/target) |
323 | 324 | . = ..()
|
324 |
| - if(!buckled_mobs) |
325 |
| - buckled_mobs = list() |
326 |
| - buckled_mobs += M |
327 |
| - M.set_mob_offsets("bed_buckle", _x = buckled_mobs.len * 10, _y = 5) |
| 325 | + if(length(buckled_mobs) > 1 && !goldilocks) // Push the second buckled mob a bit higher from the normal lying position |
| 326 | + target.set_mob_offsets("bed_buckle", _x = 0, _y = 13) |
| 327 | + goldilocks = target |
328 | 328 |
|
329 |
| -/obj/structure/bed/rogue/inn/double/post_unbuckle_mob(mob/living/M) |
| 329 | +/obj/structure/bed/rogue/inn/double/post_unbuckle_mob(mob/living/target) |
330 | 330 | . = ..()
|
331 |
| - if(M in buckled_mobs) |
332 |
| - buckled_mobs -= M |
333 |
| - M.reset_offsets("bed_buckle") |
| 331 | + if(target == goldilocks) |
| 332 | + goldilocks = null |
334 | 333 |
|
335 |
| - var/x_offset = 0 |
336 |
| - for(var/mob/living/buckled_mob in buckled_mobs) |
337 |
| - buckled_mob.set_mob_offsets("bed_buckle", _x = x_offset, _y = 5) |
338 |
| - x_offset += 10 |
339 |
| -*/ |
340 | 334 |
|
341 | 335 |
|
342 | 336 | // ------------ DECENT BEDS ----------------------
|
|
0 commit comments