From 9c5eca244952324a56569e9121f4da1122dbb8f1 Mon Sep 17 00:00:00 2001 From: MistakeNot4892 Date: Fri, 13 Jan 2023 23:29:58 +1100 Subject: [PATCH] Refactoring mines and simplying disarm. --- code/__defines/dcs/signals.dm | 2 - code/datums/wires/mines.dm | 84 ---- code/game/objects/effects/mines.dm | 403 ------------------ code/game/objects/items.dm | 5 +- code/game/objects/items/mines/_mine.dm | 186 ++++++++ .../game/objects/items/mines/_mine_payload.dm | 22 + .../game/objects/items/mines/mine_assembly.dm | 62 +++ .../objects/items/mines/mine_dnascamble.dm | 13 + code/game/objects/items/mines/mine_emp.dm | 9 + code/game/objects/items/mines/mine_frag.dm | 17 + .../objects/items/mines/mine_incendiary.dm | 12 + code/game/objects/items/mines/mine_kick.dm | 13 + code/game/objects/items/mines/mine_napalm.dm | 12 + .../game/objects/items/mines/mine_sleeping.dm | 11 + code/game/objects/items/mines/mine_stun.dm | 11 + .../game/objects/items/mines/mine_training.dm | 12 + code/game/objects/random/mapping.dm | 23 +- icons/obj/mine.dmi | Bin 0 -> 403 bytes icons/obj/weapons.dmi | Bin 49063 -> 48706 bytes .../surface_submaps/wilderness/MCamp1.dmm | 5 +- polaris.dme | 16 +- 21 files changed, 412 insertions(+), 506 deletions(-) delete mode 100644 code/datums/wires/mines.dm delete mode 100644 code/game/objects/effects/mines.dm create mode 100644 code/game/objects/items/mines/_mine.dm create mode 100644 code/game/objects/items/mines/_mine_payload.dm create mode 100644 code/game/objects/items/mines/mine_assembly.dm create mode 100644 code/game/objects/items/mines/mine_dnascamble.dm create mode 100644 code/game/objects/items/mines/mine_emp.dm create mode 100644 code/game/objects/items/mines/mine_frag.dm create mode 100644 code/game/objects/items/mines/mine_incendiary.dm create mode 100644 code/game/objects/items/mines/mine_kick.dm create mode 100644 code/game/objects/items/mines/mine_napalm.dm create mode 100644 code/game/objects/items/mines/mine_sleeping.dm create mode 100644 code/game/objects/items/mines/mine_stun.dm create mode 100644 code/game/objects/items/mines/mine_training.dm create mode 100644 icons/obj/mine.dmi diff --git a/code/__defines/dcs/signals.dm b/code/__defines/dcs/signals.dm index 88ff63af23..8bb95f0d89 100644 --- a/code/__defines/dcs/signals.dm +++ b/code/__defines/dcs/signals.dm @@ -468,8 +468,6 @@ #define COMSIG_TOOL_START_USE "tool_start_use" ///from [/obj/item/proc/disableEmbedding]: #define COMSIG_ITEM_DISABLE_EMBED "item_disable_embed" -///from [/obj/effect/mine/proc/triggermine]: -#define COMSIG_MINE_TRIGGERED "minegoboom" // /obj/item signals for economy ///called when an item is sold by the exports subsystem diff --git a/code/datums/wires/mines.dm b/code/datums/wires/mines.dm deleted file mode 100644 index 5e757ad16c..0000000000 --- a/code/datums/wires/mines.dm +++ /dev/null @@ -1,84 +0,0 @@ -/datum/wires/mines - wire_count = 7 - randomize = TRUE - holder_type = /obj/effect/mine - proper_name = "Explosive Wires" - -/datum/wires/mines/New(atom/_holder) - wires = list(WIRE_EXPLODE, WIRE_EXPLODE_DELAY, WIRE_DISARM, WIRE_BADDISARM) - return ..() -#define WIRE_TRAP 64 - -/datum/wires/mines/get_status() - . = ..() - . += "\[Warning: detonation may occur even with proper equipment.]" - -/datum/wires/mines/proc/explode() - return - -/datum/wires/mines/on_cut(wire, mend) - var/obj/effect/mine/C = holder - - switch(wire) - if(WIRE_EXPLODE) - C.visible_message("[bicon(C)] *BEEE-*", "[bicon(C)] *BEEE-*") - C.explode() - - if(WIRE_EXPLODE_DELAY) - C.visible_message("[bicon(C)] *BEEE-*", "[bicon(C)] *BEEE-*") - C.explode() - - if(WIRE_DISARM) - C.visible_message("[bicon(C)] *click!*", "[bicon(C)] *click!*") - var/obj/effect/mine/MI = new C.mineitemtype(get_turf(C)) - - if(C.trap) - MI.trap = C.trap - C.trap = null - MI.trap.forceMove(MI) - - spawn(0) - qdel(C) - - if(WIRE_BADDISARM) - C.visible_message("[bicon(C)] *BEEPBEEPBEEP*", "[bicon(C)] *BEEPBEEPBEEP*") - spawn(20) - C.explode() - - if(WIRE_TRAP) - C.visible_message("[bicon(C)] *click!*", "[bicon(C)] *click!*") - - if(mend) - C.visible_message("[bicon(C)] - The mine recalibrates[C.camo_net ? ", revealing \the [C.trap] inside." : "."]") - - C.alpha = 255 - - ..() - -/datum/wires/mines/on_pulse(wire) - var/obj/effect/mine/C = holder - if(is_cut(wire)) - return - switch(wire) - if(WIRE_EXPLODE) - C.visible_message("[bicon(C)] *beep*", "[bicon(C)] *beep*") - - if(WIRE_EXPLODE_DELAY) - C.visible_message("[bicon(C)] *BEEPBEEPBEEP*", "[bicon(C)] *BEEPBEEPBEEP*") - spawn(20) - C.explode() - - if(WIRE_DISARM) - C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") - - if(WIRE_BADDISARM) - C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") - - if(WIRE_TRAP) - C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") - - ..() - -/datum/wires/mines/interactable(mob/user) - var/obj/effect/mine/M = holder - return M.panel_open diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm deleted file mode 100644 index 52ede9d2e4..0000000000 --- a/code/game/objects/effects/mines.dm +++ /dev/null @@ -1,403 +0,0 @@ -/obj/effect/mine - name = "land mine" //The name and description are deliberately NOT modified, so you can't game the mines you find. - desc = "A small explosive land mine." - density = 0 - anchored = 1 - icon = 'icons/obj/weapons.dmi' - icon_state = "uglymine" - var/triggered = 0 - var/smoke_strength = 3 - var/obj/item/mine/mineitemtype = /obj/item/mine - var/panel_open = 0 - var/datum/wires/mines/wires = null - var/camo_net = FALSE // Will the mine 'cloak' on deployment? - - // The trap item will be triggered in some manner when detonating. Default only checks for grenades. - var/obj/item/trap = null - -/obj/effect/mine/Initialize() - icon_state = "uglyminearmed" - wires = new(src) - . = ..() - if(ispath(trap)) - trap = new trap(src) - register_dangerous_to_step() - if(camo_net) - alpha = 50 - -/obj/effect/mine/Destroy() - unregister_dangerous_to_step() - if(trap) - QDEL_NULL(trap) - QDEL_NULL(wires) - return ..() - -/obj/effect/mine/Moved(atom/oldloc) - . = ..() - if(.) - var/turf/old_turf = get_turf(oldloc) - var/turf/new_turf = get_turf(src) - if(old_turf != new_turf) - old_turf.unregister_dangerous_object(src) - new_turf.register_dangerous_object(src) - -/obj/effect/mine/proc/explode(var/mob/living/M) - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - triggered = 1 - s.set_up(3, 1, src) - s.start() - - if(trap) - trigger_trap(M) - visible_message("\The [src.name] flashes as it is triggered!") - - else - explosion(loc, 0, 2, 3, 4) //land mines are dangerous, folks. - visible_message("\The [src.name] detonates!") - - qdel(s) - qdel(src) - -/obj/effect/mine/proc/trigger_trap(var/mob/living/victim) - if(istype(trap, /obj/item/grenade)) - var/obj/item/grenade/G = trap - trap = null - G.forceMove(get_turf(src)) - if(victim.ckey) - msg_admin_attack("[key_name_admin(victim)] stepped on \a [src.name], triggering [trap]") - G.activate() - - if(istype(trap, /obj/item/transfer_valve)) - var/obj/item/transfer_valve/TV = trap - trap = null - TV.forceMove(get_turf(src)) - TV.toggle_valve() - -/obj/effect/mine/bullet_act() - if(prob(50)) - explode() - -/obj/effect/mine/ex_act(severity) - if(severity <= 2 || prob(50)) - explode() - ..() - -/obj/effect/mine/Crossed(atom/movable/AM as mob|obj) - if(AM.is_incorporeal()) - return - Bumped(AM) - -/obj/effect/mine/Bumped(mob/M as mob|obj) - - if(triggered) - return - - if(istype(M, /obj/mecha)) - explode(M) - - if(istype(M, /mob/living/)) - if(!M.hovering) - explode(M) - -/obj/effect/mine/attackby(obj/item/W as obj, mob/living/user as mob) - if(W.is_screwdriver()) - panel_open = !panel_open - user.visible_message("[user] very carefully screws the mine's panel [panel_open ? "open" : "closed"].", - "You very carefully screw the mine's panel [panel_open ? "open" : "closed"].") - playsound(src, W.usesound, 50, 1) - - // Panel open, stay uncloaked, or uncloak if already cloaked. If you don't cloak on place, ignore it and just be normal alpha. - alpha = camo_net ? (panel_open ? 255 : 50) : 255 - - else if((W.is_wirecutter() || istype(W, /obj/item/multitool)) && panel_open) - interact(user) - else - ..() - -/obj/effect/mine/interact(mob/living/user as mob) - if(!panel_open || istype(user, /mob/living/silicon/ai)) - return - user.set_machine(src) - wires.Interact(user) - -/obj/effect/mine/camo - camo_net = TRUE - -/obj/effect/mine/dnascramble - mineitemtype = /obj/item/mine/dnascramble - -/obj/effect/mine/dnascramble/explode(var/mob/living/M) - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - triggered = 1 - s.set_up(3, 1, src) - s.start() - if(istype(M)) - M.radiation += 50 - randmutb(M) - domutcheck(M,null) - visible_message("\The [src.name] flashes violently before disintegrating!") - spawn(0) - qdel(s) - qdel(src) - -/obj/effect/mine/stun - mineitemtype = /obj/item/mine/stun - -/obj/effect/mine/stun/explode(var/mob/living/M) - triggered = 1 - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - s.set_up(3, 1, src) - s.start() - if(istype(M)) - M.Stun(30) - visible_message("\The [src.name] flashes violently before disintegrating!") - spawn(0) - qdel(s) - qdel(src) - -/obj/effect/mine/n2o - mineitemtype = /obj/item/mine/n2o - -/obj/effect/mine/n2o/explode(var/mob/living/M) - triggered = 1 - for (var/turf/simulated/floor/target in range(1,src)) - if(!target.blocks_air) - target.assume_gas("nitrous_oxide", 30) - visible_message("\The [src.name] detonates!") - spawn(0) - qdel(src) - -/obj/effect/mine/phoron - mineitemtype = /obj/item/mine/phoron - -/obj/effect/mine/phoron/explode(var/mob/living/M) - triggered = 1 - for (var/turf/simulated/floor/target in range(1,src)) - if(!target.blocks_air) - target.assume_gas("phoron", 30) - target.hotspot_expose(1000, CELL_VOLUME) - visible_message("\The [src.name] detonates!") - spawn(0) - qdel(src) - -/obj/effect/mine/kick - mineitemtype = /obj/item/mine/kick - -/obj/effect/mine/kick/explode(var/mob/living/M) - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - triggered = 1 - s.set_up(3, 1, src) - s.start() - if(istype(M, /obj/mecha)) - var/obj/mecha/E = M - M = E.occupant - if(istype(M)) - qdel(M.client) - spawn(0) - qdel(s) - qdel(src) - -/obj/effect/mine/frag - mineitemtype = /obj/item/mine/frag - var/fragment_types = list(/obj/item/projectile/bullet/pellet/fragment) - var/num_fragments = 20 //total number of fragments produced by the grenade - //The radius of the circle used to launch projectiles. Lower values mean less projectiles are used but if set too low gaps may appear in the spread pattern - var/spread_range = 7 - -/obj/effect/mine/frag/explode(var/mob/living/M) - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - triggered = 1 - s.set_up(3, 1, src) - s.start() - var/turf/O = get_turf(src) - if(!O) - return - src.fragmentate(O, 20, 7, list(/obj/item/projectile/bullet/pellet/fragment)) //only 20 weak fragments because you're stepping directly on it - visible_message("\The [src.name] detonates!") - spawn(0) - qdel(s) - qdel(src) - -/obj/effect/mine/training //Name and Desc commented out so it's possible to trick people with the training mines -// name = "training mine" -// desc = "A mine with its payload removed, for EOD training and demonstrations." - mineitemtype = /obj/item/mine/training - -/obj/effect/mine/training/explode(var/mob/living/M) - triggered = 1 - visible_message("\The [src.name]'s light flashes rapidly as it 'explodes'.") - new src.mineitemtype(get_turf(src)) - spawn(0) - qdel(src) - -/obj/effect/mine/emp - mineitemtype = /obj/item/mine/emp - -/obj/effect/mine/emp/explode(var/mob/living/M) - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - s.set_up(3, 1, src) - s.start() - visible_message("\The [src.name] flashes violently before disintegrating!") - empulse(loc, 2, 4, 7, 10, 1) // As strong as an EMP grenade - spawn(0) - qdel(src) - -/obj/effect/mine/emp/camo - camo_net = TRUE - -/obj/effect/mine/incendiary - mineitemtype = /obj/item/mine/incendiary - -/obj/effect/mine/incendiary/explode(var/mob/living/M) - triggered = 1 - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - s.set_up(3, 1, src) - s.start() - if(istype(M)) - M.adjust_fire_stacks(5) - M.fire_act() - visible_message("\The [src.name] bursts into flames!") - spawn(0) - qdel(src) - -/obj/effect/mine/gadget - mineitemtype = /obj/item/mine/gadget - -/obj/effect/mine/gadget/explode(var/mob/living/M) - var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread() - triggered = 1 - s.set_up(3, 1, src) - s.start() - - if(trap) - trigger_trap(M) - visible_message("\The [src.name] flashes as it is triggered!") - - else - explosion(loc, 0, 0, 2, 2) - visible_message("\The [src.name] detonates!") - - qdel(s) - qdel(src) - -///////////////////////////////////////////// -// The held item version of the above mines -///////////////////////////////////////////// -/obj/item/mine - name = "mine" - desc = "A small explosive mine with 'HE' and a grenade symbol on the side." - icon = 'icons/obj/weapons.dmi' - icon_state = "uglymine" - var/countdown = 10 - var/minetype = /obj/effect/mine //This MUST be an /obj/effect/mine type, or it'll runtime. - - var/obj/item/trap = null - - var/list/allowed_gadgets = null - -/obj/item/mine/attack_self(mob/user as mob) // You do not want to move or throw a land mine while priming it... Explosives + Sudden Movement = Bad Times - add_fingerprint(user) - msg_admin_attack("[key_name_admin(user)] primed \a [src]") - user.visible_message("[user] starts priming \the [src.name].", "You start priming \the [src.name]. Hold still!") - if(do_after(user, 10 SECONDS)) - playsound(src, 'sound/weapons/armbomb.ogg', 75, 1, -3) - prime(user) - else - visible_message("[user] triggers \the [src.name]!", "You accidentally trigger \the [src.name]!") - prime(user, TRUE) - return - -/obj/item/mine/attackby(obj/item/W as obj, mob/living/user as mob) - if(W.is_screwdriver() && trap) - to_chat(user, "You begin removing \the [trap].") - if(do_after(user, 10 SECONDS)) - to_chat(user, "You finish disconnecting the mine's trigger.") - trap.forceMove(get_turf(src)) - trap = null - return - - if(LAZYLEN(allowed_gadgets) && !trap) - var/allowed = FALSE - - for(var/path in allowed_gadgets) - if(istype(W, path)) - allowed = TRUE - break - - if(allowed) - user.drop_from_inventory(W) - W.forceMove(src) - trap = W - - ..() - -/obj/item/mine/proc/prime(mob/user as mob, var/explode_now = FALSE) - visible_message("\The [src.name] beeps as the priming sequence completes.") - var/obj/effect/mine/R = new minetype(get_turf(src)) - src.transfer_fingerprints_to(R) - R.add_fingerprint(user) - if(trap) - R.trap = trap - trap = null - R.trap.forceMove(R) - if(explode_now) - R.explode(user) - spawn(0) - qdel(src) - -/obj/item/mine/dnascramble - name = "radiation mine" - desc = "A small explosive mine with a radiation symbol on the side." - minetype = /obj/effect/mine/dnascramble - -/obj/item/mine/phoron - name = "incendiary mine" - desc = "A small explosive mine with a fire symbol on the side." - minetype = /obj/effect/mine/phoron - -/obj/item/mine/kick - name = "kick mine" - desc = "Concentrated war crimes. Handle with care." - minetype = /obj/effect/mine/kick - -/obj/item/mine/n2o - name = "nitrous oxide mine" - desc = "A small explosive mine with three Z's on the side." - minetype = /obj/effect/mine/n2o - -/obj/item/mine/stun - name = "stun mine" - desc = "A small explosive mine with a lightning bolt symbol on the side." - minetype = /obj/effect/mine/stun - -/obj/item/mine/frag - name = "fragmentation mine" - desc = "A small explosive mine with 'FRAG' and a grenade symbol on the side." - minetype = /obj/effect/mine/frag - -/obj/item/mine/training - name = "training mine" - desc = "A mine with its payload removed, for EOD training and demonstrations." - minetype = /obj/effect/mine/training - -/obj/item/mine/emp - name = "emp mine" - desc = "A small explosive mine with a lightning bolt symbol on the side." - minetype = /obj/effect/mine/emp - -/obj/item/mine/incendiary - name = "incendiary mine" - desc = "A small explosive mine with a fire symbol on the side." - minetype = /obj/effect/mine/incendiary - -/obj/item/mine/gadget - name = "gadget mine" - desc = "A small pressure-triggered device. If no component is added, the internal release bolts will detonate in unison when triggered." - - allowed_gadgets = list(/obj/item/grenade, /obj/item/transfer_valve) - -// This tells AI mobs to not be dumb and step on mines willingly. -/obj/item/mine/is_safe_to_step(mob/living/L) - if(!L.hovering) - return FALSE - return ..() diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 5cae51bbb0..f040241e10 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -625,8 +625,9 @@ var/global/list/slot_flags_enumeration = list( generate_blood_overlay() //Make the blood_overlay have the proper color then apply it. - blood_overlay.color = blood_color - add_overlay(blood_overlay) + if(blood_overlay) + blood_overlay.color = blood_color + add_overlay(blood_overlay) //if this blood isn't already in the list, add it if(istype(M)) diff --git a/code/game/objects/items/mines/_mine.dm b/code/game/objects/items/mines/_mine.dm new file mode 100644 index 0000000000..51020e975d --- /dev/null +++ b/code/game/objects/items/mines/_mine.dm @@ -0,0 +1,186 @@ +/obj/item/mine + name = "explosive mine" + desc = "A small explosive land mine." + density = FALSE + anchored = FALSE + icon = 'icons/obj/mine.dmi' + icon_state = "mine" + + var/actual_name + var/actual_desc + var/actual_icon_state + var/hidden_alpha = 255 + + var/panel_open = FALSE + var/armed = FALSE + var/triggering = FALSE + var/datum/mine_payload/payload = /datum/mine_payload/explosive + + var/static/list/concealable_turfs = list( + /turf/simulated/floor/concrete, + /turf/simulated/floor/outdoors + ) + +/obj/item/mine/Initialize() + . = ..() + if(ispath(payload)) + payload = new payload + register_dangerous_to_step() + + // We store and hide our appearance if we're armed, to avoid people gaming mines via desc. + actual_name = name + actual_desc = desc + actual_icon_state = icon_state + update_icon() + +/obj/item/mine/Destroy() + if(istype(payload)) + QDEL_NULL(payload) + unregister_dangerous_to_step() + return ..() + +/obj/item/mine/update_icon() + . = ..() + alpha = initial(alpha) + cut_overlays() + if(panel_open) + add_overlay("[icon_state]_open") + else if(armed) + add_overlay("[icon_state]_armed") + alpha = hidden_alpha + else + add_overlay("[icon_state]_safe") + +/obj/item/mine/attack_self(mob/user) // You do not want to move or throw a land mine while priming it... Explosives + Sudden Movement = Bad Times + add_fingerprint(user) + msg_admin_attack("[key_name_admin(user)] armed \the [src]") + user.visible_message( + SPAN_DANGER("\The [user] starts arming \the [src]."), + SPAN_DANGER("You start arming \the [src]. Hold still!") + ) + if(do_after(user, 10 SECONDS)) + playsound(src, 'sound/weapons/armbomb.ogg', 75, 1, -3) + prime(user) + else + visible_message( + SPAN_DANGER("\The [user] accidentally triggers \the [src]!"), + SPAN_DANGER("You accidentally trigger \the [src]!") + ) + prime(user) + trigger_payload(user) + return TRUE + +// debug proc, replace with proper disarm minigame +/obj/item/mine/proc/disarm() + armed = FALSE + triggering = FALSE + anchored = FALSE + name = actual_name + desc = actual_desc + icon_state = actual_icon_state + hidden_alpha = 255 + update_icon() + +/obj/item/mine/attack_hand(mob/living/user) + if(armed) + trigger_payload() + return TRUE + return ..() + +/obj/item/mine/attackby(obj/item/W, mob/living/user) + + if(W.is_screwdriver()) + visible_message(SPAN_NOTICE("\The [user] begins carefully adjusting \the [src]'s casing.")) + if(do_after(user, 5 SECONDS, src)) + panel_open = !panel_open + visible_message(SPAN_NOTICE("\The [user] carefully [panel_open ? "opens" : "closes"] the casing of \the [src].")) + update_icon() + else if(armed) + to_chat(user, SPAN_DANGER("You set off \the [src]!")) + trigger_payload(user) + return TRUE + + if(armed) + if(panel_open && W.is_wirecutter()) + visible_message(SPAN_NOTICE("\The [user] begins painstakingly disarming \the [src]...")) + if(do_after(user, 10 SECONDS, src)) + visible_message(SPAN_NOTICE("\The [user] disarms \the [src]!")) + disarm() + return TRUE + if(armed) // checking again in case the do_after() stacks + to_chat(user, SPAN_DANGER("You set off \the [src]!")) + trigger_payload(user) + return TRUE + + return ..() + +/obj/item/mine/proc/prime(mob/user) + + if(armed) + return + + if(user) + visible_message(SPAN_NOTICE("\The [src] beeps as the priming sequence completes.")) + user.drop_from_inventory(src, get_turf(user)) + add_fingerprint(user) + + anchored = TRUE + armed = TRUE + + if(isturf(loc) && prob(65)) + for(var/turftype in concealable_turfs) + if(istype(loc, turftype)) + hidden_alpha = pick(50, 90, 120) + break + + name = "mine" + desc = "A small land mine." + icon_state = "mine" + update_icon() + +/obj/item/mine/Moved(atom/oldloc) + . = ..() + if(.) + var/turf/old_turf = get_turf(oldloc) + var/turf/new_turf = get_turf(src) + if(old_turf != new_turf) + old_turf.unregister_dangerous_object(src) + new_turf.register_dangerous_object(src) + +/obj/item/mine/proc/trigger_payload(var/mob/living/M) + if(!triggering && payload) + triggering = TRUE + if(ismob(loc)) + var/mob/holder = loc + holder.drop_from_inventory(src) + visible_message("\The [src] goes off!") + payload.trigger_payload(src, M) + disarm() // the mine can be reused if the payload doesn't destroy it. + return TRUE + return FALSE + +/obj/item/mine/bullet_act() + if(prob(50)) + trigger_payload() + if(!QDELETED(src)) + ..() + +/obj/item/mine/ex_act(severity) + if(severity <= 2 || prob(50)) + trigger_payload() + if(!QDELETED(src)) + ..() + +/obj/item/mine/Crossed(atom/movable/AM) + . = ..() + if(istype(AM) && !AM.is_incorporeal()) + Bumped(AM) + +/obj/item/mine/Bumped(atom/movable/AM) + . = ..() + if(!QDELETED(src) && !is_safe_to_step(AM)) + trigger_payload(AM) + +// This tells AI mobs to not be dumb and step on mines willingly. +/obj/item/mine/is_safe_to_step(mob/living/L) + return !istype(L, /obj/mecha) && (!isliving(L) || L.hovering) diff --git a/code/game/objects/items/mines/_mine_payload.dm b/code/game/objects/items/mines/_mine_payload.dm new file mode 100644 index 0000000000..0399a53a5b --- /dev/null +++ b/code/game/objects/items/mines/_mine_payload.dm @@ -0,0 +1,22 @@ +/datum/mine_payload + var/do_sparks = TRUE + var/destroy_self_on_trigger = TRUE + +/datum/mine_payload/proc/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + if(do_sparks) + var/datum/effect_system/spark_spread/s = new + s.set_up(3, 1, owner) + s.start() + if(destroy_self_on_trigger) + if(!QDELETED(owner)) + QDEL_IN(owner, 1) + else + owner.disarm() // some mines can be reused + +/datum/mine_payload/proc/remove_from_mine() + return + +/datum/mine_payload/explosive/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + owner.visible_message("\The [owner] detonates!") + explosion(owner.loc, 0, 2, 3, 4) //land mines are dangerous, folks. diff --git a/code/game/objects/items/mines/mine_assembly.dm b/code/game/objects/items/mines/mine_assembly.dm new file mode 100644 index 0000000000..78849b76fa --- /dev/null +++ b/code/game/objects/items/mines/mine_assembly.dm @@ -0,0 +1,62 @@ +/obj/item/mine/assembly + name = "mine assembly" + desc = "A small pressure-triggered device. Accepts grenades and tank transfer valves." + var/static/list/accepts_items = list( + /obj/item/transfer_valve = /datum/mine_payload/assembly/tank_transfer_valve, + /obj/item/grenade = /datum/mine_payload/assembly/grenade + ) + +/obj/item/mine/assembly/attackby(obj/item/W, mob/living/user) + if(!armed && !triggering) + var/datum/mine_payload/assembly/attached_payload = payload + if(attached_payload.attached) + if(W.is_screwdriver()) + to_chat(user, "You disconnect \the [src]'s [attached_payload.attached.name] and remove it.") + attached_payload.attached.forceMove(get_turf(user)) + payload.remove_from_mine() + QDEL_NULL(payload) + else + for(var/loadtype in accepts_items) + if(istype(W, loadtype)) + user.drop_from_inventory(W) + W.forceMove(src) + var/payload_type = accepts_items[loadtype] + attached_payload = new payload_type + attached_payload.attached = W + payload = attached_payload + return TRUE + return ..() + +/datum/mine_payload/assembly + var/obj/item/attached + +/datum/mine_payload/assembly/New(var/obj/item/_attaching) + ..() + attached = _attaching + +/datum/mine_payload/assembly/Destroy() + QDEL_NULL(attached) + . = ..() + +/datum/mine_payload/assembly/remove_from_mine() + attached = null + +/datum/mine_payload/assembly/tank_transfer_valve/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + if(istype(attached, /obj/item/transfer_valve)) + var/obj/item/transfer_valve/ttv = attached + ttv.forceMove(get_turf(owner)) + ttv.toggle_valve() + remove_from_mine() + +/datum/mine_payload/assembly/grenade/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + if(istype(attached, /obj/item/grenade)) + var/obj/item/grenade/grenade = attached + grenade.forceMove(get_turf(owner)) + if(ismob(trigger)) + var/mob/victim = trigger + if(victim.ckey) + msg_admin_attack("[key_name_admin(victim)] stepped on \a [owner], triggering [grenade]") + grenade.activate() + remove_from_mine() diff --git a/code/game/objects/items/mines/mine_dnascamble.dm b/code/game/objects/items/mines/mine_dnascamble.dm new file mode 100644 index 0000000000..c37bbaf45e --- /dev/null +++ b/code/game/objects/items/mines/mine_dnascamble.dm @@ -0,0 +1,13 @@ +/obj/item/mine/dnascramble + name = "radiation mine" + desc = "A small explosive mine with a radiation symbol on the side." + payload = /datum/mine_payload/dnascramble + +/datum/mine_payload/dnascramble/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + if(ismob(trigger)) + var/mob/M = trigger + M.radiation += 50 + randmutb(M) + domutcheck(M,null) + owner.visible_message("\The [owner] flashes violently before disintegrating!") diff --git a/code/game/objects/items/mines/mine_emp.dm b/code/game/objects/items/mines/mine_emp.dm new file mode 100644 index 0000000000..935b333da9 --- /dev/null +++ b/code/game/objects/items/mines/mine_emp.dm @@ -0,0 +1,9 @@ +/obj/item/mine/emp + name = "emp mine" + desc = "A small explosive mine with a lightning bolt symbol on the side." + payload = /datum/mine_payload/emp + +/datum/mine_payload/emp/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + owner.visible_message("\The [owner] flashes violently before disintegrating!") + empulse(owner.loc, 2, 4, 7, 10, 1) // As strong as an EMP grenade diff --git a/code/game/objects/items/mines/mine_frag.dm b/code/game/objects/items/mines/mine_frag.dm new file mode 100644 index 0000000000..c57941065b --- /dev/null +++ b/code/game/objects/items/mines/mine_frag.dm @@ -0,0 +1,17 @@ +/obj/item/mine/frag + name = "fragmentation mine" + desc = "A small explosive mine with 'FRAG' and a grenade symbol on the side." + payload = /datum/mine_payload/frag + +/datum/mine_payload/frag + var/fragment_types = list(/obj/item/projectile/bullet/pellet/fragment) + var/num_fragments = 20 //total number of fragments produced by the grenade + //The radius of the circle used to launch projectiles. Lower values mean less projectiles are used but if set too low gaps may appear in the spread pattern + var/spread_range = 7 + +/datum/mine_payload/frag/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + var/turf/O = get_turf(owner) + if(O) + owner.fragmentate(O, num_fragments, spread_range, fragment_types) + owner.visible_message("\The [owner] detonates!") diff --git a/code/game/objects/items/mines/mine_incendiary.dm b/code/game/objects/items/mines/mine_incendiary.dm new file mode 100644 index 0000000000..1d2936924a --- /dev/null +++ b/code/game/objects/items/mines/mine_incendiary.dm @@ -0,0 +1,12 @@ +/obj/item/mine/incendiary + name = "incendiary mine" + desc = "A small explosive mine with a fire symbol on the side." + payload = /datum/mine_payload/incendiary + +/datum/mine_payload/incendiary/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + for(var/turf/simulated/floor/target in range(1, owner)) + if(!target.blocks_air) + target.assume_gas("phoron", 30) + target.hotspot_expose(1000, CELL_VOLUME) + owner.visible_message("\The [owner] spews a cloud of flaming gas!") diff --git a/code/game/objects/items/mines/mine_kick.dm b/code/game/objects/items/mines/mine_kick.dm new file mode 100644 index 0000000000..564d6c1d1e --- /dev/null +++ b/code/game/objects/items/mines/mine_kick.dm @@ -0,0 +1,13 @@ +/obj/item/mine/kick + name = "kick mine" + desc = "Concentrated war crimes. Handle with care." + payload = /datum/mine_payload/kick + +/datum/mine_payload/kick/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + if(istype(trigger, /obj/mecha)) + var/obj/mecha/E = trigger + trigger = E.occupant + if(ismob(trigger)) + var/mob/M = trigger + qdel(M.client) diff --git a/code/game/objects/items/mines/mine_napalm.dm b/code/game/objects/items/mines/mine_napalm.dm new file mode 100644 index 0000000000..0d6de598e0 --- /dev/null +++ b/code/game/objects/items/mines/mine_napalm.dm @@ -0,0 +1,12 @@ +/obj/item/mine/napalm + name = "napalm mine" + desc = "A small explosive mine with a fire symbol on the side." + payload = /datum/mine_payload/napalm + +/datum/mine_payload/napalm/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + if(isliving(trigger)) + var/mob/living/M = trigger + M.adjust_fire_stacks(5) + M.fire_act() + owner.visible_message("\The [owner] bursts into flames!") diff --git a/code/game/objects/items/mines/mine_sleeping.dm b/code/game/objects/items/mines/mine_sleeping.dm new file mode 100644 index 0000000000..5e51877b1c --- /dev/null +++ b/code/game/objects/items/mines/mine_sleeping.dm @@ -0,0 +1,11 @@ +/obj/item/mine/sleeping + name = "nitrous oxide mine" + desc = "A small explosive mine with three Z's on the side." + payload = /datum/mine_payload/sleeping + +/datum/mine_payload/sleeping/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + for (var/turf/simulated/floor/target in range(1, owner)) + if(!target.blocks_air) + target.assume_gas("nitrous_oxide", 30) + owner.visible_message("\The [owner] sprays a cloud of gas!") diff --git a/code/game/objects/items/mines/mine_stun.dm b/code/game/objects/items/mines/mine_stun.dm new file mode 100644 index 0000000000..676faa1b48 --- /dev/null +++ b/code/game/objects/items/mines/mine_stun.dm @@ -0,0 +1,11 @@ +/obj/item/mine/stun + name = "stun mine" + desc = "A small explosive mine with a lightning bolt symbol on the side." + payload = /datum/mine_payload/stun + +/datum/mine_payload/stun/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + if(ismob(trigger)) + var/mob/M = trigger + M.Stun(30) + owner.visible_message("\The [owner] flashes violently before disintegrating!") diff --git a/code/game/objects/items/mines/mine_training.dm b/code/game/objects/items/mines/mine_training.dm new file mode 100644 index 0000000000..c81ffd5ce1 --- /dev/null +++ b/code/game/objects/items/mines/mine_training.dm @@ -0,0 +1,12 @@ +/obj/item/mine/training + name = "training mine" + desc = "A mine with its payload removed, for EOD training and demonstrations." + payload = /datum/mine_payload/training + +/datum/mine_payload/training + do_sparks = FALSE + destroy_self_on_trigger = FALSE + +/datum/mine_payload/training/trigger_payload(var/obj/item/mine/owner, var/atom/trigger) + ..() + owner.visible_message("\The [owner]'s light flashes rapidly as it 'explodes'.") diff --git a/code/game/objects/random/mapping.dm b/code/game/objects/random/mapping.dm index 2025d2456f..6319964104 100644 --- a/code/game/objects/random/mapping.dm +++ b/code/game/objects/random/mapping.dm @@ -130,18 +130,23 @@ /obj/random/landmine name = "Random Land Mine" desc = "This is a random land mine." - icon = 'icons/obj/weapons.dmi' - icon_state = "uglymine" + icon = 'icons/obj/mine.dmi' + icon_state = "mine" spawn_nothing_percentage = 25 /obj/random/landmine/item_to_spawn() - return pick(prob(30);/obj/effect/mine, - prob(25);/obj/effect/mine/frag, - prob(25);/obj/effect/mine/emp, - prob(15);/obj/effect/mine/camo, - prob(15);/obj/effect/mine/emp/camo, - prob(10);/obj/effect/mine/stun, - prob(10);/obj/effect/mine/incendiary,) + return pick( + prob(60);/obj/item/mine, + prob(50);/obj/item/mine/emp, + prob(25);/obj/item/mine/frag, + prob(10);/obj/item/mine/stun, + prob(10);/obj/item/mine/incendiary + ) + +/obj/random/landmine/spawn_item() + var/obj/item/mine/mine = ..() + if(istype(mine)) + mine.prime() /obj/random/humanoidremains name = "Random Humanoid Remains" diff --git a/icons/obj/mine.dmi b/icons/obj/mine.dmi new file mode 100644 index 0000000000000000000000000000000000000000..1c28f5775952936c83bc532c23f90cf9acda535b GIT binary patch literal 403 zcmeAS@N?(olHy`uVBq!ia0vp^2|(|NlQTEjQ~KP$OeWkY6x^!?PP{Ku&j6 zNJNQCYH@N=WKhlO#F@nvH#g*lHV9hnrO5Ugo#tRLFhZLGR^g~SQdCy#uzz0UZyZU_`P`doa; zGr{GXEDU+uXF7y0S@KLJtVw2J^E%y)8s?_08nvgm*461Hyk}x)4|h%Q_<2bl=&V{# z7sn8f&g29M*2N9W92y!sC#vwaaq%7c@kElfwYQgf0!z708wx}yMIPK`qSe4?o-pM_z@<5sqVt7#)Fo%PwF#}S6X|IRG~jY$G)!PN v@06;+-u6{1-oD!M literal 0 HcmV?d00001 diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 30c1264169cc7f885f1620d98997d9572545f4e1..b662e0e71e0a2de0bfb30abe455500292f5a6dc0 100644 GIT binary patch literal 48706 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%0A?f1&Z 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 P@JsiG(e;no4$uDwvzFy7 literal 49063 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 Code File. +// New source code should be placed in .dm files: choose File/New --> Code File. // BEGIN_INTERNALS // END_INTERNALS // BEGIN_FILE_DIR @@ -434,7 +434,6 @@ #include "code\datums\wires\explosive.dm" #include "code\datums\wires\grid_checker.dm" #include "code\datums\wires\jukebox.dm" -#include "code\datums\wires\mines.dm" #include "code\datums\wires\particle_accelerator.dm" #include "code\datums\wires\radio.dm" #include "code\datums\wires\robot.dm" @@ -900,7 +899,6 @@ #include "code\game\objects\effects\glowshroom.dm" #include "code\game\objects\effects\item_pickup_ghost.dm" #include "code\game\objects\effects\landmarks.dm" -#include "code\game\objects\effects\mines.dm" #include "code\game\objects\effects\misc.dm" #include "code\game\objects\effects\overlays.dm" #include "code\game\objects\effects\portals.dm" @@ -1012,6 +1010,18 @@ #include "code\game\objects\items\devices\radio\jammer.dm" #include "code\game\objects\items\devices\radio\radio.dm" #include "code\game\objects\items\devices\radio\radiopack.dm" +#include "code\game\objects\items\mines\_mine.dm" +#include "code\game\objects\items\mines\_mine_payload.dm" +#include "code\game\objects\items\mines\mine_assembly.dm" +#include "code\game\objects\items\mines\mine_dnascamble.dm" +#include "code\game\objects\items\mines\mine_emp.dm" +#include "code\game\objects\items\mines\mine_frag.dm" +#include "code\game\objects\items\mines\mine_incendiary.dm" +#include "code\game\objects\items\mines\mine_kick.dm" +#include "code\game\objects\items\mines\mine_napalm.dm" +#include "code\game\objects\items\mines\mine_sleeping.dm" +#include "code\game\objects\items\mines\mine_stun.dm" +#include "code\game\objects\items\mines\mine_training.dm" #include "code\game\objects\items\robot\robot_items.dm" #include "code\game\objects\items\robot\robot_parts.dm" #include "code\game\objects\items\robot\robot_upgrades.dm"