From 2bf7b4591934ee03689386a789e5fd6c21f76fdd Mon Sep 17 00:00:00 2001 From: Jordie Date: Mon, 20 Nov 2017 15:38:25 +1100 Subject: [PATCH] Merge pull request #32880 from vuonojenmustaturska/chameleonprojfix Fixes vehicles & chameleon projector --- .../objects/items/devices/chameleonproj.dm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/code/game/objects/items/devices/chameleonproj.dm b/code/game/objects/items/devices/chameleonproj.dm index 65b584a878..d1de04923c 100644 --- a/code/game/objects/items/devices/chameleonproj.dm +++ b/code/game/objects/items/devices/chameleonproj.dm @@ -28,8 +28,8 @@ ..() disrupt() -/obj/item/device/chameleon/attack_self() - toggle() +/obj/item/device/chameleon/attack_self(mob/user) + toggle(user) /obj/item/device/chameleon/afterattack(atom/target, mob/user , proximity) if(!proximity) @@ -51,7 +51,7 @@ return TRUE return FALSE -/obj/item/device/chameleon/proc/toggle() +/obj/item/device/chameleon/proc/toggle(mob/user) if(!can_use || !saved_appearance) return if(active_dummy) @@ -59,15 +59,15 @@ playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6) qdel(active_dummy) active_dummy = null - to_chat(usr, "You deactivate \the [src].") + to_chat(user, "You deactivate \the [src].") new /obj/effect/temp_visual/emp/pulse(get_turf(src)) else playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6) - var/obj/effect/dummy/chameleon/C = new/obj/effect/dummy/chameleon(usr.loc) - C.activate(usr, saved_appearance, src) - to_chat(usr, "You activate \the [src].") + var/obj/effect/dummy/chameleon/C = new/obj/effect/dummy/chameleon(get_turf(user)) + C.activate(user, saved_appearance, src) + to_chat(user, "You activate \the [src].") new /obj/effect/temp_visual/emp/pulse(get_turf(src)) - usr.cancel_camera() + user.cancel_camera() /obj/item/device/chameleon/proc/disrupt(delete_dummy = 1) if(active_dummy) @@ -100,6 +100,9 @@ /obj/effect/dummy/chameleon/proc/activate(mob/M, saved_appearance, obj/item/device/chameleon/C) appearance = saved_appearance + if(istype(M.buckled, /obj/vehicle)) + var/obj/vehicle/V = M.buckled + V.riding_datum.force_dismount(M) M.loc = src master = C master.active_dummy = src