mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
* initial commit * switcheroo * include the rest * fire triangle * a * update 2-20 * turfs and reagents and more * zburn first draft * remove fire_old * initial compat * stable compile * remove pressure factor * total autoignition death * thermal material datums * a * more autoignition * temporary fix for testing * everything is FUCK * burning now * stacks burning * recursive functionality * restore burnitselfup * specific burn case * everything is shit and fuck * refactor * nit * color & light performance increase * fix * smoke cap + changes * updates * final (for now) * remove double count, unit issues, and more tweaks * logspam and grammar * prevents worn or held items from burning * minimum burn time * fix runtime * The Cardboard Update * vis_contents * cigs burn lol * lmao * refactor fire protection * final fix * some more held/worn item fixes * maybe fix foods burning forever * compile * restore plasma burning lmao * review changes * copypasta error * copypasta errors 2: this time it's personal * declare * extensive fixes * fix liquid burning behavior * wtf * undo smoke cap * mutable appearances + removal of debug messages * DMDOC compat * review changes * return * misleading comment
69 lines
1.9 KiB
Plaintext
69 lines
1.9 KiB
Plaintext
/obj/structure
|
|
icon = 'icons/obj/structures.dmi'
|
|
penetration_dampening = 5
|
|
var/hasbolts = FALSE
|
|
|
|
|
|
/obj/structure/examine(mob/user)
|
|
..()
|
|
if(hasbolts)
|
|
to_chat(user,"<span class='info'>This one is bolted into place.</span>")
|
|
|
|
/obj/structure/blob_act(var/destroy = 0)
|
|
..()
|
|
if(destroy || (prob(50)))
|
|
qdel(src)
|
|
|
|
/obj/structure/ex_act(severity)
|
|
switch(severity)
|
|
if(1.0)
|
|
qdel(src)
|
|
return
|
|
if(2.0)
|
|
if(prob(50))
|
|
qdel(src)
|
|
return
|
|
if(3.0)
|
|
return
|
|
|
|
/obj/structure/projectile_check()
|
|
return PROJREACT_OBJS
|
|
|
|
/obj/structure/kick_act(mob/living/carbon/human/H)
|
|
if(H.locked_to && isobj(H.locked_to) && H.locked_to != src)
|
|
var/obj/O = H.locked_to
|
|
if(O.onBuckledUserKick(H, src))
|
|
return //don't return 1! we will do the normal "touch" action if so!
|
|
|
|
playsound(src, 'sound/effects/grillehit.ogg', 50, 1) //Zth: I couldn't find a proper sound, please replace it
|
|
|
|
H.visible_message("<span class='danger'>[H] kicks \the [src].</span>", "<span class='danger'>You kick \the [src].</span>")
|
|
if(prob(70))
|
|
H.foot_impact(src, rand(2,4))
|
|
|
|
if(!anchored && !locked_to)
|
|
var/strength = H.get_strength()
|
|
var/kick_dir = get_dir(H, src)
|
|
|
|
if(!Move(get_step(loc, kick_dir))) //The structure that we kicked is up against a wall - this hurts our foot
|
|
H.foot_impact(src, rand(2,4))
|
|
|
|
if(strength > 1) //Strong - kick further
|
|
spawn()
|
|
sleep(3)
|
|
for(var/i = 2 to strength)
|
|
if(!Move(get_step(loc, kick_dir)))
|
|
break
|
|
sleep(3)
|
|
if(material_type)
|
|
material_type.on_use(H,src,null)
|
|
|
|
if(arcanetampered && density && anchored)
|
|
to_chat(H,"<span class='sinister'>[src] kicks YOU!</span>")
|
|
playsound(src, 'sound/effects/grillehit.ogg', 50, 1) //Zth: I couldn't find a proper sound, please replace it
|
|
H.Knockdown(10)
|
|
H.Stun(10)
|
|
|
|
/obj/structure/animationBolt(var/mob/firer)
|
|
new /mob/living/simple_animal/hostile/mimic/copy(loc, src, firer, duration=SPELL_ANIMATION_TTL)
|