mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-07-21 05:04:10 +01:00
[MIRROR] Have you bingled that (#10545)
Co-authored-by: Cameron Lennox <killer65311@gmail.com> Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
057fffd669
commit
16a213f699
@@ -56,9 +56,9 @@
|
||||
if(!istype(M, /mob/living/carbon)) return
|
||||
if (ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/external/temp = H.organs_by_name["r_hand"]
|
||||
var/obj/item/organ/external/temp = H.organs_by_name[BP_R_HAND]
|
||||
if (H.hand)
|
||||
temp = H.organs_by_name["l_hand"]
|
||||
temp = H.organs_by_name[BP_L_HAND]
|
||||
if(temp && !temp.is_usable())
|
||||
to_chat(H, span_warning("You can't use your [temp.name]"))
|
||||
return
|
||||
@@ -122,7 +122,7 @@
|
||||
|
||||
/mob/living/carbon/electrocute_act(var/shock_damage, var/obj/source, var/siemens_coeff = 1.0, var/def_zone = null, var/stun = 1)
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
if(def_zone == "l_hand" || def_zone == "r_hand") //Diona (And any other potential plant people) hands don't get shocked.
|
||||
if(def_zone == BP_L_HAND || def_zone == BP_R_HAND) //Diona (And any other potential plant people) hands don't get shocked.
|
||||
if(species.flags & IS_PLANT)
|
||||
return 0
|
||||
shock_damage *= siemens_coeff
|
||||
|
||||
@@ -109,7 +109,7 @@
|
||||
user.visible_message(span_danger("\The [user] plunges \the [W] into \the [src]!"))
|
||||
|
||||
var/damage = shank_armor_helper(W, G, user)
|
||||
apply_damage(damage, W.damtype, "torso", 0, sharp=W.sharp, edge=W.edge)
|
||||
apply_damage(damage, W.damtype, BP_TORSO, 0, sharp=W.sharp, edge=W.edge)
|
||||
|
||||
if(W.hitsound)
|
||||
playsound(src, W.hitsound, 50, 1, -1)
|
||||
|
||||
@@ -313,7 +313,7 @@
|
||||
msg += span_warning("[T.He] [T.is] on fire!.")
|
||||
|
||||
var/ssd_msg = species.get_ssd(src)
|
||||
if(ssd_msg && (!should_have_organ("brain") || has_brain()) && stat != DEAD)
|
||||
if(ssd_msg && (!should_have_organ(O_BRAIN) || has_brain()) && stat != DEAD)
|
||||
if(!key)
|
||||
msg += span_deadsay("[T.He] [T.is] [ssd_msg]. It doesn't look like [T.he] [T.is] waking up anytime soon.")
|
||||
else if(!client)
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
L[++L.len] = list("Suit charge: [cell_status]", null, null, null, null)
|
||||
for(var/obj/item/rig_module/module in R.installed_modules)
|
||||
{
|
||||
for(var/stat_rig_module/SRM in module.stat_modules)
|
||||
for(var/atom/movable/stat_rig_module/SRM in module.stat_modules)
|
||||
if(SRM.CanUse())
|
||||
L[++L.len] = list(SRM.module.interface_name,null,null,SRM.name,REF(SRM))
|
||||
}
|
||||
@@ -377,7 +377,7 @@
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
|
||||
if (!def_zone)
|
||||
def_zone = pick("l_hand", "r_hand")
|
||||
def_zone = pick(BP_L_HAND, BP_R_HAND)
|
||||
|
||||
if(species.siemens_coefficient == -1)
|
||||
if(stored_shock_by_ref["\ref[src]"])
|
||||
@@ -813,7 +813,7 @@
|
||||
|
||||
//Used by various things that knock people out by applying blunt trauma to the head.
|
||||
//Checks that the species has a "head" (brain containing organ) and that hit_zone refers to it.
|
||||
/mob/living/carbon/human/proc/headcheck(var/target_zone, var/brain_tag = "brain")
|
||||
/mob/living/carbon/human/proc/headcheck(var/target_zone, var/brain_tag = O_BRAIN)
|
||||
|
||||
var/obj/item/organ/affecting = internal_organs_by_name[brain_tag]
|
||||
|
||||
@@ -1635,7 +1635,7 @@
|
||||
/mob/living/carbon/human/can_stand_overridden()
|
||||
if(wearing_rig && wearing_rig.ai_can_move_suit(check_for_ai = 1))
|
||||
// Actually missing a leg will screw you up. Everything else can be compensated for.
|
||||
for(var/limbcheck in list("l_leg","r_leg"))
|
||||
for(var/limbcheck in list(BP_L_LEG,BP_R_LEG))
|
||||
var/obj/item/organ/affecting = get_organ(limbcheck)
|
||||
if(!affecting)
|
||||
return 0
|
||||
|
||||
@@ -41,9 +41,9 @@
|
||||
|
||||
var/has_hands = TRUE
|
||||
if(istype(H))
|
||||
var/obj/item/organ/external/temp = H.organs_by_name["r_hand"]
|
||||
var/obj/item/organ/external/temp = H.organs_by_name[BP_R_HAND]
|
||||
if(H.hand)
|
||||
temp = H.organs_by_name["l_hand"]
|
||||
temp = H.organs_by_name[BP_L_HAND]
|
||||
if(!temp || !temp.is_usable())
|
||||
has_hands = FALSE
|
||||
for(var/thing in GetViruses()) //This is intentionally not having a has_hands check. If you are clicking on someone next to them, you're close enough to sneeze/cough on them!
|
||||
|
||||
@@ -51,8 +51,8 @@
|
||||
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
|
||||
if(should_have_organ("brain"))
|
||||
var/obj/item/organ/internal/brain/sponge = internal_organs_by_name["brain"]
|
||||
if(should_have_organ(O_BRAIN))
|
||||
var/obj/item/organ/internal/brain/sponge = internal_organs_by_name[O_BRAIN]
|
||||
if(sponge)
|
||||
sponge.take_damage(amount)
|
||||
brainloss = sponge.damage
|
||||
@@ -65,8 +65,8 @@
|
||||
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
|
||||
if(should_have_organ("brain"))
|
||||
var/obj/item/organ/internal/brain/sponge = internal_organs_by_name["brain"]
|
||||
if(should_have_organ(O_BRAIN))
|
||||
var/obj/item/organ/internal/brain/sponge = internal_organs_by_name[O_BRAIN]
|
||||
if(sponge)
|
||||
sponge.damage = min(max(amount, 0),(getMaxHealth()*2))
|
||||
brainloss = sponge.damage
|
||||
@@ -79,8 +79,8 @@
|
||||
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
|
||||
if(should_have_organ("brain"))
|
||||
var/obj/item/organ/internal/brain/sponge = internal_organs_by_name["brain"]
|
||||
if(should_have_organ(O_BRAIN))
|
||||
var/obj/item/organ/internal/brain/sponge = internal_organs_by_name[O_BRAIN]
|
||||
if(sponge)
|
||||
brainloss = min(sponge.damage,getMaxHealth()*2)
|
||||
else
|
||||
|
||||
@@ -545,9 +545,9 @@ emp_act
|
||||
// This does a prob check to catch the thing flying at you, with a minimum of 1%
|
||||
/mob/living/carbon/human/proc/can_catch(var/obj/O)
|
||||
if(!get_active_hand()) // If active hand is empty
|
||||
var/obj/item/organ/external/temp = organs_by_name["r_hand"]
|
||||
var/obj/item/organ/external/temp = organs_by_name[BP_R_HAND]
|
||||
if (hand)
|
||||
temp = organs_by_name["l_hand"]
|
||||
temp = organs_by_name[BP_L_HAND]
|
||||
if(temp && !temp.is_usable())
|
||||
return FALSE // The hand isn't working in the first place
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
return
|
||||
|
||||
var/limb_pain = FALSE
|
||||
for(var/limb_tag in list("l_leg","r_leg","l_foot","r_foot"))
|
||||
for(var/limb_tag in list(BP_L_LEG,BP_R_LEG,BP_L_FOOT,BP_R_FOOT))
|
||||
var/obj/item/organ/external/E = organs_by_name[limb_tag]
|
||||
if(!E || !E.is_usable())
|
||||
stance_damage += 2 // let it fail even if just foot&leg
|
||||
|
||||
@@ -47,8 +47,8 @@
|
||||
if(stat)
|
||||
return
|
||||
|
||||
var/obj/item/organ/external/l_hand = get_organ("l_hand")
|
||||
var/obj/item/organ/external/r_hand = get_organ("r_hand")
|
||||
var/obj/item/organ/external/l_hand = get_organ(BP_L_HAND)
|
||||
var/obj/item/organ/external/r_hand = get_organ(BP_R_HAND)
|
||||
if((!l_hand || l_hand.is_stump()) && (!r_hand || r_hand.is_stump()))
|
||||
to_chat(src, span_warning("You have no hands to play games with!"))
|
||||
return
|
||||
@@ -59,8 +59,8 @@
|
||||
continue
|
||||
if(H == src)
|
||||
continue
|
||||
var/obj/item/organ/external/l_hand2 = H.get_organ("l_hand")
|
||||
var/obj/item/organ/external/r_hand2 = H.get_organ("r_hand")
|
||||
var/obj/item/organ/external/l_hand2 = H.get_organ(BP_L_HAND)
|
||||
var/obj/item/organ/external/r_hand2 = H.get_organ(BP_R_HAND)
|
||||
if((!l_hand2 || l_hand2.is_stump()) && (!r_hand2 || r_hand2.is_stump()))
|
||||
continue
|
||||
nearby |= H
|
||||
@@ -70,8 +70,8 @@
|
||||
continue
|
||||
if(H == src)
|
||||
continue
|
||||
var/obj/item/organ/external/l_hand2 = H.get_organ("l_hand")
|
||||
var/obj/item/organ/external/r_hand2 = H.get_organ("r_hand")
|
||||
var/obj/item/organ/external/l_hand2 = H.get_organ(BP_L_HAND)
|
||||
var/obj/item/organ/external/r_hand2 = H.get_organ(BP_R_HAND)
|
||||
if((!l_hand2 || l_hand2.is_stump()) && (!r_hand2 || r_hand2.is_stump()))
|
||||
continue
|
||||
nearby |= H
|
||||
|
||||
@@ -1293,7 +1293,7 @@
|
||||
else //ALIVE. LIGHTS ARE ON
|
||||
updatehealth() //TODO
|
||||
|
||||
if(health <= CONFIG_GET(number/health_threshold_dead) || (should_have_organ("brain") && !has_brain()))
|
||||
if(health <= CONFIG_GET(number/health_threshold_dead) || (should_have_organ(O_BRAIN) && !has_brain()))
|
||||
death()
|
||||
blinded = 1
|
||||
silent = 0
|
||||
@@ -1321,7 +1321,7 @@
|
||||
qdel(a)
|
||||
|
||||
//Brain damage from Oxyloss
|
||||
if(should_have_organ("brain"))
|
||||
if(should_have_organ(O_BRAIN))
|
||||
var/brainOxPercent = 0.015 //Default 1.5% of your current oxyloss is applied as brain damage, 50 oxyloss is 1 brain damage
|
||||
if(CE_STABLE in chem_effects)
|
||||
brainOxPercent = 0.008 //Halved in effect
|
||||
|
||||
@@ -57,6 +57,7 @@
|
||||
reagent_state = LIQUID
|
||||
color = "#ffffff"
|
||||
scannable = 1
|
||||
wiki_flag = WIKI_SPOILER
|
||||
|
||||
/datum/reagent/glamour_scaling/affect_blood(var/mob/living/carbon/target, var/removed)
|
||||
if(!(/mob/living/proc/set_size in target.verbs))
|
||||
|
||||
@@ -551,7 +551,7 @@
|
||||
return
|
||||
|
||||
//VOREStation Edit Start - Headpats and Handshakes.
|
||||
if(H.zone_sel.selecting == "head")
|
||||
if(H.zone_sel.selecting == BP_HEAD)
|
||||
if(target.touch_reaction_flags & SPECIES_TRAIT_PATTING_DEFENCE)
|
||||
H.visible_message( \
|
||||
span_warning("[target] reflexively bites the hand of [H] to prevent head patting!"), \
|
||||
@@ -564,7 +564,7 @@
|
||||
H.visible_message( \
|
||||
span_notice("[H] pats [target] on the head."), \
|
||||
span_notice("You pat [target] on the head."), )
|
||||
else if(H.zone_sel.selecting == "r_hand" || H.zone_sel.selecting == "l_hand")
|
||||
else if(H.zone_sel.selecting == BP_R_HAND || H.zone_sel.selecting == BP_L_HAND)
|
||||
H.visible_message( \
|
||||
span_notice("[H] shakes [target]'s hand."), \
|
||||
span_notice("You shake [target]'s hand."), )
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
virus_immune = 1
|
||||
|
||||
has_organ = list(
|
||||
"brain" = /obj/item/organ/internal/brain/golem
|
||||
O_BRAIN = /obj/item/organ/internal/brain/golem
|
||||
)
|
||||
|
||||
death_message = "becomes completely motionless..."
|
||||
|
||||
@@ -30,11 +30,11 @@ var/global/list/sparring_attack_cache = list()
|
||||
return FALSE
|
||||
|
||||
// Check if they have a functioning hand.
|
||||
var/obj/item/organ/external/E = user.organs_by_name["l_hand"]
|
||||
var/obj/item/organ/external/E = user.organs_by_name[BP_L_HAND]
|
||||
if(E && !E.is_stump())
|
||||
return TRUE
|
||||
|
||||
E = user.organs_by_name["r_hand"]
|
||||
E = user.organs_by_name[BP_R_HAND]
|
||||
if(E && !E.is_stump())
|
||||
return TRUE
|
||||
|
||||
@@ -79,7 +79,7 @@ var/global/list/sparring_attack_cache = list()
|
||||
if(BP_GROIN)
|
||||
target.visible_message(span_warning("[target] looks like [TT.he] [TT.is] in pain!"), span_warning("Oh god that hurt!")) // Chompstation edit
|
||||
target.apply_effects(stutter = attack_damage * 2, agony = attack_damage* 3, blocked = armour)
|
||||
if("l_leg", "l_foot", "r_leg", "r_foot")
|
||||
if(BP_L_LEG, BP_L_FOOT, BP_R_LEG, BP_R_FOOT)
|
||||
if(!target.lying)
|
||||
target.visible_message(span_warning("[target] gives way slightly."))
|
||||
target.apply_effect(attack_damage*3, AGONY, armour)
|
||||
@@ -199,14 +199,14 @@ var/global/list/sparring_attack_cache = list()
|
||||
if(user.legcuffed || user.buckled)
|
||||
return FALSE
|
||||
|
||||
if(!(zone in list("l_leg", "r_leg", "l_foot", "r_foot", BP_GROIN)))
|
||||
if(!(zone in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT, BP_GROIN)))
|
||||
return FALSE
|
||||
|
||||
var/obj/item/organ/external/E = user.organs_by_name["l_foot"]
|
||||
var/obj/item/organ/external/E = user.organs_by_name[BP_L_FOOT]
|
||||
if(E && !E.is_stump())
|
||||
return TRUE
|
||||
|
||||
E = user.organs_by_name["r_foot"]
|
||||
E = user.organs_by_name[BP_R_FOOT]
|
||||
if(E && !E.is_stump())
|
||||
return TRUE
|
||||
|
||||
@@ -247,14 +247,14 @@ var/global/list/sparring_attack_cache = list()
|
||||
if(!istype(target))
|
||||
return FALSE
|
||||
|
||||
if (!user.lying && (target.lying || (zone in list("l_foot", "r_foot"))))
|
||||
if (!user.lying && (target.lying || (zone in list(BP_L_FOOT, BP_R_FOOT))))
|
||||
if(target.grabbed_by == user && target.lying)
|
||||
return FALSE
|
||||
var/obj/item/organ/external/E = user.organs_by_name["l_foot"]
|
||||
var/obj/item/organ/external/E = user.organs_by_name[BP_L_FOOT]
|
||||
if(E && !E.is_stump())
|
||||
return TRUE
|
||||
|
||||
E = user.organs_by_name["r_foot"]
|
||||
E = user.organs_by_name[BP_R_FOOT]
|
||||
if(E && !E.is_stump())
|
||||
return TRUE
|
||||
|
||||
|
||||
@@ -966,7 +966,7 @@
|
||||
if(ishuman(src))
|
||||
var/mob/living/carbon/human/H = src
|
||||
if(!H.isSynthetic())
|
||||
var/obj/item/organ/internal/liver/L = H.internal_organs_by_name["liver"]
|
||||
var/obj/item/organ/internal/liver/L = H.internal_organs_by_name[O_LIVER]
|
||||
if(!L || L.is_broken())
|
||||
blood_vomit = 1
|
||||
|
||||
|
||||
@@ -336,11 +336,11 @@
|
||||
else
|
||||
t_him = "them"
|
||||
|
||||
if(H.zone_sel.selecting == "head")
|
||||
if(H.zone_sel.selecting == BP_HEAD)
|
||||
H.visible_message( \
|
||||
span_notice("[H] pats [target] on the head."), \
|
||||
span_notice("You pat [target] on the head."), )
|
||||
else if(H.zone_sel.selecting == "r_hand" || H.zone_sel.selecting == "l_hand")
|
||||
else if(H.zone_sel.selecting == BP_R_HAND || H.zone_sel.selecting == BP_L_HAND)
|
||||
H.visible_message( \
|
||||
span_notice("[H] shakes [target]'s hand."), \
|
||||
span_notice("You shake [target]'s hand."), )
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
if(!E || E.is_stump())
|
||||
to_chat(src, span_warning("\The [H] does not have a head!"))
|
||||
|
||||
if(!H.should_have_organ("brain"))
|
||||
if(!H.should_have_organ(O_BRAIN))
|
||||
to_chat(src, span_warning("\The [H] does not seem to have an ear canal to breach."))
|
||||
return
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/I = H.internal_organs_by_name["brain"]
|
||||
var/obj/item/organ/I = H.internal_organs_by_name[O_BRAIN]
|
||||
if(!I) // No brain organ, so the borer moves in and replaces it permanently.
|
||||
replace_brain()
|
||||
else
|
||||
@@ -182,7 +182,7 @@
|
||||
H.ChangeToHusk()
|
||||
|
||||
var/obj/item/organ/internal/borer/B = new(H)
|
||||
H.internal_organs_by_name["brain"] = B
|
||||
H.internal_organs_by_name[O_BRAIN] = B
|
||||
H.internal_organs |= B
|
||||
|
||||
var/obj/item/organ/external/affecting = H.get_organ(BP_HEAD)
|
||||
|
||||
@@ -277,8 +277,8 @@
|
||||
else if(istype(my_mob.buckled, /obj/structure/bed/chair/wheelchair))
|
||||
if(ishuman(my_mob))
|
||||
var/mob/living/carbon/human/driver = my_mob
|
||||
var/obj/item/organ/external/l_hand = driver.get_organ("l_hand")
|
||||
var/obj/item/organ/external/r_hand = driver.get_organ("r_hand")
|
||||
var/obj/item/organ/external/l_hand = driver.get_organ(BP_L_HAND)
|
||||
var/obj/item/organ/external/r_hand = driver.get_organ(BP_R_HAND)
|
||||
if((!l_hand || l_hand.is_stump()) && (!r_hand || r_hand.is_stump()))
|
||||
return // No hands to drive your chair? Tough luck!
|
||||
//drunk wheelchair driving
|
||||
|
||||
@@ -50,12 +50,14 @@ var/obj/effect/lobby_image = new /obj/effect/lobby_image
|
||||
created_for = ckey
|
||||
|
||||
new_player_panel()
|
||||
client.init_verbs()
|
||||
spawn(40)
|
||||
if(client)
|
||||
handle_privacy_poll()
|
||||
client.playtitlemusic()
|
||||
version_warnings()
|
||||
addtimer(CALLBACK(src, PROC_REF(do_after_login)), 4 SECONDS, TIMER_DELETE_ME)
|
||||
|
||||
/mob/new_player/proc/do_after_login()
|
||||
PRIVATE_PROC(TRUE)
|
||||
if(client)
|
||||
handle_privacy_poll()
|
||||
client.playtitlemusic()
|
||||
version_warnings()
|
||||
|
||||
/mob/new_player/proc/version_warnings()
|
||||
var/problems // string to store message to present to player as a problem
|
||||
|
||||
@@ -195,7 +195,6 @@
|
||||
client.prefs.dress_preview_mob(mannequin)
|
||||
var/mob/observer/dead/observer = new(mannequin)
|
||||
observer.moveToNullspace() //Let's not stay in our doomed mannequin
|
||||
qdel(mannequin) //We're not used anymore, so goodbye!
|
||||
|
||||
spawning = 1
|
||||
if(client.media)
|
||||
|
||||
Reference in New Issue
Block a user