diff --git a/code/ZAS/Fire.dm b/code/ZAS/Fire.dm
index 9849166f106..dca29b79452 100644
--- a/code/ZAS/Fire.dm
+++ b/code/ZAS/Fire.dm
@@ -475,10 +475,10 @@ datum/gas_mixture/proc/calculate_firelevel(var/turf/T)
//Always check these damage procs first if fire damage isn't working. They're probably what's wrong.
- apply_damage(2.5*mx*head_exposure, BURN, LIMB_HEAD, 0, 0, "Fire")
- apply_damage(2.5*mx*chest_exposure, BURN, LIMB_CHEST, 0, 0, "Fire")
- apply_damage(2.0*mx*groin_exposure, BURN, LIMB_GROIN, 0, 0, "Fire")
- apply_damage(0.6*mx*legs_exposure, BURN, LIMB_LEFT_LEG, 0, 0, "Fire")
- apply_damage(0.6*mx*legs_exposure, BURN, LIMB_RIGHT_LEG, 0, 0, "Fire")
- apply_damage(0.4*mx*arms_exposure, BURN, LIMB_LEFT_ARM, 0, 0, "Fire")
- apply_damage(0.4*mx*arms_exposure, BURN, LIMB_RIGHT_ARM, 0, 0, "Fire")
+ apply_damage(2.5*mx*head_exposure, BURN, LIMB_HEAD, 0, 0, used_weapon = "Fire")
+ apply_damage(2.5*mx*chest_exposure, BURN, LIMB_CHEST, 0, 0, used_weapon ="Fire")
+ apply_damage(2.0*mx*groin_exposure, BURN, LIMB_GROIN, 0, 0, used_weapon ="Fire")
+ apply_damage(0.6*mx*legs_exposure, BURN, LIMB_LEFT_LEG, 0, 0, used_weapon = "Fire")
+ apply_damage(0.6*mx*legs_exposure, BURN, LIMB_RIGHT_LEG, 0, 0, used_weapon = "Fire")
+ apply_damage(0.4*mx*arms_exposure, BURN, LIMB_LEFT_ARM, 0, 0, used_weapon = "Fire")
+ apply_damage(0.4*mx*arms_exposure, BURN, LIMB_RIGHT_ARM, 0, 0, used_weapon = "Fire")
diff --git a/code/datums/gamemode/factions/bloodcult/bloodcult_data.dm b/code/datums/gamemode/factions/bloodcult/bloodcult_data.dm
index 8dfc8919a1c..3415c43c975 100644
--- a/code/datums/gamemode/factions/bloodcult/bloodcult_data.dm
+++ b/code/datums/gamemode/factions/bloodcult/bloodcult_data.dm
@@ -1,5 +1,5 @@
var/runesets_initialized = 0
-var/list/global_runesets = list()
+var/list/datum/runeset/global_runesets = list()
/datum/runeset //Abstract base class
var/identifier //Key mapped to this runeset in runesets. Also used to sync runewords and runesets
@@ -8,7 +8,7 @@ var/list/global_runesets = list()
var/list/words_english = list()
var/list/words_rune = list()
var/list/words_icons = list()
-
+
/proc/initialize_runesets()
if(runesets_initialized)
return
@@ -21,7 +21,7 @@ var/list/global_runesets = list()
for(var/word_info in subtypesof(word_set))
var/datum/runeword/new_word = new word_info()
if(new_word.english)
- rune_set.words[new_word.english] = new_word
+ rune_set.words[new_word.english] = new_word
global_runesets[rune_set.identifier] = rune_set
runesets_initialized = 1
@@ -31,10 +31,10 @@ var/list/global_runesets = list()
words_english = list("travel", "blood", "join", "hell", "destroy", "technology", "self", "see", "other", "hide")
words_rune = list("ire","ego","nahlizet","certum","veri","jatkaa","mgar","balaq", "karazet", "geeri")
words_icons = list("rune-1","rune-2","rune-4","rune-8","rune-16","rune-32","rune-64","rune-128", "rune-256", "rune-512")
-
-
-
-
+
+
+
+
/datum/runeword
var/identifier
var/english
@@ -47,13 +47,13 @@ var/list/global_runesets = list()
icon = 'icons/effects/uristrunes.dmi'
icon_state = ""
var/color //Used by path rune markers
-
+
/datum/runeword/blood_cult/travel
english = "travel"
rune = "ire"
icon_state = "rune-1"
color = "yellow"
-
+
/datum/runeword/blood_cult/blood
english = "blood"
rune = "ego"
diff --git a/code/game/objects/effects/decals/slag.dm b/code/game/objects/effects/decals/slag.dm
index 7cd94625713..3cf2ffc60e2 100644
--- a/code/game/objects/effects/decals/slag.dm
+++ b/code/game/objects/effects/decals/slag.dm
@@ -78,8 +78,8 @@
if(istype(M,/mob/living/carbon/human))
var/mob/living/carbon/human/H=M
- H.apply_damage(3, BURN, LIMB_LEFT_LEG, 0, 0, "Slag")
- H.apply_damage(3, BURN, LIMB_RIGHT_LEG, 0, 0, "Slag")
+ H.apply_damage(3, BURN, LIMB_LEFT_LEG, 0, 0, used_weapon = "Slag")
+ H.apply_damage(3, BURN, LIMB_RIGHT_LEG, 0, 0, used_weapon = "Slag")
else if(istype(M,/mob/living))
var/mob/living/L=M
L.apply_damage(125, BURN)
diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm
index 77fd013d348..efb8b655435 100644
--- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm
+++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm
@@ -10,12 +10,12 @@
sheet_type = /obj/item/stack/sheet/metal
sheet_amt = 1
var/mob_lock_type = /datum/locking_category/buckle/bed
-
+ var/buckle_range = 0 // The distance a spessman needs to be within in order
+ // to be able to use the buckle_in_out verb
/obj/structure/bed/New()
..()
if(material_type)
sheet_type = material_type.sheettype
- verbs -= /obj/structure/bed/verb/buckle_out
/obj/structure/bed/cultify()
var/obj/structure/bed/chair/wood/wings/I = new /obj/structure/bed/chair/wood/wings(loc)
@@ -51,17 +51,19 @@
/obj/structure/bed/AltClick(mob/user as mob)
buckle_mob(user, user)
-/obj/structure/bed/verb/buckle_in()
- set name = "Buckle In"
+/obj/structure/bed/verb/buckle_in_out()
+ set name = "Buckle In/Out"
set category = "Object"
- set src in range(0)
- buckle_mob(usr, usr)
+ set src in range(1)
-/obj/structure/bed/verb/buckle_out()
- set name = "Buckle Out"
- set category = "Object"
- set src in range(0)
- manual_unbuckle(usr)
+ var/list/locked_mobs = get_locked(mob_lock_type)
+ if(usr in locked_mobs)
+ manual_unbuckle(usr)
+ else
+ if(get_dist(usr, src) > buckle_range)
+ to_chat(usr, "You're too far away.")
+ return
+ buckle_mob(usr, usr)
/obj/structure/bed/proc/manual_unbuckle(var/mob/user)
if(user.isStunned())
@@ -97,8 +99,6 @@
"You hear metal clanking.")
playsound(src, 'sound/misc/buckle_unclick.ogg', 50, 1)
M.clear_alert(SCREEN_ALARM_BUCKLE)
- verbs += /obj/structure/bed/verb/buckle_in
- verbs -= /obj/structure/bed/verb/buckle_out
return TRUE
/obj/structure/bed/proc/buckle_mob(mob/M as mob, mob/user as mob)
@@ -144,8 +144,6 @@
lock_atom(M, mob_lock_type)
M.throw_alert(SCREEN_ALARM_BUCKLE, /obj/abstract/screen/alert/object/buckled, new_master = src)
- verbs -= /obj/structure/bed/verb/buckle_in
- verbs += /obj/structure/bed/verb/buckle_out
if(M.pulledby)
M.pulledby.start_pulling(src)
@@ -228,4 +226,4 @@
..()
/obj/structure/bed/therapy/cultify()
- return //tell me about this "papa" you keep chanting about
\ No newline at end of file
+ return //tell me about this "papa" you keep chanting about
diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index 29d957b5a6d..85115368d27 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -360,7 +360,7 @@
if(!ishigherbeing(user) || !Adjacent(user) || user.incapacitated() || user.lying) // Doesn't work if you're not dragging yourself, not a human, not in range or incapacitated
return
var/mob/living/carbon/M = user
- M.apply_damage(2, BRUTE, LIMB_HEAD, used_weapon = "[src]")
+ M.apply_damage(2, BRUTE, LIMB_HEAD, used_weapon = name)
M.adjustBrainLoss(5)
M.Knockdown(1)
M.Stun(1)
diff --git a/code/game/objects/structures/vehicles/vehicle.dm b/code/game/objects/structures/vehicles/vehicle.dm
index bee14981fcf..9ca3d26a383 100644
--- a/code/game/objects/structures/vehicles/vehicle.dm
+++ b/code/game/objects/structures/vehicles/vehicle.dm
@@ -22,7 +22,7 @@
anchored = 1
density = 1
noghostspin = 1 //You guys are no fun
-
+ buckle_range = 1
var/empstun = 0
var/health = 100
var/max_health = 100
@@ -82,8 +82,6 @@
make_offsets()
if(headlights)
new /datum/action/vehicle/toggle_headlights(src)
- verbs -= /obj/structure/bed/verb/buckle_in //idk how to do this properly
- verbs -= /obj/structure/bed/chair/vehicle/buckle_out
/obj/structure/bed/chair/vehicle/Destroy()
vehicle_list.Remove(src)
@@ -231,13 +229,6 @@
return 0
return 1
-/obj/structure/bed/chair/vehicle/buckle_in()
- set src in range(1)
- buckle_mob(usr, usr)
-
-/obj/structure/bed/chair/vehicle/buckle_out()
- manual_unbuckle(usr)
-
/obj/structure/bed/chair/vehicle/buckle_mob(mob/M, mob/user)
if(!can_buckle(M,user))
return
@@ -255,16 +246,11 @@
if (action.owner && action.owner != user)
action.Remove(action.owner)
action.Grant(user)
- verbs -= /obj/structure/bed/chair/vehicle/buckle_in
- verbs += /obj/structure/bed/chair/vehicle/buckle_out
/obj/structure/bed/chair/vehicle/manual_unbuckle(user)
..()
for (var/datum/action/action in vehicle_actions)
action.Remove(user)
- verbs += /obj/structure/bed/chair/vehicle/buckle_in
- verbs -= /obj/structure/bed/verb/buckle_in //here too
- verbs -= /obj/structure/bed/chair/vehicle/buckle_out
/obj/structure/bed/chair/vehicle/handle_layer()
if(dir == SOUTH)
@@ -477,4 +463,4 @@
/datum/action/vehicle/toggle_headlights/siren
name = "toggle siren"
desc = "Turn the siren lights on or off."
- sounds = list('sound/voice/woopwoop.ogg','sound/items/flashlight_off.ogg')
\ No newline at end of file
+ sounds = list('sound/voice/woopwoop.ogg','sound/items/flashlight_off.ogg')
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index 00bb449677f..4d5bffa3102 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -1646,7 +1646,7 @@
return alert(usr, "The game has already started.", null, null, null, null)
if(master_mode != "Dynamic Mode")
return alert(usr, "The game mode has to be Dynamic Mode!", null, null, null, null)
- var/roundstart_rules = list()
+ var/list/datum/dynamic_ruleset/roundstart/roundstart_rules = list()
for (var/rule in subtypesof(/datum/dynamic_ruleset/roundstart))
var/datum/dynamic_ruleset/roundstart/newrule = new rule()
roundstart_rules[newrule.name] = newrule
@@ -1687,7 +1687,7 @@
return alert(usr, "The game must start first.", null, null, null, null)
if(master_mode != "Dynamic Mode")
return alert(usr, "The game mode has to be Dynamic Mode!", null, null, null, null)
- var/latejoin_rules = list()
+ var/list/datum/dynamic_ruleset/latejoin/latejoin_rules = list()
for (var/rule in subtypesof(/datum/dynamic_ruleset/latejoin))
var/datum/dynamic_ruleset/latejoin/newrule = new rule()
latejoin_rules[newrule.name] = newrule
@@ -3588,7 +3588,7 @@
lavaturfs += F
spawn(0)
- for(var/i = i, i < length, i++) // 180 = 3 minutes
+ for(var/i = 0, i < length, i++) // 180 = 3 minutes
if(damage)
for(var/mob/living/carbon/L in living_mob_list)
if(istype(L.loc, /turf/simulated/floor)) // Are they on LAVA?!
diff --git a/code/modules/cmc/crew.dm b/code/modules/cmc/crew.dm
index 140dbebcc96..43411efba11 100644
--- a/code/modules/cmc/crew.dm
+++ b/code/modules/cmc/crew.dm
@@ -1,4 +1,4 @@
-var/list/cmc_holomap_cache = list()
+var/list/obj/abstract/screen/interface/tooltip/CrewIcon/cmc_holomap_cache = list()
#define ENTRY_SEE_X 1
#define ENTRY_SEE_Y 2
#define ENTRY_MOB 3
@@ -35,11 +35,11 @@ Crew Monitor by Paul, based on the holomaps by Deity
Holomap stuff
*/
//DONT touch, integral to the inner workings
- var/list/holomap_images = list() //list of lists of images for the people using the console
+ var/list/list/holomap_images = list() //list of lists of images for the people using the console
var/list/holomap_z = list() //list of _using selected z_levels
- var/list/holomap_tooltips = list() //list of lists of markers for the people using the console
+ var/list/list/holomap_tooltips = list() //list of lists of markers for the people using the console
var/list/freeze = list() //list of _using set freeze
- var/list/entries = list() //list of all crew, which has sensors >= 1
+ var/list/list/entries = list() //list of all crew, which has sensors >= 1
var/list/textview_updatequeued = list() //list of _using set textviewupdate setting
var/list/holomap = list() //list of _using set holomap-enable setting
var/list/jobs = list( //needed for formatting, stolen from the old cmc
@@ -82,7 +82,7 @@ Crew Monitor by Paul, based on the holomaps by Deity
"Medical Response Officer" = 223,
"Assistant" = 999 //Unknowns/custom jobs should appear after civilians, and before assistants
)
-
+
//DO touch, for mappers to varedit
var/holomap_filter //can make the cmc display syndie/vox hideout
var/list/holomap_z_levels_mapped = list(STATION_Z, ASTEROID_Z, DERELICT_Z) //all z-level which should be mapped
@@ -149,9 +149,11 @@ GENERAL PROCS
deactivate(user)
return
- if(!(holomap_z[uid] in (holomap_z_levels_mapped | holomap_z_levels_unmapped))) //catching some more unwanted behaviours
- if((holomap_z_levels_mapped | holomap_z_levels_unmapped).len > 0)
- holomap_z[uid] = (holomap_z_levels_mapped | holomap_z_levels_unmapped)[1]
+ var/list/mapped_and_unmapped = holomap_z_levels_mapped | holomap_z_levels_unmapped
+
+ if(!(holomap_z[uid] in mapped_and_unmapped)) //catching some more unwanted behaviours
+ if(mapped_and_unmapped.len > 0)
+ holomap_z[uid] = mapped_and_unmapped[1]
else
deactivate(user)
@@ -317,7 +319,7 @@ HOLOMAP PROCS
background.layer = HUD_BASE_LAYER
holomap_cache[holomap_bgmap] = background
holomap_z_levels_unmapped |= CENTCOMM_Z
-
+
holomap["\ref[user]"] = 1
//closes the holomap
@@ -376,7 +378,7 @@ HOLOMAP PROCS
//can only be our z, so i'm not checking that, only if we have a pos
if(entry[ENTRY_POS])
addCrewMarker(user, entry[ENTRY_SEE_X], entry[ENTRY_SEE_Y], entry[ENTRY_MOB], entry[ENTRY_NAME], entry[ENTRY_ASSIGNMENT], entry[ENTRY_STAT], entry[ENTRY_DAMAGE], entry[ENTRY_AREA], entry[ENTRY_POS])
-
+
user.client.images |= holomap_images[uid]
user.client.screen |= holomap_tooltips[uid]
else
@@ -461,7 +463,7 @@ TEXTVIEW PROCS
num = text2num(num)
if(!num)
return 1//something fucked up
-
+
holomap_z[uid] = num
var/datum/nanoui/ui = nanomanager.get_open_ui(usr, src, "textview")
if(ui)
@@ -530,7 +532,7 @@ TEXTVIEW PROCS
if(user.client)
var/datum/asset/simple/C = new/datum/asset/simple/cmc_css_icons()
send_asset_list(user.client, C.assets)
-
+
ui = new(user, src, "textview", "cmc.tmpl", "Crew Monitoring", 900, 600)
ui.add_stylesheet("cmc.css")
var/list/i_data = list()
@@ -615,4 +617,4 @@ Tooltip interface
#undef DAMAGE_OXYGEN
#undef DAMAGE_TOXIN
#undef DAMAGE_FIRE
-#undef DAMAGE_BRUTE
\ No newline at end of file
+#undef DAMAGE_BRUTE
diff --git a/code/modules/mob/death.dm b/code/modules/mob/death.dm
index 5334008e5bc..3bb968094f3 100644
--- a/code/modules/mob/death.dm
+++ b/code/modules/mob/death.dm
@@ -1,6 +1,6 @@
//This is the proc for gibbing a mob. Cannot gib ghosts.
//added different sort of gibs and animations. N
-/mob/proc/gib()
+/mob/proc/gib(animation = FALSE, meat = TRUE)
death(1)
monkeyizing = 1
canmove = 0
diff --git a/code/modules/mob/living/carbon/alien/death.dm b/code/modules/mob/living/carbon/alien/death.dm
index e0182a4b852..c0d373db41c 100644
--- a/code/modules/mob/living/carbon/alien/death.dm
+++ b/code/modules/mob/living/carbon/alien/death.dm
@@ -1,4 +1,4 @@
-/mob/living/carbon/alien/gib()
+/mob/living/carbon/alien/gib(animation = FALSE, meat = TRUE)
death(1)
monkeyizing = 1
canmove = 0
diff --git a/code/modules/mob/living/carbon/brain/death.dm b/code/modules/mob/living/carbon/brain/death.dm
index b55581108d5..396f0ff0058 100644
--- a/code/modules/mob/living/carbon/brain/death.dm
+++ b/code/modules/mob/living/carbon/brain/death.dm
@@ -16,7 +16,7 @@
return ..(gibbed)
-/mob/living/carbon/brain/gib()
+/mob/living/carbon/brain/gib(animation = FALSE, meat = TRUE)
death(1)
monkeyizing = 1
canmove = 0
diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index c2139439793..b2f1a2e570e 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -86,7 +86,7 @@
playsound(user.loc, 'sound/effects/attackblob.ogg', 50, 1)
user.delayNextMove(10) //no just holding the key for an instant gib
-/mob/living/carbon/gib()
+/mob/living/carbon/gib(animation = FALSE, meat = TRUE)
dropBorers(1)
if(stomach_contents && stomach_contents.len)
drop_stomach_contents()
diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm
index 8f4ced29134..6cccf44068c 100644
--- a/code/modules/mob/living/carbon/human/death.dm
+++ b/code/modules/mob/living/carbon/human/death.dm
@@ -1,4 +1,4 @@
-/mob/living/carbon/human/gib()
+/mob/living/carbon/human/gib(animation = FALSE, meat = TRUE)
if(species)
species.gib(src)
return
diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm
index e02457d8de7..7ba24629660 100644
--- a/code/modules/mob/living/carbon/human/human_damage.dm
+++ b/code/modules/mob/living/carbon/human/human_damage.dm
@@ -303,6 +303,7 @@ This function restores all organs.
/mob/living/carbon/human/get_organ(var/zone)
+ RETURN_TYPE(/datum/organ/external)
if(!zone)
zone = LIMB_CHEST
if (zone in list( "eyes", "mouth" ))
@@ -497,4 +498,4 @@ This function restores all organs.
if(reagents)
if(reagents.has_reagent(LITHOTORCRAZINE))
rads = rads/2
- return ..()
\ No newline at end of file
+ return ..()
diff --git a/code/modules/mob/living/carbon/monkey/death.dm b/code/modules/mob/living/carbon/monkey/death.dm
index 419b472f7f5..53af10cd38e 100644
--- a/code/modules/mob/living/carbon/monkey/death.dm
+++ b/code/modules/mob/living/carbon/monkey/death.dm
@@ -1,4 +1,4 @@
-/mob/living/carbon/monkey/gib()
+/mob/living/carbon/monkey/gib(animation = FALSE, meat = TRUE)
death(1)
monkeyizing = 1
canmove = 0
diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm
index 1443f5b7e6b..1b56809689e 100644
--- a/code/modules/mob/living/damage_procs.dm
+++ b/code/modules/mob/living/damage_procs.dm
@@ -8,7 +8,7 @@
Returns
standard 0 if fail
*/
-/mob/living/proc/apply_damage(var/damage = 0,var/damagetype = BRUTE, var/def_zone = null, var/blocked = 0, var/used_weapon = null, ignore_events = 0)
+/mob/living/proc/apply_damage(var/damage = 0,var/damagetype = BRUTE, var/def_zone = null, var/blocked = 0, sharp, edge, var/used_weapon = null, ignore_events = 0)
if(!damage)
return 0
var/damage_done = (damage/100)*(100-blocked)
diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm
index d09920e6ede..473fb90962c 100644
--- a/code/modules/mob/living/death.dm
+++ b/code/modules/mob/living/death.dm
@@ -11,7 +11,7 @@
handle_symptom_on_death()
..()
-/mob/living/gib()
+/mob/living/gib(animation = FALSE, meat = TRUE)
death(1)
monkeyizing = 1
canmove = 0
diff --git a/code/modules/mob/living/silicon/ai/login.dm b/code/modules/mob/living/silicon/ai/login.dm
index 09b2221715a..78a6d5aa3e3 100644
--- a/code/modules/mob/living/silicon/ai/login.dm
+++ b/code/modules/mob/living/silicon/ai/login.dm
@@ -10,7 +10,8 @@
if(ismalf(src))
to_chat(src, "These laws may be changed by other players, or by you being the traitor.")
- for(var/obj/effect/rune/rune in global_runesets["blood_cult"].rune_list) //HOLY FUCK WHO THOUGHT LOOPING THROUGH THE WORLD WAS A GOOD IDEA
+ var/datum/runeset/rune_set = global_runesets["blood_cult"]
+ for(var/obj/effect/rune/rune in rune_set.rune_list) //HOLY FUCK WHO THOUGHT LOOPING THROUGH THE WORLD WAS A GOOD IDEA
client.images += rune.blood_image
regenerate_icons()
diff --git a/code/modules/mob/living/silicon/death.dm b/code/modules/mob/living/silicon/death.dm
index 1a152af493f..e9aa37ae6e1 100644
--- a/code/modules/mob/living/silicon/death.dm
+++ b/code/modules/mob/living/silicon/death.dm
@@ -1,4 +1,4 @@
-/mob/living/silicon/gib()
+/mob/living/silicon/gib(animation = FALSE, meat = TRUE)
death(1)
monkeyizing = 1
canmove = 0
diff --git a/code/modules/mob/living/silicon/robot/death.dm b/code/modules/mob/living/silicon/robot/death.dm
index 2f489cd7a29..bee73a3ec73 100644
--- a/code/modules/mob/living/silicon/robot/death.dm
+++ b/code/modules/mob/living/silicon/robot/death.dm
@@ -1,4 +1,4 @@
-/mob/living/silicon/robot/gib()
+/mob/living/silicon/robot/gib(animation = FALSE, meat = TRUE)
//robots don't die when gibbed. instead they drop their MMI'd brain
disconnect_AI()
monkeyizing = TRUE
diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm
index dd32c59bece..4095d131a59 100644
--- a/code/modules/organs/organ.dm
+++ b/code/modules/organs/organ.dm
@@ -78,8 +78,8 @@
W.time_inflicted = world.time
/mob/living/carbon/human/var/list/organs = list()
-/mob/living/carbon/human/var/list/organs_by_name = list() //Map organ names to organs
-/mob/living/carbon/human/var/list/internal_organs_by_name = list() //So internal organs have less ickiness too
+/mob/living/carbon/human/var/list/datum/organ/external/organs_by_name = list() //Map organ names to organs
+/mob/living/carbon/human/var/list/datum/organ/internal/internal_organs_by_name = list() //So internal organs have less ickiness too
/mob/living/carbon/human/var/list/grasp_organs = list()
/mob/living/carbon/human/proc/can_use_hand(var/this_hand = active_hand)
diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm
index b5ae10470e9..3122278fb8e 100644
--- a/code/modules/reagents/Chemistry-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents.dm
@@ -2443,7 +2443,7 @@
return 1
M.heal_organ_damage(0, 2 * REM)
-
+
/datum/reagent/dermaline
name = "Dermaline"
id = DERMALINE
@@ -2910,8 +2910,8 @@
if(..())
return 1
-
- M.heal_organ_damage(4 * REM, -1 * REM) //heal 2 brute, cause 0.5 burn
+
+ M.heal_organ_damage(4 * REM, -1 * REM) //heal 2 brute, cause 0.5 burn
/datum/reagent/hyperzine
name = "Hyperzine"
@@ -3429,7 +3429,7 @@
/datum/reagent/methylin/on_overdose(var/mob/living/M)
M.adjustToxLoss(1)
M.adjustBrainLoss(1)
-
+
/datum/reagent/bicarodyne
name = "Bicarodyne"
id = BICARODYNE
@@ -3895,7 +3895,7 @@
density = 1.44
specheatcap = 60
overdose_am = 5
-
+
var/on_a_diet
var/oldmetabolism
@@ -3903,10 +3903,10 @@
if(..())
return 1
-
+
if(prob(5))
M.adjustToxLoss(1)
-
+
if(ishuman(M))
var/mob/living/carbon/human/H = M
if(!on_a_diet)
@@ -3915,7 +3915,7 @@
H.calorie_burn_rate += H.calorie_burn_rate * 3
if(prob(8))
H.vomit(0,1)
-
+
/datum/reagent/dietine/reagent_deleted()
if(ishuman(holder.my_atom))
var/mob/living/carbon/human/H = holder.my_atom
@@ -3925,7 +3925,7 @@
/datum/reagent/dietine/on_overdose(var/mob/living/M)
M.adjustToxLoss(1)
if(ishuman(M))
- var/mob/living/carbon/human/H = M
+ var/mob/living/carbon/human/H = M
H.vomit(0,1)
/datum/reagent/soysauce
@@ -3986,7 +3986,7 @@
nutriment_factor = 15 * REAGENTS_METABOLISM
reagent_state = REAGENT_STATE_LIQUID
color = "#FFFACD" //LEMONCHIFFON
-
+
/datum/reagent/drink/gatormix
name = "Gator Mix"
id = GATORMIX
@@ -3999,15 +3999,15 @@
adj_sleepy = -5
adj_temp = 10
overdose_am = 50
-
+
/datum/reagent/gatormix/on_mob_life(var/mob/living/M)
if(..())
return 1
-
+
if(ishuman(M) && prob(20))
var/mob/living/carbon/human/H = M
H.Jitter(5)
-
+
/datum/reagent/gatormix/on_overdose(var/mob/living/M)
if(ishuman(M) && prob(5))
@@ -5956,7 +5956,7 @@
H.equip_to_slot(S, slot_w_uniform)
holder.remove_reagent(WAIFU,4) //Generating clothes costs extra reagent
M.regenerate_icons()
-
+
/datum/reagent/ethanol/husbando
name = "Husbando"
id = HUSBANDO
@@ -5964,12 +5964,12 @@
color = "#2043D0"
/datum/reagent/ethanol/husbando/on_mob_life(var/mob/living/M) //it's copypasted from waifu
- if(..())
+ if(..())
return 1
if(M.gender == FEMALE)
M.setGender(MALE)
if(ishuman(M))
- var/mob/living/carbon/human/H = M
+ var/mob/living/carbon/human/H = M
if(!M.is_wearing_item(/obj/item/clothing/under/callum))
var/turf/T = get_turf(H)
T.turf_animation('icons/effects/96x96.dmi',"manexplode",-32,0,MOB_LAYER+1,'sound/items/poster_ripped.ogg',anim_plane = MOB_PLANE)
@@ -5978,7 +5978,7 @@
if(H.w_uniform)
H.u_equip(H.w_uniform, 1)
H.equip_to_slot(C, slot_w_uniform)
- holder.remove_reagent(HUSBANDO,4)
+ holder.remove_reagent(HUSBANDO,4)
M.regenerate_icons()
/datum/reagent/ethanol/scientists_serendipity
@@ -6044,7 +6044,7 @@
id = MAGICADELUXE
description = "Makes you feel enchanted until the aftertaste hits you."
color = "#009933" //rgb(0, 153, 51)
-
+
/datum/reagent/ethanol/magicadeluxe/on_mob_life(var/mob/living/M)
if(..())
return 1
@@ -6074,14 +6074,14 @@
playsound(M,'sound/effects/summon_guns.ogg', 50, 1)
for (var/spell/majik in fake_spells)
M.add_spell(majik)
-
+
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/spell/thisisdumb = new /spell/targeted/equip_item/robesummon
H.add_spell(thisisdumb)
thisisdumb.charge_type = Sp_CHARGES
thisisdumb.charge_counter = 1
- thisisdumb.charge_max = 1
+ thisisdumb.charge_max = 1
H.cast_spell(thisisdumb,list(H))
holder.remove_reagent(MAGICADELUXE,5)
@@ -6602,7 +6602,7 @@
description = "Triple sec, Cinnamon Whisky, and Tequila, eugh. Less a cocktail more than throwing whatever's on the shelf in a glass."
reagent_state = REAGENT_STATE_LIQUID
color = "#f0133c" //rgb: 240, 19, 60
-
+
/datum/reagent/ethanol/deadrum/magica
name = "Magica"
id = MAGICA