From 081bae6740ee31a3bf082f26eb34f3016442b570 Mon Sep 17 00:00:00 2001 From: phil235 Date: Tue, 14 Apr 2015 13:54:36 +0200 Subject: [PATCH] Fixes broken ui action button for toggling chef apron's sleeves and owl's wings. Fixes surviving suicide Fixes suicide damage overlays. Fixes ninja regen "clothes warm" spam message. (moving rad armor check outside of apply_effect) Fixes ninja smoke bomb count. Fixes dead shaved corgi Fixes lipozine still being in code. Fixes flattening boxes requiring them to have their window opened. Fixes armor softening message from disarm attack. Fixes player being forced to play spiders without choosing. --- code/datums/diseases/advance/advance.dm | 2 +- code/game/gamemodes/meteor/meteors.dm | 2 +- code/game/machinery/doors/airlock.dm | 2 +- code/game/mecha/equipment/tools/tools.dm | 4 +-- code/game/objects/effects/spiders.dm | 28 +++++++++++++++++-- .../objects/items/devices/traitordevices.dm | 2 +- .../objects/items/weapons/storage/boxes.dm | 5 ++-- .../objects/items/weapons/storage/fancy.dm | 2 +- code/game/objects/structures/false_walls.dm | 2 +- code/game/objects/structures/statues.dm | 2 +- .../turfs/simulated/floor/mineral_floor.dm | 2 +- code/game/turfs/simulated/walls_mineral.dm | 2 +- code/game/verbs/suicide.dm | 22 +++++++++------ code/modules/clothing/suits/jobs.dm | 1 - code/modules/clothing/suits/toggles.dm | 3 ++ code/modules/clothing/under/chameleon.dm | 1 + code/modules/events/radiation_storm.dm | 7 +++-- .../living/carbon/alien/humanoid/humanoid.dm | 20 ++++++++++++- .../mob/living/carbon/alien/larva/larva.dm | 1 + code/modules/mob/living/carbon/human/human.dm | 2 +- .../mob/living/carbon/human/human_damage.dm | 4 ++- .../mob/living/carbon/human/species.dm | 2 +- .../mob/living/carbon/human/species_types.dm | 5 ++-- code/modules/mob/living/damage_procs.dm | 2 +- code/modules/mob/living/living_defense.dm | 5 ++++ .../living/simple_animal/friendly/corgi.dm | 5 +++- .../ninja/suit/n_suit_verbs/ninja_smoke.dm | 2 +- code/modules/power/gravitygenerator.dm | 2 +- .../particle_accelerator/particle.dm | 10 +------ code/modules/power/singularity/singularity.dm | 2 +- code/modules/power/supermatter/supermatter.dm | 8 +++--- .../projectiles/guns/energy/nuclear.dm | 4 +-- .../Chemistry-Reagents/Blob-Reagents.dm | 4 +-- code/modules/research/experimentor.dm | 4 +-- 34 files changed, 111 insertions(+), 60 deletions(-) diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index 28b08852240..541fef7bef7 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -13,7 +13,7 @@ var/list/archive_diseases = list() var/list/advance_cures = list( "nutriment", "sugar", "orangejuice", "spaceacillin", "salglu_solution", "ethanol", - "leporazine", "synaptizine", "lipozine", + "leporazine", "synaptizine", "lipolicide", "silver", "gold" ) diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm index 43992706cd4..a8a74bbffb1 100644 --- a/code/game/gamemodes/meteor/meteors.dm +++ b/code/game/gamemodes/meteor/meteors.dm @@ -238,7 +238,7 @@ explosion(src.loc, 0, 0, 4, 3, 0) new /obj/effect/decal/cleanable/greenglow(get_turf(src)) for(var/mob/living/L in view(5, src)) - L.apply_effect(40, IRRADIATE) + L.irradiate(40) //Meaty Ore /obj/effect/meteor/meaty diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 2b1ef80ccff..003ac40d218 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -215,7 +215,7 @@ /obj/machinery/door/airlock/uranium/proc/radiate() for(var/mob/living/L in range (3,src)) - L.apply_effect(15,IRRADIATE,0) + L.irradiate(15) return /obj/machinery/door/airlock/plasma diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index 05cb1cb48a4..99324003e72 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -1138,9 +1138,9 @@ if(..()) for(var/mob/living/carbon/M in view(EG.chassis)) if(istype(M,/mob/living/carbon/human)) - M.apply_effect((EG.rad_per_cycle*3),IRRADIATE,0) + M.irradiate(EG.rad_per_cycle*3) else - M.radiation += EG.rad_per_cycle + M.irradiate(EG.rad_per_cycle) return 1 diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index e68ef779d94..e820cc57eaf 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -190,13 +190,35 @@ var/mob/living/simple_animal/hostile/poison/giant_spider/S = new grow_as(src.loc) if(player_spiders) var/list/candidates = get_candidates(BE_ALIEN, ALIEN_AFK_BRACKET) - var/client/C = null - if(candidates.len) - C = pick(candidates) + shuffle(candidates) + + var/time_passed = world.time + var/list/consenting_candidates = list() + + for(var/candidate in candidates) + + spawn(0) + switch(alert(candidate, "Would you like to play as [S.name]? Please choose quickly!","Confirmation","Yes","No")) + if("Yes") + if((world.time-time_passed)>=50 || !src) + return + consenting_candidates += candidate + + sleep(50) + + if(!src) + return + + if(consenting_candidates.len) + var/client/C = null + C = pick(consenting_candidates) S.key = C.key qdel(src) + + + /obj/effect/spider/cocoon name = "cocoon" desc = "Something wrapped in silky spider web" diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index 3594c570e2e..a9d6ec760ed 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -98,7 +98,7 @@ effective or pretty fucking useless. if(M) if(intensity >= 5) M.apply_effect(round(intensity/1.5), PARALYZE) - M.apply_effect(intensity*10, IRRADIATE) + M.irradiate(intensity*10) else user << "The radioactive microlaser is still recharging." diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 83a70c95bb8..0fc3ddbf3d3 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -39,12 +39,11 @@ return //Close any open UI windows first - var/found = close_all() - if(!found) //No user had any windows closed - return + close_all() user << "You fold [src] flat." var/obj/item/I = new foldable(get_turf(src)) + user.drop_item() user.put_in_hands(I) user.update_inv_l_hand() user.update_inv_r_hand() diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index 8fafce35f10..121a7b505ca 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -246,7 +246,7 @@ /obj/item/weapon/storage/fancy/cigarettes/cigpack_shadyjims/New() ..() for(var/i = 1 to storage_slots) - reagents.add_reagent("lipozine",4) + reagents.add_reagent("lipolicide",4) reagents.add_reagent("ammonia",2) reagents.add_reagent("plantbgone",1) reagents.add_reagent("toxin",1.5) diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm index 7af569a1d13..45ca0a7748b 100644 --- a/code/game/objects/structures/false_walls.dm +++ b/code/game/objects/structures/false_walls.dm @@ -221,7 +221,7 @@ if(world.time > last_event+15) active = 1 for(var/mob/living/L in range(3,src)) - L.apply_effect(12,IRRADIATE,0) + L.irradiate(12) for(var/turf/simulated/wall/mineral/uranium/T in range(3,src)) T.radiate() last_event = world.time diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index 198ecc64993..3efe4925963 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -180,7 +180,7 @@ if(world.time > last_event+15) active = 1 for(var/mob/living/L in range(3,src)) - L.apply_effect(12,IRRADIATE,0) + L.irradiate(12) last_event = world.time active = null return diff --git a/code/game/turfs/simulated/floor/mineral_floor.dm b/code/game/turfs/simulated/floor/mineral_floor.dm index f550095c738..be064079ef9 100644 --- a/code/game/turfs/simulated/floor/mineral_floor.dm +++ b/code/game/turfs/simulated/floor/mineral_floor.dm @@ -164,7 +164,7 @@ if(world.time > last_event+15) active = 1 for(var/mob/living/L in range(3,src)) - L.apply_effect(1,IRRADIATE,0) + L.irradiate(1) for(var/turf/simulated/floor/mineral/uranium/T in range(3,src)) T.radiate() last_event = world.time diff --git a/code/game/turfs/simulated/walls_mineral.dm b/code/game/turfs/simulated/walls_mineral.dm index 817fd5be882..ffa184a2a66 100644 --- a/code/game/turfs/simulated/walls_mineral.dm +++ b/code/game/turfs/simulated/walls_mineral.dm @@ -64,7 +64,7 @@ if(world.time > last_event+15) active = 1 for(var/mob/living/L in range(3,src)) - L.apply_effect(12,IRRADIATE,0) + L.irradiate(12) for(var/turf/simulated/wall/mineral/uranium/T in range(3,src)) T.radiate() last_event = world.time diff --git a/code/game/verbs/suicide.dm b/code/game/verbs/suicide.dm index 7fc2486a184..ed21f09164a 100644 --- a/code/game/verbs/suicide.dm +++ b/code/game/verbs/suicide.dm @@ -33,22 +33,23 @@ //Do 175 damage divided by the number of damage types applied. if(damagetype & BRUTELOSS) - adjustBruteLoss(175/damage_mod) + adjustBruteLoss(200/damage_mod) if(damagetype & FIRELOSS) - adjustFireLoss(175/damage_mod) + adjustFireLoss(200/damage_mod) if(damagetype & TOXLOSS) - adjustToxLoss(175/damage_mod) + adjustToxLoss(200/damage_mod) if(damagetype & OXYLOSS) - adjustOxyLoss(175/damage_mod) + adjustOxyLoss(200/damage_mod) //If something went wrong, just do normal oxyloss if(!(damagetype | BRUTELOSS) && !(damagetype | FIRELOSS) && !(damagetype | TOXLOSS) && !(damagetype | OXYLOSS)) - adjustOxyLoss(max(175 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) + adjustOxyLoss(max(200 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) updatehealth() + death(0) return var/suicide_message = pick("[src] is attempting to bite \his tongue off! It looks like \he's trying to commit suicide.", \ @@ -58,8 +59,9 @@ visible_message("[suicide_message]", "[suicide_message]") - adjustOxyLoss(max(175 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) + adjustOxyLoss(max(200 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) updatehealth() + death(0) /mob/living/carbon/brain/verb/suicide() set hidden = 1 @@ -88,8 +90,9 @@ //instead of killing them instantly, just put them at -175 health and let 'em gasp for a while visible_message("[src] is attempting to bite \his tongue. It looks like \he's trying to commit suicide.", \ "[src] is attempting to bite \his tongue. It looks like \he's trying to commit suicide.") - adjustOxyLoss(max(175- getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) + adjustOxyLoss(max(200- getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) updatehealth() + death(0) /mob/living/silicon/ai/verb/suicide() set hidden = 1 @@ -105,6 +108,7 @@ //put em at -175 adjustOxyLoss(max(maxHealth * 2 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) updatehealth() + death(0) /mob/living/silicon/robot/verb/suicide() set hidden = 1 @@ -120,6 +124,7 @@ //put em at -175 adjustOxyLoss(max(maxHealth * 2 - getToxLoss() - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) updatehealth() + death(0) /mob/living/silicon/pai/verb/suicide() set category = "pAI Commands" @@ -147,8 +152,9 @@ "[src] is thrashing wildly! It looks like \he's trying to commit suicide.", \ "You hear thrashing") //put em at -175 - adjustOxyLoss(max(175 - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) + adjustOxyLoss(max(200 - getFireLoss() - getBruteLoss() - getOxyLoss(), 0)) updatehealth() + death(0) /mob/living/simple_animal/verb/suicide() set hidden = 1 diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index b8683c10cc7..b9ecf892582 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -61,7 +61,6 @@ permeability_coefficient = 0.50 body_parts_covered = CHEST|GROIN|ARMS allowed = list(/obj/item/weapon/kitchenknife) - action_button_name = "Toggle Jacket Sleeves" togglename = "sleeves" //Cook diff --git a/code/modules/clothing/suits/toggles.dm b/code/modules/clothing/suits/toggles.dm index 380e0262597..b569f9b5fe6 100644 --- a/code/modules/clothing/suits/toggles.dm +++ b/code/modules/clothing/suits/toggles.dm @@ -57,6 +57,9 @@ ..() suit_toggle() +/obj/item/clothing/suit/toggle/ui_action_click() + suit_toggle() + /obj/item/clothing/suit/toggle/proc/suit_toggle() set src in usr diff --git a/code/modules/clothing/under/chameleon.dm b/code/modules/clothing/under/chameleon.dm index a92c45a0ab6..20acefb09d6 100644 --- a/code/modules/clothing/under/chameleon.dm +++ b/code/modules/clothing/under/chameleon.dm @@ -80,6 +80,7 @@ icon_state = A.icon_state item_state = A.item_state item_color = A.item_color + suit_color = A.suit_color usr.update_inv_w_uniform() //so our overlays update. diff --git a/code/modules/events/radiation_storm.dm b/code/modules/events/radiation_storm.dm index 55b30f45011..f86ecdb5c42 100644 --- a/code/modules/events/radiation_storm.dm +++ b/code/modules/events/radiation_storm.dm @@ -36,9 +36,10 @@ if(istype(C, /mob/living/carbon/human)) var/mob/living/carbon/human/H = C - H.apply_effect((rand(15, 75)), IRRADIATE, 0) if(prob(5)) - H.apply_effect((rand(90, 150)), IRRADIATE, 0) + H.irradiate(rand(100, 160)) + else + H.irradiate(rand(15, 75)) if(prob(25)) if(prob(75)) randmutb(H) @@ -49,7 +50,7 @@ else if(istype(C, /mob/living/carbon/monkey)) var/mob/living/carbon/monkey/M = C - M.apply_effect((rand(15, 75)), IRRADIATE, 0) + M.irradiate(rand(15, 75)) /datum/round_event/radiation_storm/end() diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index 1e993e79363..40c3574d756 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -8,6 +8,8 @@ var/leap_on_click = 0 var/pounce_cooldown = 0 var/pounce_cooldown_time = 30 + var/custom_pixel_x_offset = 0 //for admin fuckery. + var/custom_pixel_y_offset = 0 //This is fine right now, if we're adding organ specific damage this needs to be updated /mob/living/carbon/alien/humanoid/New() @@ -127,4 +129,20 @@ /mob/living/carbon/alien/humanoid/cuff_resist(obj/item/I) playsound(src, 'sound/voice/hiss5.ogg', 40, 1, 1) //Alien roars when starting to break free - ..(I, cuff_break = 1) + ..(I, cuff_break = 1) + +/mob/living/carbon/alien/humanoid/get_standard_pixel_y_offset(lying = 0) + if(leaping) + return -32 + else if(custom_pixel_y_offset) + return custom_pixel_y_offset + else + return initial(pixel_y) + +/mob/living/carbon/alien/humanoid/get_standard_pixel_x_offset(lying = 0) + if(leaping) + return -32 + else if(custom_pixel_x_offset) + return custom_pixel_x_offset + else + return initial(pixel_x) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index edae69928ef..096f1e353a8 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -4,6 +4,7 @@ icon_state = "larva0" pass_flags = PASSTABLE | PASSMOB mob_size = MOB_SIZE_SMALL + density = 0 maxHealth = 25 health = 25 diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 7751934828d..676caeff4e7 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -665,7 +665,7 @@ if(prob(current_size * 5) && hand.w_class >= ((11-current_size)/2) && unEquip(hand)) step_towards(hand, src) src << "\The [S] pulls \the [hand] from your grip!" - apply_effect(current_size * 3, IRRADIATE) + irradiate(current_size * 3) if(mob_negates_gravity()) return ..() diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 3a34e1f3acb..844f2399a19 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -124,12 +124,14 @@ mob/living/carbon/human/proc/hat_fall_prob() var/update = 0 while(parts.len && (brute>0 || burn>0) ) var/obj/item/organ/limb/picked = pick(parts) + var/brute_per_part = brute/parts.len + var/burn_per_part = burn/parts.len var/brute_was = picked.brute_dam var/burn_was = picked.burn_dam - update |= picked.take_damage(brute,burn) + update |= picked.take_damage(brute_per_part,burn_per_part) brute -= (picked.brute_dam - brute_was) burn -= (picked.burn_dam - burn_was) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index e571ae3258d..75b19828cd0 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -788,10 +788,10 @@ var/obj/item/organ/limb/affecting = H.get_organ(ran_zone(M.zone_sel.selecting)) var/randn = rand(1, 100) if(randn <= 25) - H.apply_effect(2, WEAKEN, H.run_armor_check(affecting, "melee")) playsound(H, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) H.visible_message("[M] has pushed [H]!", "[M] has pushed [H]!") + H.apply_effect(2, WEAKEN, H.run_armor_check(affecting, "melee", "Your armor prevents your fall!", "Your armor softens your fall!")) H.forcesay(hit_appends) return diff --git a/code/modules/mob/living/carbon/human/species_types.dm b/code/modules/mob/living/carbon/human/species_types.dm index b0ecbb39986..c1632356325 100644 --- a/code/modules/mob/living/carbon/human/species_types.dm +++ b/code/modules/mob/living/carbon/human/species_types.dm @@ -70,10 +70,9 @@ switch(proj_type) if(/obj/item/projectile/energy/floramut) if(prob(15)) - H.apply_effect((rand(30,80)),IRRADIATE) + H.irradiate(rand(30,80)) H.Weaken(5) - for (var/mob/V in viewers(H)) - V.show_message("[H] writhes in pain as \his vacuoles boil.", 3, "You hear the crunching of leaves.", 2) + H.visible_message("[H] writhes in pain as \his vacuoles boil.", "[H] writhes in pain as \his vacuoles boil.", "You hear the crunching of leaves.") if(prob(80)) randmutb(H) domutcheck(H,null) diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index d420721feef..89a35a4e605 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -51,7 +51,7 @@ if(PARALYZE) Paralyse(effect * blocked) if(IRRADIATE) - radiation += max(effect * ((100-run_armor_check(null, "rad", "Your clothes feel warm.", "Your clothes feel warm."))/100),0)//Rads auto check armor + radiation += max(effect * blocked, 0) if(SLUR) slurring = max(slurring,(effect * blocked)) if(STUTTER) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 8c958885255..b1a5920c9f5 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -278,3 +278,8 @@ proc/vol_by_throwforce_and_or_w_class(var/obj/item/I) /mob/living/incapacitated() if(stat || paralysis || stunned || weakened || restrained()) return 1 + +/mob/living/proc/irradiate(amount) + if(amount) + var/blocked = run_armor_check(null, IRRADIATE, "Your clothes feel warm", "Your clothes feel warm") + apply_effect(amount, IRRADIATE, blocked) diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/friendly/corgi.dm index 8537ded348a..f2d1af3912a 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/friendly/corgi.dm @@ -135,9 +135,12 @@ user.visible_message("[user] shaves [src]'s hair using \the [O]. ") playsound(loc, 'sound/items/Welder2.ogg', 20, 1) shaved = 1 - icon_state = "[initial(icon_living)]_shaved" icon_living = "[initial(icon_living)]_shaved" icon_dead = "[initial(icon_living)]_shaved_dead" + if(stat == CONSCIOUS) + icon_state = icon_living + else + icon_state = icon_dead return ..() diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm index 8d2ff7c3cfe..aef3d012dd8 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm @@ -9,11 +9,11 @@ if(!ninjacost(0,N_SMOKE_BOMB)) var/mob/living/carbon/human/H = affecting - H << "There are [s_bombs] smoke bombs remaining." var/datum/effect/effect/system/bad_smoke_spread/smoke = new /datum/effect/effect/system/bad_smoke_spread() smoke.set_up(10, 0, H.loc) smoke.start() playsound(H.loc, 'sound/effects/bamf.ogg', 50, 2) s_bombs-- + H << "There are [s_bombs] smoke bombs remaining." s_coold = 1 return \ No newline at end of file diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index 61d2bb8a9f6..43b649fb5cd 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -347,7 +347,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 /obj/machinery/gravity_generator/main/proc/pulse_radiation() for(var/mob/living/L in view(7, src)) - L.apply_effect(20, IRRADIATE) + L.irradiate(20) // Shake everyone on the z level to let them know that gravity was enagaged/disenagaged. /obj/machinery/gravity_generator/main/proc/shake_everyone() diff --git a/code/modules/power/singularity/particle_accelerator/particle.dm b/code/modules/power/singularity/particle_accelerator/particle.dm index ed5d1f760d2..e7e3632b93e 100644 --- a/code/modules/power/singularity/particle_accelerator/particle.dm +++ b/code/modules/power/singularity/particle_accelerator/particle.dm @@ -56,16 +56,8 @@ /obj/effect/accelerated_particle/proc/toxmob(var/mob/living/M) -/* var/radiation = (energy*2) //We don't need to do two multiplications and a single goddamn - if(istype(M,/mob/living/carbon/human)) - if(M:wear_suit) //TODO: check for radiation protection - radiation = round(radiation/2,1) - if(istype(M,/mob/living/carbon/monkey)) - if(M:wear_suit) //TODO: check for radiation protection - radiation = round(radiation/2,1)*/ - M.apply_effect((energy*6),IRRADIATE,0) + M.irradiate(energy*6) M.updatehealth() - //M << "\red You feel odd." return diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index 66f6d9dac2d..7eeeebfe869 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -341,7 +341,7 @@ radiation = round(((src.energy-150)/50)*5,1) radiationmin = round((radiation/5),1)// for(var/mob/living/M in view(toxrange, src.loc)) - M.apply_effect(rand(radiationmin,radiation), IRRADIATE) + M.irradiate(rand(radiationmin,radiation)) toxdamage = (toxdamage - (toxdamage*M.getarmor(null, "rad"))) M.apply_effect(toxdamage, TOX) return diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 6152f0e07ab..6e926c209f9 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -119,7 +119,7 @@ var/mob/living/carbon/human/H = mob H.hallucination += max(50, min(300, DETONATION_HALLUCINATION * sqrt(1 / (get_dist(mob, src) + 1)) ) ) var/rads = DETONATION_RADS * sqrt( 1 / (get_dist(mob, src) + 1) ) - mob.apply_effect(rads, IRRADIATE) + mob.irradiate(rads) explode() @@ -181,7 +181,7 @@ for(var/mob/living/l in range(src, round((power / 100) ** 0.25))) var/rads = (power / 10) * sqrt( 1 / max(get_dist(l, src),1) ) - l.apply_effect(rads, IRRADIATE) + l.irradiate(rads) power -= (power/500)**3 @@ -248,7 +248,7 @@ playsound(get_turf(src), 'sound/effects/supermatter.ogg', 50, 1) - user.apply_effect(150, IRRADIATE) + user.irradiate(150) /obj/machinery/power/supermatter_shard/Bumped(atom/AM as mob|obj) @@ -283,7 +283,7 @@ //Some poor sod got eaten, go ahead and irradiate people nearby. for(var/mob/living/L in range(10)) var/rads = 500 * sqrt( 1 / (get_dist(L, src) + 1) ) - L.apply_effect(rads, IRRADIATE) + L.irradiate(rads) investigate_log("has irradiated [L] after consuming [AM].", "supermatter") if(L in view()) L.show_message("As \the [src] slowly stops resonating, you find your skin covered in new radiation burns.", 1,\ diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm index d5011d4e7d5..dff570dca52 100644 --- a/code/modules/projectiles/guns/energy/nuclear.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -62,14 +62,14 @@ M << "Your gun feels pleasantly warm for a moment." else M << "You feel a warm sensation." - M.apply_effect(rand(3,120), IRRADIATE) + M.irradiate(rand(3,120)) lightfail = 1 else for (var/mob/living/M in range(rand(1,4),src)) //Big failure, TIME FOR RADIATION BITCHES if (src in M.contents) M << "Your gun's reactor overloads!" M << "You feel a wave of heat wash over you." - M.apply_effect(300, IRRADIATE) + M.irradiate(300) crit_fail = 1 //break the gun so it stops recharging SSobj.processing.Remove(src) update_icon() diff --git a/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm index cbbbbed0a91..5625f754f29 100644 --- a/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm @@ -81,7 +81,7 @@ datum/reagent/blob/acid datum/reagent/blob/acid/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) - if(prob(50)) + if(prob(50)) M.acid_act(5,1,5) if(show_message) M << "The blob's tendrils melt through your equipment!" @@ -97,7 +97,7 @@ datum/reagent/blob/radioactive_liquid/reaction_mob(var/mob/living/M as mob, var/ if(method == TOUCH) if(istype(M, /mob/living/carbon/human)) M.apply_damage(10, BRUTE) - M.apply_effect(40,IRRADIATE,0) // irradiate the shit out of these fuckers + M.irradiate(40) if(prob(33)) randmuti(M) if(prob(98)) diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index bcf7bd9a33f..c9a9f339aa1 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -288,7 +288,7 @@ if(prob(EFFECT_PROB_VERYLOW-badThingCoeff)) visible_message("[src] malfunctions, melting [exp_on] and leaking radiation!.") for(var/mob/living/m in oview(1, src)) - m.apply_effect(25,IRRADIATE) + m.irradiate(25) investigate_log("Experimentor has irradiated [m]", "experimentor") //One entry per person so we know what was irradiated. ejectItem(TRUE) if(prob(EFFECT_PROB_LOW-badThingCoeff)) @@ -737,4 +737,4 @@ if(priority) //For truly dangerous relics that may need an admin's attention. BWOINK! message_admins("[RelicType] relic activated by [key_name(user, user.client)](?) in ([T.x],[T.y],[T.z] - JMP)",0,1) log_game(log_msg) - investigate_log(log_msg, "experimentor") + investigate_log(log_msg, "experimentor")