mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Merge pull request #11615 from VOREStation/upstream-merge-8311
[MIRROR] Remove suicide act
This commit is contained in:
committed by
Chompstation Bot
parent
299511d80d
commit
0f2f5cb482
@@ -88,11 +88,6 @@
|
|||||||
creator = null
|
creator = null
|
||||||
..()
|
..()
|
||||||
|
|
||||||
/obj/item/weapon/melee/changeling/suicide_act(mob/user)
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message("<span class='danger'>[user] is impaling [T.himself] with the [src.name]! It looks like [T.he] [T.is] trying to commit suicide.</span>")
|
|
||||||
return(BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/changeling/process() //Stolen from ninja swords.
|
/obj/item/weapon/melee/changeling/process() //Stolen from ninja swords.
|
||||||
if(!creator || loc != creator || !creator.item_is_in_hands(src))
|
if(!creator || loc != creator || !creator.item_is_in_hands(src))
|
||||||
// Tidy up a bit.
|
// Tidy up a bit.
|
||||||
|
|||||||
@@ -1,110 +1,3 @@
|
|||||||
/* The old single tank bombs that dont really work anymore
|
|
||||||
/obj/effect/spawner/bomb
|
|
||||||
name = "bomb"
|
|
||||||
icon = 'icons/mob/screen1.dmi'
|
|
||||||
icon_state = "x"
|
|
||||||
var/btype = 0 //0 = radio, 1= prox, 2=time
|
|
||||||
var/explosive = 1 // 0= firebomb
|
|
||||||
var/btemp = 500 // bomb temperature (degC)
|
|
||||||
var/active = 0
|
|
||||||
|
|
||||||
/obj/effect/spawner/bomb/radio
|
|
||||||
btype = 0
|
|
||||||
|
|
||||||
/obj/effect/spawner/bomb/proximity
|
|
||||||
btype = 1
|
|
||||||
|
|
||||||
/obj/effect/spawner/bomb/timer
|
|
||||||
btype = 2
|
|
||||||
|
|
||||||
/obj/effect/spawner/bomb/timer/syndicate
|
|
||||||
btemp = 450
|
|
||||||
|
|
||||||
/obj/effect/spawner/bomb/suicide
|
|
||||||
btype = 3
|
|
||||||
|
|
||||||
/obj/effect/spawner/bomb/New()
|
|
||||||
..()
|
|
||||||
|
|
||||||
switch (src.btype)
|
|
||||||
// radio
|
|
||||||
if (0)
|
|
||||||
var/obj/item/assembly/r_i_ptank/R = new /obj/item/assembly/r_i_ptank(src.loc)
|
|
||||||
var/obj/item/weapon/tank/phoron/p3 = new /obj/item/weapon/tank/phoron(R)
|
|
||||||
var/obj/item/device/radio/signaler/p1 = new /obj/item/device/radio/signaler(R)
|
|
||||||
var/obj/item/device/igniter/p2 = new /obj/item/device/igniter(R)
|
|
||||||
R.part1 = p1
|
|
||||||
R.part2 = p2
|
|
||||||
R.part3 = p3
|
|
||||||
p1.master = R
|
|
||||||
p2.master = R
|
|
||||||
p3.master = R
|
|
||||||
R.status = explosive
|
|
||||||
p1.b_stat = 0
|
|
||||||
p2.secured = 1
|
|
||||||
p3.air_contents.temperature = btemp + T0C
|
|
||||||
|
|
||||||
// proximity
|
|
||||||
if (1)
|
|
||||||
var/obj/item/assembly/m_i_ptank/R = new /obj/item/assembly/m_i_ptank(src.loc)
|
|
||||||
var/obj/item/weapon/tank/phoron/p3 = new /obj/item/weapon/tank/phoron(R)
|
|
||||||
var/obj/item/device/prox_sensor/p1 = new /obj/item/device/prox_sensor(R)
|
|
||||||
var/obj/item/device/igniter/p2 = new /obj/item/device/igniter(R)
|
|
||||||
R.part1 = p1
|
|
||||||
R.part2 = p2
|
|
||||||
R.part3 = p3
|
|
||||||
p1.master = R
|
|
||||||
p2.master = R
|
|
||||||
p3.master = R
|
|
||||||
R.status = explosive
|
|
||||||
|
|
||||||
p3.air_contents.temperature = btemp + T0C
|
|
||||||
p2.secured = 1
|
|
||||||
|
|
||||||
if(src.active)
|
|
||||||
R.part1.secured = 1
|
|
||||||
R.part1.icon_state = text("motion[]", 1)
|
|
||||||
R.c_state(1, src)
|
|
||||||
|
|
||||||
// timer
|
|
||||||
if (2)
|
|
||||||
var/obj/item/assembly/t_i_ptank/R = new /obj/item/assembly/t_i_ptank(src.loc)
|
|
||||||
var/obj/item/weapon/tank/phoron/p3 = new /obj/item/weapon/tank/phoron(R)
|
|
||||||
var/obj/item/device/timer/p1 = new /obj/item/device/timer(R)
|
|
||||||
var/obj/item/device/igniter/p2 = new /obj/item/device/igniter(R)
|
|
||||||
R.part1 = p1
|
|
||||||
R.part2 = p2
|
|
||||||
R.part3 = p3
|
|
||||||
p1.master = R
|
|
||||||
p2.master = R
|
|
||||||
p3.master = R
|
|
||||||
R.status = explosive
|
|
||||||
|
|
||||||
p3.air_contents.temperature = btemp + T0C
|
|
||||||
p2.secured = 1
|
|
||||||
//bombvest
|
|
||||||
if(3)
|
|
||||||
var/obj/item/clothing/suit/armor/a_i_a_ptank/R = new /obj/item/clothing/suit/armor/a_i_a_ptank(src.loc)
|
|
||||||
var/obj/item/weapon/tank/phoron/p4 = new /obj/item/weapon/tank/phoron(R)
|
|
||||||
var/obj/item/device/healthanalyzer/p1 = new /obj/item/device/healthanalyzer(R)
|
|
||||||
var/obj/item/device/igniter/p2 = new /obj/item/device/igniter(R)
|
|
||||||
var/obj/item/clothing/suit/armor/vest/p3 = new /obj/item/clothing/suit/armor/vest(R)
|
|
||||||
R.part1 = p1
|
|
||||||
R.part2 = p2
|
|
||||||
R.part3 = p3
|
|
||||||
R.part4 = p4
|
|
||||||
p1.master = R
|
|
||||||
p2.master = R
|
|
||||||
p3.master = R
|
|
||||||
p4.master = R
|
|
||||||
R.status = explosive
|
|
||||||
|
|
||||||
p4.air_contents.temperature = btemp + T0C
|
|
||||||
p2.secured = 1
|
|
||||||
|
|
||||||
qdel(src)
|
|
||||||
*/
|
|
||||||
|
|
||||||
/client/proc/spawn_tanktransferbomb()
|
/client/proc/spawn_tanktransferbomb()
|
||||||
set category = "Debug"
|
set category = "Debug"
|
||||||
set desc = "Spawn a tank transfer valve bomb"
|
set desc = "Spawn a tank transfer valve bomb"
|
||||||
|
|||||||
@@ -175,27 +175,12 @@
|
|||||||
switch(severity)
|
switch(severity)
|
||||||
if(1.0)
|
if(1.0)
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
|
||||||
if(2.0)
|
if(2.0)
|
||||||
if (prob(50))
|
if (prob(50))
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
|
||||||
if(3.0)
|
if(3.0)
|
||||||
if (prob(5))
|
if (prob(5))
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
|
||||||
else
|
|
||||||
return
|
|
||||||
|
|
||||||
//user: The mob that is suiciding
|
|
||||||
//damagetype: The type of damage the item will inflict on the user
|
|
||||||
//BRUTELOSS = 1
|
|
||||||
//FIRELOSS = 2
|
|
||||||
//TOXLOSS = 4
|
|
||||||
//OXYLOSS = 8
|
|
||||||
//Output a creative message and then return the damagetype done
|
|
||||||
/obj/item/proc/suicide_act(mob/user)
|
|
||||||
return
|
|
||||||
|
|
||||||
/obj/item/verb/move_to_top()
|
/obj/item/verb/move_to_top()
|
||||||
set name = "Move To Top"
|
set name = "Move To Top"
|
||||||
|
|||||||
@@ -63,7 +63,6 @@
|
|||||||
* this goes through some of the checks - the toys need to be next to each other to fight!
|
* this goes through some of the checks - the toys need to be next to each other to fight!
|
||||||
* if it's player vs themself: They need to be able to "control" both mechs (either must be adjacent or using TK).
|
* if it's player vs themself: They need to be able to "control" both mechs (either must be adjacent or using TK).
|
||||||
* if it's player vs player: Both players need to be able to "control" their mechs (either must be adjacent or using TK).
|
* if it's player vs player: Both players need to be able to "control" their mechs (either must be adjacent or using TK).
|
||||||
* if it's player vs mech (suicide): the mech needs to be in range of the player.
|
|
||||||
* if all the checks are TRUE, it does the sleeps, and returns TRUE. Otherwise, it returns FALSE.
|
* if all the checks are TRUE, it does the sleeps, and returns TRUE. Otherwise, it returns FALSE.
|
||||||
* Arguments:
|
* Arguments:
|
||||||
* * delay - the amount of time the sleep at the end of the check will sleep for
|
* * delay - the amount of time the sleep at the end of the check will sleep for
|
||||||
@@ -196,48 +195,6 @@
|
|||||||
if(wants_to_battle)
|
if(wants_to_battle)
|
||||||
wants_to_battle = FALSE
|
wants_to_battle = FALSE
|
||||||
to_chat(user, "<span class='notice'>You get the feeling they don't want to battle.</span>")
|
to_chat(user, "<span class='notice'>You get the feeling they don't want to battle.</span>")
|
||||||
/**
|
|
||||||
* Starts a battle, toy mech vs player. Player... doesn't win. Commented out for now as suicide_act is not physically doable.
|
|
||||||
*/
|
|
||||||
/obj/item/toy/mecha/suicide_act(mob/living/carbon/user)
|
|
||||||
if(in_combat)
|
|
||||||
to_chat(user, "<span class='notice'>[src] is in battle, let it finish first.</span>")
|
|
||||||
return
|
|
||||||
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message("<span class='suicide'>[user] begins a fight [T.His] can't win with [src]! It looks like [T.His] trying to commit suicide!</span>")
|
|
||||||
|
|
||||||
in_combat = TRUE
|
|
||||||
sleep(1.5 SECONDS)
|
|
||||||
for(var/i in 1 to 4)
|
|
||||||
switch(i)
|
|
||||||
if(1, 3)
|
|
||||||
SpinAnimation(5, 0)
|
|
||||||
playsound(src, 'sound/mecha/mechstep.ogg', 30, TRUE)
|
|
||||||
user.adjustBruteLoss(25)
|
|
||||||
if(2)
|
|
||||||
user.SpinAnimation(5, 0)
|
|
||||||
playsound(user, 'sound/weapons/smash.ogg', 20, TRUE)
|
|
||||||
combat_health-- //we scratched it!
|
|
||||||
if(4)
|
|
||||||
visible_message(special_attack_cry + "!!")
|
|
||||||
|
|
||||||
if(!combat_sleep(1 SECONDS, null, user))
|
|
||||||
visible_message("PATHETIC.")
|
|
||||||
combat_health = max_combat_health
|
|
||||||
in_combat = FALSE
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
sleep(0.5 SECONDS)
|
|
||||||
user.adjustBruteLoss(450)
|
|
||||||
|
|
||||||
in_combat = FALSE
|
|
||||||
visible_message("AN EASY WIN. MY POWER INCREASES.") // steal a soul, become swole
|
|
||||||
color= "#ff7373"
|
|
||||||
max_combat_health = round(max_combat_health*1.5 + 0.1)
|
|
||||||
combat_health = max_combat_health
|
|
||||||
wins++
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/toy/mecha/examine()
|
/obj/item/toy/mecha/examine()
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|||||||
@@ -64,13 +64,6 @@
|
|||||||
qdel_null(tool)
|
qdel_null(tool)
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/item/weapon/pipe_dispenser/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message("<span class='suicide'>[user] points the end of the RPD down [TU.his] throat and presses a button! It looks like [TU.hes] trying to commit suicide...</span>")
|
|
||||||
playsound(src, 'sound/machines/click.ogg', 50, 1)
|
|
||||||
playsound(src, 'sound/items/deconstruct.ogg', 50, 1)
|
|
||||||
return(BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/pipe_dispenser/attack_self(mob/user)
|
/obj/item/weapon/pipe_dispenser/attack_self(mob/user)
|
||||||
tgui_interact(user)
|
tgui_interact(user)
|
||||||
|
|
||||||
|
|||||||
@@ -116,11 +116,6 @@
|
|||||||
if(max_fuel && get_dist(user, src) == 0)
|
if(max_fuel && get_dist(user, src) == 0)
|
||||||
. += "<span class = 'notice'>The [src] feels like it contains roughtly [get_fuel()] units of fuel left.</span>"
|
. += "<span class = 'notice'>The [src] feels like it contains roughtly [get_fuel()] units of fuel left.</span>"
|
||||||
|
|
||||||
/obj/item/weapon/chainsaw/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user), "<span class='danger'>[user] is lying down and pulling the chainsaw into [TU.him], it looks like [TU.he] [TU.is] trying to commit suicide!</span>")
|
|
||||||
return(BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/chainsaw/update_icon()
|
/obj/item/weapon/chainsaw/update_icon()
|
||||||
if(on)
|
if(on)
|
||||||
icon_state = "chainsaw1"
|
icon_state = "chainsaw1"
|
||||||
|
|||||||
@@ -71,13 +71,6 @@
|
|||||||
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||||
drop_sound = 'sound/items/drop/knife.ogg'
|
drop_sound = 'sound/items/drop/knife.ogg'
|
||||||
|
|
||||||
/obj/item/weapon/material/knife/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user), pick("<span class='danger'>\The [user] is slitting [TU.his] wrists with \the [src]! It looks like [TU.hes] trying to commit suicide.</span>", \
|
|
||||||
"<span class='danger'>\The [user] is slitting [TU.his] throat with \the [src]! It looks like [TU.hes] trying to commit suicide.</span>", \
|
|
||||||
"<span class='danger'>\The [user] is slitting [TU.his] stomach open with \the [src]! It looks like [TU.hes] trying to commit seppuku.</span>"))
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
// These no longer inherit from hatchets.
|
// These no longer inherit from hatchets.
|
||||||
/obj/item/weapon/material/knife/tacknife
|
/obj/item/weapon/material/knife/tacknife
|
||||||
name = "tactical knife"
|
name = "tactical knife"
|
||||||
|
|||||||
@@ -198,11 +198,6 @@
|
|||||||
playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/item/weapon/material/whip/suicide_act(mob/user)
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message(span("danger", "\The [user] [T.is] strangling [T.himself] with \the [src]! It looks like [T.he] [T.is] trying to commit suicide."), span("danger", "You start to strangle yourself with \the [src]!"), span("danger", "You hear the sound of someone choking!"))
|
|
||||||
return (OXYLOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/material/whip/attack_self(mob/user)
|
/obj/item/weapon/material/whip/attack_self(mob/user)
|
||||||
user.visible_message("<span class='warning'>\The [user] cracks \the [src]!</span>")
|
user.visible_message("<span class='warning'>\The [user] cracks \the [src]!</span>")
|
||||||
playsound(src, 'sound/effects/snap.ogg', 50, 1)
|
playsound(src, 'sound/effects/snap.ogg', 50, 1)
|
||||||
|
|||||||
@@ -17,12 +17,6 @@
|
|||||||
unbreakable = 1 //It's already broken.
|
unbreakable = 1 //It's already broken.
|
||||||
drops_debris = 0
|
drops_debris = 0
|
||||||
|
|
||||||
/obj/item/weapon/material/shard/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user), pick("<span class='danger'>\The [user] is slitting [TU.his] wrists with \the [src]! It looks like [TU.hes] trying to commit suicide.</span>",
|
|
||||||
"<span class='danger'>\The [user] is slitting [TU.his] throat with \the [src]! It looks like [TU.hes] trying to commit suicide.</span>"))
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/material/shard/set_material(var/new_material)
|
/obj/item/weapon/material/shard/set_material(var/new_material)
|
||||||
..(new_material)
|
..(new_material)
|
||||||
if(!istype(material))
|
if(!istype(material))
|
||||||
|
|||||||
@@ -19,18 +19,8 @@
|
|||||||
return 1
|
return 1
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/item/weapon/material/sword/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),"<span class='danger'>[user] is falling on the [src.name]! It looks like [TU.he] [TU.is] trying to commit suicide.</span>")
|
|
||||||
return(BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/material/sword/katana
|
/obj/item/weapon/material/sword/katana
|
||||||
name = "katana"
|
name = "katana"
|
||||||
desc = "Woefully underpowered in D20. This one looks pretty sharp."
|
desc = "Woefully underpowered in D20. This one looks pretty sharp."
|
||||||
icon_state = "katana"
|
icon_state = "katana"
|
||||||
slot_flags = SLOT_BELT | SLOT_BACK
|
slot_flags = SLOT_BELT | SLOT_BACK
|
||||||
|
|
||||||
/obj/item/weapon/material/sword/katana/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
visible_message(span("danger", "[user] is slitting [TU.his] stomach open with \the [src.name]! It looks like [TU.hes] trying to commit seppuku."), span("danger", "You slit your stomach open with \the [src.name]!"), span("danger", "You hear the sound of flesh tearing open.")) // gory, but it gets the point across
|
|
||||||
return(BRUTELOSS)
|
|
||||||
@@ -117,13 +117,6 @@
|
|||||||
add_fingerprint(user)
|
add_fingerprint(user)
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/item/weapon/melee/energy/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
if(active)
|
|
||||||
user.visible_message(pick("<span class='danger'>\The [user] is slitting [TU.his] stomach open with \the [src]! It looks like [TU.he] [TU.is] trying to commit seppuku.</span>",\
|
|
||||||
"<span class='danger'>\The [user] is falling on \the [src]! It looks like [TU.he] [TU.is] trying to commit suicide.</span>"))
|
|
||||||
return (BRUTELOSS|FIRELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/energy/attack(mob/M, mob/user)
|
/obj/item/weapon/melee/energy/attack(mob/M, mob/user)
|
||||||
if(active && use_cell)
|
if(active && use_cell)
|
||||||
if(!use_charge(hitcost))
|
if(!use_charge(hitcost))
|
||||||
@@ -238,11 +231,6 @@
|
|||||||
damtype = BRUTE
|
damtype = BRUTE
|
||||||
to_chat(user, "<span class='notice'>\The [src] is de-energised. It's just a regular axe now.</span>")
|
to_chat(user, "<span class='notice'>\The [src] is de-energised. It's just a regular axe now.</span>")
|
||||||
|
|
||||||
/obj/item/weapon/melee/energy/axe/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
visible_message("<span class='warning'>\The [user] swings \the [src] towards [TU.his] head! It looks like [TU.he] [TU.is] trying to commit suicide.</span>")
|
|
||||||
return (BRUTELOSS|FIRELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/energy/axe/charge
|
/obj/item/weapon/melee/energy/axe/charge
|
||||||
name = "charge axe"
|
name = "charge axe"
|
||||||
desc = "An energised axe."
|
desc = "An energised axe."
|
||||||
|
|||||||
@@ -11,11 +11,6 @@
|
|||||||
hitsound = 'sound/weapons/whip.ogg'
|
hitsound = 'sound/weapons/whip.ogg'
|
||||||
reach = 2
|
reach = 2
|
||||||
|
|
||||||
/obj/item/weapon/melee/chainofcommand/suicide_act(mob/user)
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message(span("danger", "\The [user] [T.is] strangling [T.himself] with \the [src]! It looks like [T.he] [T.is] trying to commit suicide."), span("danger", "You start to strangle yourself with \the [src]!"), span("danger", "You hear the sound of someone choking!"))
|
|
||||||
return (OXYLOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/chainofcommand/curator_whip
|
/obj/item/weapon/melee/chainofcommand/curator_whip
|
||||||
name = "leather whip"
|
name = "leather whip"
|
||||||
desc = "A fine weapon for some treasure hunting."
|
desc = "A fine weapon for some treasure hunting."
|
||||||
|
|||||||
@@ -31,11 +31,6 @@
|
|||||||
/obj/item/weapon/melee/baton/get_cell()
|
/obj/item/weapon/melee/baton/get_cell()
|
||||||
return bcell
|
return bcell
|
||||||
|
|
||||||
/obj/item/weapon/melee/baton/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message("<span class='suicide'>\The [user] is putting the live [name] in [TU.his] mouth! It looks like [TU.he] [TU.is] trying to commit suicide.</span>")
|
|
||||||
return (FIRELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/baton/MouseDrop(obj/over_object as obj)
|
/obj/item/weapon/melee/baton/MouseDrop(obj/over_object as obj)
|
||||||
if(!canremove)
|
if(!canremove)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -84,12 +84,6 @@
|
|||||||
attack_verb = list("drilled")
|
attack_verb = list("drilled")
|
||||||
drop_sound = 'sound/items/drop/accessory.ogg'
|
drop_sound = 'sound/items/drop/accessory.ogg'
|
||||||
|
|
||||||
/obj/item/weapon/surgical/surgicaldrill/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),pick("<span class='danger'>\The [user] is pressing \the [src] to [TU.his] temple and activating it! It looks like [TU.hes] trying to commit suicide.</span>",
|
|
||||||
"<span class='danger'>\The [user] is pressing \the [src] to [TU.his] chest and activating it! It looks like [TU.hes] trying to commit suicide.</span>"))
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Scalpel
|
* Scalpel
|
||||||
*/
|
*/
|
||||||
@@ -110,13 +104,6 @@
|
|||||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||||
drop_sound = 'sound/items/drop/knife.ogg'
|
drop_sound = 'sound/items/drop/knife.ogg'
|
||||||
|
|
||||||
/obj/item/weapon/surgical/scalpel/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),pick("<span class='danger'>\The [user] is slitting [TU.his] wrists with the [src.name]! It looks like [TU.hes] trying to commit suicide.</span>", \
|
|
||||||
"<span class='danger'>\The [user] is slitting [TU.his] throat with the [src.name]! It looks like [TU.hes] trying to commit suicide.</span>", \
|
|
||||||
"<span class='danger'>\The [user] is slitting [TU.his] stomach open with the [src.name]! It looks like [TU.hes] trying to commit seppuku.</span>"))
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Researchable Scalpels
|
* Researchable Scalpels
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -24,12 +24,6 @@
|
|||||||
tool_qualities = list(TOOL_SCREWDRIVER)
|
tool_qualities = list(TOOL_SCREWDRIVER)
|
||||||
var/random_color = TRUE
|
var/random_color = TRUE
|
||||||
|
|
||||||
/obj/item/weapon/tool/screwdriver/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user), pick("<span class='danger'>\The [user] is stabbing the [src.name] into [TU.his] temple! It looks like [TU.hes] trying to commit suicide.</span>", \
|
|
||||||
"<span class='danger'>\The [user] is stabbing the [src.name] into [TU.his] heart! It looks like [TU.hes] trying to commit suicide.</span>"))
|
|
||||||
return(BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/tool/screwdriver/New()
|
/obj/item/weapon/tool/screwdriver/New()
|
||||||
if(random_color)
|
if(random_color)
|
||||||
switch(pick("red","blue","purple","brown","green","cyan","yellow"))
|
switch(pick("red","blue","purple","brown","green","cyan","yellow"))
|
||||||
|
|||||||
@@ -22,11 +22,6 @@
|
|||||||
var/camo_net = FALSE
|
var/camo_net = FALSE
|
||||||
var/stun_length = 0.25 SECONDS
|
var/stun_length = 0.25 SECONDS
|
||||||
|
|
||||||
/obj/item/weapon/beartrap/suicide_act(mob/user)
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),"<span class='danger'>[user] is putting the [src.name] on [T.his] head! It looks like [T.hes] trying to commit suicide.</span>")
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/beartrap/proc/can_use(mob/user)
|
/obj/item/weapon/beartrap/proc/can_use(mob/user)
|
||||||
return (user.IsAdvancedToolUser() && !issilicon(user) && !user.stat && !user.restrained())
|
return (user.IsAdvancedToolUser() && !issilicon(user) && !user.stat && !user.restrained())
|
||||||
|
|
||||||
|
|||||||
@@ -12,11 +12,6 @@
|
|||||||
drop_sound = 'sound/items/drop/sword.ogg'
|
drop_sound = 'sound/items/drop/sword.ogg'
|
||||||
pickup_sound = 'sound/items/pickup/sword.ogg'
|
pickup_sound = 'sound/items/pickup/sword.ogg'
|
||||||
|
|
||||||
/obj/item/weapon/nullrod/suicide_act(mob/user)
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),"<span class='danger'>[user] is impaling [T.himself] with the [src.name]! It looks like [T.he] [T.is] trying to commit suicide.</span>")
|
|
||||||
return (BRUTELOSS|FIRELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/nullrod/attack(mob/M as mob, mob/living/user as mob) //Paste from old-code to decult with a null rod.
|
/obj/item/weapon/nullrod/attack(mob/M as mob, mob/living/user as mob) //Paste from old-code to decult with a null rod.
|
||||||
|
|
||||||
add_attack_logs(user,M,"Hit with [src] (nullrod)")
|
add_attack_logs(user,M,"Hit with [src] (nullrod)")
|
||||||
|
|||||||
7
code/game/verbs/suicide.dm
Normal file
7
code/game/verbs/suicide.dm
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
/mob/living/var/suiciding = 0
|
||||||
|
|
||||||
|
/mob/living/verb/suicide()
|
||||||
|
set hidden = 1
|
||||||
|
|
||||||
|
to_chat(src, "<span class='warning'>No. Adminhelp if there is a legitimate reason, and please review our server rules.</span>")
|
||||||
|
message_admins("[ckey] has tried to trigger the suicide verb, but it is disabled.")
|
||||||
@@ -29,11 +29,6 @@
|
|||||||
/obj/item/instrument/proc/should_stop_playing(mob/user)
|
/obj/item/instrument/proc/should_stop_playing(mob/user)
|
||||||
return user.incapacitated() || !((loc == user) || (isturf(loc) && Adjacent(user))) // sorry, no more TK playing.
|
return user.incapacitated() || !((loc == user) || (isturf(loc) && Adjacent(user))) // sorry, no more TK playing.
|
||||||
|
|
||||||
/obj/item/instrument/suicide_act(mob/user)
|
|
||||||
var/datum/gender/T = gender_datums[user.get_visible_gender()]
|
|
||||||
user.visible_message("<span class='suicide'>[user] begins to play 'Gloomy Sunday'! It looks like [T.hes] trying to commit suicide!</span>")
|
|
||||||
return (BRUTELOSS)
|
|
||||||
|
|
||||||
/obj/item/instrument/attack_self(mob/user)
|
/obj/item/instrument/attack_self(mob/user)
|
||||||
if(!user.IsAdvancedToolUser())
|
if(!user.IsAdvancedToolUser())
|
||||||
to_chat(user, "<span class='warning'>You don't have the dexterity to do this!</span>")
|
to_chat(user, "<span class='warning'>You don't have the dexterity to do this!</span>")
|
||||||
|
|||||||
@@ -303,11 +303,6 @@
|
|||||||
drop_sound = 'sound/items/drop/gloves.ogg'
|
drop_sound = 'sound/items/drop/gloves.ogg'
|
||||||
pickup_sound = 'sound/items/pickup/gloves.ogg'
|
pickup_sound = 'sound/items/pickup/gloves.ogg'
|
||||||
|
|
||||||
/obj/item/weapon/pen/crayon/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),"<font color='red'><b>[user] is jamming the [src.name] up [TU.his] nose and into [TU.his] brain. It looks like [TU.he] [TU.is] trying to commit suicide.</b></font>")
|
|
||||||
return (BRUTELOSS|OXYLOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/pen/crayon/New()
|
/obj/item/weapon/pen/crayon/New()
|
||||||
name = "[colourName] crayon"
|
name = "[colourName] crayon"
|
||||||
|
|
||||||
|
|||||||
@@ -522,14 +522,6 @@ var/list/possible_cable_coil_colours = list(
|
|||||||
uses_charge = 1
|
uses_charge = 1
|
||||||
charge_costs = list(1)
|
charge_costs = list(1)
|
||||||
|
|
||||||
/obj/item/stack/cable_coil/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
if(locate(/obj/item/weapon/stool) in user.loc)
|
|
||||||
user.visible_message("<span class='suicide'>[user] is making a noose with the [src.name]! It looks like [TU.he] [TU.is] trying to commit suicide.</span>")
|
|
||||||
else
|
|
||||||
user.visible_message("<span class='suicide'>[user] is strangling [TU.himself] with the [src.name]! It looks like [TU.he] [TU.is] trying to commit suicide.</span>")
|
|
||||||
return(OXYLOSS)
|
|
||||||
|
|
||||||
/obj/item/stack/cable_coil/New(loc, length = MAXCOIL, var/param_color = null)
|
/obj/item/stack/cable_coil/New(loc, length = MAXCOIL, var/param_color = null)
|
||||||
..()
|
..()
|
||||||
src.amount = length
|
src.amount = length
|
||||||
|
|||||||
@@ -248,9 +248,4 @@
|
|||||||
if (1000 to 50000-1)
|
if (1000 to 50000-1)
|
||||||
return min(rand(10,20),rand(10,20))
|
return min(rand(10,20),rand(10,20))
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/item/weapon/cell/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
to_chat(viewers(user),"<span class='danger'>\The [user] is licking the electrodes of \the [src]! It looks like [TU.he] [TU.is] trying to commit suicide.</span>")
|
|
||||||
return (FIRELOSS)
|
|
||||||
@@ -115,12 +115,5 @@
|
|||||||
add_fingerprint(user)
|
add_fingerprint(user)
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/item/weapon/cell/device/weapon/gunsword/suicide_act(mob/user)
|
|
||||||
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
|
|
||||||
if(active)
|
|
||||||
user.visible_message(pick("<span class='danger'>\The [user] is slitting [TU.his] stomach open with \the [src]! It looks like [TU.he] [TU.is] trying to commit seppuku.</span>",\
|
|
||||||
"<span class='danger'>\The [user] is falling on \the [src]! It looks like [TU.he] [TU.is] trying to commit suicide.</span>"))
|
|
||||||
return (BRUTELOSS|FIRELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/cell/device/weapon/gunsword/update_icon()
|
/obj/item/weapon/cell/device/weapon/gunsword/update_icon()
|
||||||
cut_overlays()
|
cut_overlays()
|
||||||
@@ -121,19 +121,6 @@
|
|||||||
var/mob/living/carbon/human/h = mob
|
var/mob/living/carbon/human/h = mob
|
||||||
h.monkeyize()
|
h.monkeyize()
|
||||||
|
|
||||||
/datum/disease2/effect/suicide
|
|
||||||
name = "Windpipe Contraction"
|
|
||||||
stage = 4
|
|
||||||
badness = 3
|
|
||||||
|
|
||||||
/datum/disease2/effect/suicide/activate(var/mob/living/carbon/mob,var/multiplier)
|
|
||||||
var/datum/gender/TM = gender_datums[mob.get_visible_gender()]
|
|
||||||
mob.suiciding = 30
|
|
||||||
//instead of killing them instantly, just put them at -175 health and let 'em gasp for a while
|
|
||||||
to_chat(viewers(mob),"<font color='red'><b>[mob.name] is holding [TM.his] breath. It looks like [TM.he] [TM.is] trying to commit suicide.</b></font>")
|
|
||||||
mob.adjustOxyLoss(175 - mob.getToxLoss() - mob.getFireLoss() - mob.getBruteLoss() - mob.getOxyLoss())
|
|
||||||
mob.updatehealth()
|
|
||||||
|
|
||||||
/datum/disease2/effect/killertoxins
|
/datum/disease2/effect/killertoxins
|
||||||
name = "Autoimmune Response"
|
name = "Autoimmune Response"
|
||||||
stage = 4
|
stage = 4
|
||||||
|
|||||||
@@ -1074,13 +1074,6 @@
|
|||||||
add_fingerprint(user)
|
add_fingerprint(user)
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/item/weapon/melee/fluffstuff/suicide_act(mob/user)
|
|
||||||
var/tempgender = "[user.gender == MALE ? "he's" : user.gender == FEMALE ? "she's" : "they are"]"
|
|
||||||
if(active)
|
|
||||||
user.visible_message(pick("<span class='danger'>\The [user] is slitting \his stomach open with \the [src]! It looks like [tempgender] trying to commit seppuku.</span>",\
|
|
||||||
"<span class='danger'>\The [user] is falling on \the [src]! It looks like [tempgender] trying to commit suicide.</span>"))
|
|
||||||
return (BRUTELOSS|FIRELOSS)
|
|
||||||
|
|
||||||
/obj/item/weapon/melee/fluffstuff/wolfgirlsword
|
/obj/item/weapon/melee/fluffstuff/wolfgirlsword
|
||||||
name = "Wolfgirl Sword Replica"
|
name = "Wolfgirl Sword Replica"
|
||||||
desc = "A replica of a large, scimitar-like sword with a dull edge. Ceremonial... until it isn't."
|
desc = "A replica of a large, scimitar-like sword with a dull edge. Ceremonial... until it isn't."
|
||||||
|
|||||||
Reference in New Issue
Block a user