another huge sync
This commit is contained in:
@@ -262,51 +262,57 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
px = -32
|
||||
|
||||
/obj/effect/hallucination/oh_yeah
|
||||
var/turf/closed/wall/wall
|
||||
var/obj/effect/hallucination/simple/bubblegum/bubblegum = null
|
||||
var/obj/effect/hallucination/simple/bubblegum/bubblegum
|
||||
var/image/fakebroken
|
||||
var/image/fakerune
|
||||
|
||||
/obj/effect/hallucination/oh_yeah/Initialize(mapload, var/mob/living/carbon/T)
|
||||
..()
|
||||
. = ..()
|
||||
target = T
|
||||
var/turf/closed/wall/wall
|
||||
for(var/turf/closed/wall/W in range(7,target))
|
||||
wall = W
|
||||
break
|
||||
if(wall)
|
||||
fakebroken = image('icons/turf/floors.dmi', wall, "plating", layer = TURF_LAYER)
|
||||
var/turf/landing = get_turf(target)
|
||||
var/turf/landing_image_turf = get_step(landing, SOUTHWEST) //the icon is 3x3
|
||||
fakerune = image('icons/effects/96x96.dmi', landing_image_turf, "landing", layer = ABOVE_OPEN_TURF_LAYER)
|
||||
fakebroken.override = TRUE
|
||||
if(target.client)
|
||||
target.client.images |= fakebroken
|
||||
target.client.images |= fakerune
|
||||
target.playsound_local(wall,'sound/effects/meteorimpact.ogg', 150, 1)
|
||||
bubblegum = new(wall, target)
|
||||
sleep(10) //ominous wait
|
||||
var/charged = FALSE //only get hit once
|
||||
while(get_turf(bubblegum) != landing && target && target.stat != DEAD)
|
||||
bubblegum.forceMove(get_step_towards(bubblegum, landing))
|
||||
bubblegum.setDir(get_dir(bubblegum, landing))
|
||||
target.playsound_local(get_turf(bubblegum), 'sound/effects/meteorimpact.ogg', 150, 1)
|
||||
shake_camera(target, 2, 1)
|
||||
if(bubblegum.Adjacent(target) && !charged)
|
||||
charged = TRUE
|
||||
target.Weaken(4)
|
||||
target.staminaloss += 40
|
||||
step_away(target, bubblegum)
|
||||
shake_camera(target, 4, 3)
|
||||
target.visible_message("<span class='warning'>[target] jumps backwards, falling on the ground!</span>","<span class='userdanger'>[bubblegum] slams into you!</span>")
|
||||
sleep(2)
|
||||
sleep(30)
|
||||
qdel(bubblegum)
|
||||
if(!wall)
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
fakebroken = image('icons/turf/floors.dmi', wall, "plating", layer = TURF_LAYER)
|
||||
var/turf/landing = get_turf(target)
|
||||
var/turf/landing_image_turf = get_step(landing, SOUTHWEST) //the icon is 3x3
|
||||
fakerune = image('icons/effects/96x96.dmi', landing_image_turf, "landing", layer = ABOVE_OPEN_TURF_LAYER)
|
||||
fakebroken.override = TRUE
|
||||
if(target.client)
|
||||
target.client.images |= fakebroken
|
||||
target.client.images |= fakerune
|
||||
target.playsound_local(wall,'sound/effects/meteorimpact.ogg', 150, 1)
|
||||
bubblegum = new(wall, target)
|
||||
addtimer(CALLBACK(src, .proc/bubble_attack, landing), 10)
|
||||
|
||||
/obj/effect/hallucination/oh_yeah/proc/bubble_attack(turf/landing)
|
||||
var/charged = FALSE //only get hit once
|
||||
while(get_turf(bubblegum) != landing && target && target.stat != DEAD)
|
||||
bubblegum.forceMove(get_step_towards(bubblegum, landing))
|
||||
bubblegum.setDir(get_dir(bubblegum, landing))
|
||||
target.playsound_local(get_turf(bubblegum), 'sound/effects/meteorimpact.ogg', 150, 1)
|
||||
shake_camera(target, 2, 1)
|
||||
if(bubblegum.Adjacent(target) && !charged)
|
||||
charged = TRUE
|
||||
target.Weaken(4)
|
||||
target.adjustStaminaLoss(40)
|
||||
step_away(target, bubblegum)
|
||||
shake_camera(target, 4, 3)
|
||||
target.visible_message("<span class='warning'>[target] jumps backwards, falling on the ground!</span>","<span class='userdanger'>[bubblegum] slams into you!</span>")
|
||||
sleep(2)
|
||||
sleep(30)
|
||||
qdel(src)
|
||||
|
||||
/obj/effect/hallucination/oh_yeah/Destroy()
|
||||
if(target.client)
|
||||
target.client.images.Remove(fakebroken)
|
||||
target.client.images.Remove(fakerune)
|
||||
QDEL_NULL(fakebroken)
|
||||
QDEL_NULL(fakerune)
|
||||
QDEL_NULL(bubblegum)
|
||||
return ..()
|
||||
|
||||
/obj/effect/hallucination/singularity_scare
|
||||
@@ -544,7 +550,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
/obj/item/clothing/suit/space/nasavoid, /obj/item/weapon/tank)
|
||||
|
||||
var/obj/effect/fake_attacker/F = new/obj/effect/fake_attacker(get_turf(target),target)
|
||||
|
||||
|
||||
for(var/obj/item/I in clone.held_items)
|
||||
if(!(locate(I) in non_fakeattack_weapons))
|
||||
clone_weapon = I.name
|
||||
@@ -625,7 +631,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
else if(src.dir == WEST)
|
||||
del src.currentimage
|
||||
src.currentimage = new /image(left,src)
|
||||
SEND_IMAGE(my_target, currentimage)
|
||||
to_chat(my_target, currentimage)
|
||||
|
||||
|
||||
/obj/effect/fake_attacker/proc/attack_loop()
|
||||
@@ -669,7 +675,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
var/obj/effect/overlay/O = new/obj/effect/overlay(target.loc)
|
||||
O.name = "blood"
|
||||
var/image/I = image('icons/effects/blood.dmi',O,"floor[rand(1,7)]",O.dir,1)
|
||||
SEND_IMAGE(target, I)
|
||||
to_chat(target, I)
|
||||
QDEL_IN(O, 300)
|
||||
|
||||
|
||||
@@ -786,6 +792,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
new /obj/effect/hallucination/items_other(src.loc,src)
|
||||
if("sounds")
|
||||
//Strange audio
|
||||
//to_chat(src, "Strange Audio")
|
||||
switch(rand(1,20))
|
||||
if(1) playsound_local(null,'sound/machines/airlock.ogg', 15, 1)
|
||||
if(2)
|
||||
|
||||
Reference in New Issue
Block a user