Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions modular_oculis/modules/yeowchy/yowchverb.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/mob/living/carbon/human/verb/ouch()
set category = "IC"
set name = "Ouch Thyself"
set desc = "Allows you to damage yourself. Ough."
Comment on lines +1 to +4

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesnt TG have a new verb method to use instead of this?


var/unfunnyjoke = pick(list("Select Yeowchies", "I hurt myself... today...", "Damage Types", "Pick Thy Poison", "Applicable Pithy Quote", "Dumb Ways To Die", "Toe Stubbage Device"))
if(prob(0.1))
unfunnyjoke = "In 1998, The Undertaker"
var/damagetype = tgui_input_list(src, "Select a damage type:", unfunnyjoke, list("Brute", "Burn", "Toxin", "Oxygen", "Stamina", "Blood"))

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably would be good to use defines instead of hardcoded strings for the lists

if(!damagetype)
return
var/damageamount = tgui_input_number(src, "How much damage should you take:", "Quantify Ouches", 0, INFINITY, 0)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please limit this to like, 200 damage. Not infinity.

if(!damageamount)
return
var/tobodyzone = FALSE
if(damagetype in list("Brute", "Burn"))
tobodyzone = (tgui_alert(src, "Would you like this damage to be to your selected bodyzone?", "Oughghhghghghghhhh", list("Yes", "No")) == "Yes")

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, defines would be good.

switch(damagetype)
if("Toxin")
adjust_tox_loss(damageamount, forced = TRUE)
if("Oxygen")
adjust_oxy_loss(damageamount)
if("Blood")
adjust_blood_volume(-damageamount, 0, INFINITY)
if("Stamina")
adjust_stamina_loss(damageamount)
if("Burn")
if(tobodyzone)
apply_damage(damageamount, BURN, zone_selected)
else
adjust_fire_loss(damageamount)
if("Brute")

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

once again, defines

if(tobodyzone)
var/typeofbruteselection = tgui_alert(src, "What kinda brute damage we talking?", "Select attack type", list("Blunt", "Piercing", "Lacerating"))
var/options = list("Blunt" = 0, "Lacerating" = SHARP_EDGED, "Piercing" = SHARP_POINTY)
var/chosenoption = options[typeofbruteselection]
apply_damage(damageamount, BRUTE, zone_selected, sharpness = chosenoption)
else
adjust_brute_loss(damageamount)
1 change: 1 addition & 0 deletions tgstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -10331,4 +10331,5 @@
#include "modular_oculis\modules\unique_lizards\code\lizardpeople.dm"
#include "modular_oculis\modules\unique_lizards\code\lizardpeople_organs.dm"
#include "modular_oculis\modules\wall_pinning\code\wall_pin.dm"
#include "modular_oculis\modules\yeowchy\yowchverb.dm"
// END_INCLUDE
Loading