diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm
index 10af3669fc4..e9bda2b7625 100644
--- a/code/modules/admin/player_panel.dm
+++ b/code/modules/admin/player_panel.dm
@@ -229,8 +229,6 @@
if(iscarbon(M)) //Carbon stuff
if(ishuman(M))
M_job = M.job
- else if(isslime(M))
- M_job = "slime"
else if(ismonkey(M))
M_job = "Monkey"
else if(isalien(M)) //aliens
@@ -254,6 +252,8 @@
else if(isanimal(M)) //simple animals
if(iscorgi(M))
M_job = "Corgi"
+ else if(isslime(M))
+ M_job = "slime"
else
M_job = "Animal"
diff --git a/code/modules/mob/living/carbon/alien/alien_defense.dm b/code/modules/mob/living/carbon/alien/alien_defense.dm
index bb032d309ef..51e086ae669 100644
--- a/code/modules/mob/living/carbon/alien/alien_defense.dm
+++ b/code/modules/mob/living/carbon/alien/alien_defense.dm
@@ -76,3 +76,11 @@ In all, this is a lot like the monkey code. /N
adjustBruteLoss(damage)
updatehealth()
+/mob/living/carbon/alien/attack_slime(mob/living/simple_animal/slime/M as mob)
+ if(..()) //successful slime attack
+ var/damage = rand(5, 35)
+ if(M.is_adult)
+ damage = rand(10, 40)
+ adjustBruteLoss(damage)
+ add_logs(M, src, "attacked", admin=0)
+ updatehealth()
diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
index e887a878c99..337f05ebbff 100644
--- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
+++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
@@ -27,16 +27,6 @@
if(l_store) l_store.emp_act(severity)
..()
-/mob/living/carbon/alien/humanoid/attack_slime(mob/living/simple_animal/slime/M as mob)
- ..()
- var/damage = rand(5, 35)
- if(M.is_adult)
- damage = rand(10, 40)
- adjustBruteLoss(damage)
- add_logs(M, src, "attacked", admin=0)
- updatehealth()
- return
-
/mob/living/carbon/alien/humanoid/attack_hulk(mob/living/carbon/human/user)
if(user.a_intent == "harm")
..(user, 1)
diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm
index 26991625701..c560c3d7f3e 100644
--- a/code/modules/mob/living/carbon/alien/larva/larva.dm
+++ b/code/modules/mob/living/carbon/alien/larva/larva.dm
@@ -38,17 +38,6 @@
/mob/living/carbon/alien/larva/attack_ui(slot_id)
return
-/mob/living/carbon/alien/larva/attack_slime(mob/living/simple_animal/slime/M as mob)
-
- ..()
- var/damage = rand(5, 35)
- if(M.is_adult)
- damage = rand(20, 40)
- adjustBruteLoss(damage)
- add_logs(M, src, "attacked", admin=0)
- updatehealth()
- return
-
/mob/living/carbon/alien/larva/attack_hulk(mob/living/carbon/human/user)
if(user.a_intent == "harm")
..(user, 1)
diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm
index 6cc72a0af26..c22f1a12bc9 100644
--- a/code/modules/mob/living/carbon/carbon_defense.dm
+++ b/code/modules/mob/living/carbon/carbon_defense.dm
@@ -66,14 +66,26 @@
/mob/living/carbon/attack_slime(mob/living/simple_animal/slime/M)
- if(..())
- var/power = M.powerlevel + rand(0,3)
- Weaken(power)
- if (stuttering < power)
- stuttering = power
- Stun(power)
- var/stunprob = M.powerlevel * 7 + 10
- if (prob(stunprob) && M.powerlevel >= 8)
- adjustFireLoss(M.powerlevel * rand(6,10))
- updatehealth()
+ if(..()) //successful slime attack
+ if(M.powerlevel > 0)
+ var/stunprob = M.powerlevel * 7 + 10 // 17 at level 1, 80 at level 10
+ if(prob(stunprob))
+ M.powerlevel -= 3
+ if(M.powerlevel < 0)
+ M.powerlevel = 0
+
+ visible_message("The [M.name] has shocked [src]!", \
+ "The [M.name] has shocked [src]!")
+
+ var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
+ s.set_up(5, 1, src)
+ s.start()
+ var/power = M.powerlevel + rand(0,3)
+ Weaken(power)
+ if(stuttering < power)
+ stuttering = power
+ Stun(power)
+ if (prob(stunprob) && M.powerlevel >= 8)
+ adjustFireLoss(M.powerlevel * rand(6,10))
+ updatehealth()
return 1
diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm
index fd98c22dcb2..555feee5791 100644
--- a/code/modules/mob/living/carbon/human/human_defense.dm
+++ b/code/modules/mob/living/carbon/human/human_defense.dm
@@ -399,24 +399,20 @@ emp_act
/mob/living/carbon/human/attack_slime(mob/living/simple_animal/slime/M as mob)
- ..()
- var/damage = rand(1, 3)
+ if(..()) //successful slime attack
+ var/damage = rand(5, 25)
+ if(M.is_adult)
+ damage = rand(10, 35)
- if(M.is_adult)
- damage = rand(10, 35)
- else
- damage = rand(5, 25)
+ if(check_shields(damage, "the [M.name]"))
+ return 0
- if(check_shields(damage, "the [M.name]"))
- return 0
+ var/dam_zone = pick("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg", "groin")
- var/dam_zone = pick("head", "chest", "l_arm", "r_arm", "l_leg", "r_leg", "groin")
+ var/obj/item/organ/limb/affecting = get_organ(ran_zone(dam_zone))
+ var/armor_block = run_armor_check(affecting, "melee")
+ apply_damage(damage, BRUTE, affecting, armor_block)
- var/obj/item/organ/limb/affecting = get_organ(ran_zone(dam_zone))
- var/armor_block = run_armor_check(affecting, "melee")
- apply_damage(damage, BRUTE, affecting, armor_block)
-
- return
/mob/living/carbon/human/mech_melee_attack(obj/mecha/M)
if(M.occupant.a_intent == "harm")
diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm
index 56b7affa3cb..5e58fc115c2 100644
--- a/code/modules/mob/living/carbon/life.dm
+++ b/code/modules/mob/living/carbon/life.dm
@@ -1,11 +1,3 @@
-
-/mob/living/carbon
- var/oxygen_alert = 0
- var/toxins_alert = 0
- var/fire_alert = 0
- var/pressure_alert = 0
- var/temperature_alert = 0
-
/mob/living/carbon/Life()
set invisibility = 0
set background = BACKGROUND_ENABLED
@@ -243,22 +235,6 @@
if(reagents)
reagents.metabolize(src)
- if(drowsyness)
- drowsyness--
- eye_blurry = max(2, eye_blurry)
- if(prob(5))
- sleeping += 1
- Paralyse(5)
-
- confused = max(0, confused - 1)
- // decrement dizziness counter, clamped to 0
- if(resting)
- dizziness = max(0, dizziness - 5)
- jitteriness = max(0, jitteriness - 5)
- else
- dizziness = max(0, dizziness - 1)
- jitteriness = max(0, jitteriness - 1)
-
updatehealth()
return
@@ -312,6 +288,8 @@
spawn(0)
emote("snore")
+ var/restingpwr = 1 + 4 * resting
+
//Dizziness
if(dizziness)
var/client/C = client
@@ -319,7 +297,6 @@
var/pixel_y_diff = 0
var/temp
var/saved_dizz = dizziness
- dizziness = max(dizziness-1, 0)
if(C)
var/oldsrc = src
var/amplitude = dizziness*(sin(dizziness * 0.044 * world.time) + 1) / 70 // This shit is annoying at high strength
@@ -345,11 +322,22 @@
C.pixel_x -= pixel_x_diff
C.pixel_y -= pixel_y_diff
src = oldsrc
+ dizziness = max(dizziness - restingpwr, 0)
+
+ if(drowsyness)
+ dizziness = max(drowsyness - restingpwr, 0)
+ eye_blurry = max(2, eye_blurry)
+ if(prob(5))
+ sleeping += 1
+ Paralyse(5)
+
+ if(confused)
+ confused = max(0, confused - 1)
//Jitteryness
if(jitteriness)
do_jitter_animation(jitteriness)
- jitteriness = max(jitteriness-1, 0)
+ jitteriness = max(jitteriness - restingpwr, 0)
//Other
@@ -380,7 +368,7 @@
CheckStamina()
return 1
-//this handles hud updates. Calles update_vision() and handle_hud_icons()
+//this handles hud updates. Calls update_vision() and handle_hud_icons()
/mob/living/carbon/handle_regular_hud_updates()
if(!client) return 0
diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm
index 418ed7d2516..80191c09eea 100644
--- a/code/modules/mob/living/carbon/monkey/monkey.dm
+++ b/code/modules/mob/living/carbon/monkey/monkey.dm
@@ -157,17 +157,12 @@
/mob/living/carbon/monkey/attack_slime(mob/living/simple_animal/slime/M as mob)
- ..()
- var/damage = rand(1, 3)
-
- if(M.is_adult)
- damage = rand(20, 40)
- else
- damage = rand(5, 35)
- adjustBruteLoss(damage)
- updatehealth()
-
- return
+ if(..()) //successful slime attack
+ var/damage = rand(5, 35)
+ if(M.is_adult)
+ damage = rand(20, 40)
+ adjustBruteLoss(damage)
+ updatehealth()
/mob/living/carbon/monkey/Stat()
..()
@@ -259,4 +254,4 @@
src << "Your mask protects you from the acid."
return
- take_organ_damage(min(6*toxpwr, acid_volume * toxpwr))
+ take_organ_damage(min(6*toxpwr, acid_volume * toxpwr))
diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm
index 9341e679715..0f8e3a13d96 100644
--- a/code/modules/mob/living/life.dm
+++ b/code/modules/mob/living/life.dm
@@ -64,9 +64,6 @@
return
/mob/living/proc/handle_chemicals_in_body()
- if(reagents)
- reagents.metabolize(src)
-
return
/mob/living/proc/handle_blood()
@@ -135,7 +132,7 @@
adjustEarDamage(-0.05,-1)
-//this handles hud updates. Calles update_vision() and handle_hud_icons()
+//this handles hud updates. Calls update_vision() and handle_hud_icons()
/mob/living/proc/handle_regular_hud_updates()
if(!client) return 0
diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm
index ab9865d044f..28acd2aa693 100644
--- a/code/modules/mob/living/living_defense.dm
+++ b/code/modules/mob/living/living_defense.dm
@@ -170,26 +170,11 @@ proc/vol_by_throwforce_and_or_w_class(var/obj/item/I)
return // can't attack while eating!
if (stat != DEAD)
+ add_logs(M, src, "attacked", admin=0)
M.do_attack_animation(src)
visible_message("The [M.name] glomps [src]!", \
"The [M.name] glomps [src]!")
-
- if(M.powerlevel > 0)
- var/stunprob = M.powerlevel * 7 + 10 // 17 at level 1, 80 at level 10
- if(prob(stunprob))
- M.powerlevel -= 3
- if(M.powerlevel < 0)
- M.powerlevel = 0
-
- visible_message("The [M.name] has shocked [src]!", \
- "The [M.name] has shocked [src]!")
-
- var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
- s.set_up(5, 1, src)
- s.start()
- return 1
- add_logs(M, src, "attacked", admin=0)
- return
+ return 1
/mob/living/attack_animal(mob/living/simple_animal/M as mob)
if(M.melee_damage_upper == 0)
diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm
index 3eeb99e09e1..01edcc5a149 100644
--- a/code/modules/mob/living/simple_animal/simple_animal.dm
+++ b/code/modules/mob/living/simple_animal/simple_animal.dm
@@ -257,6 +257,7 @@
if(..())
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)
attack_threshold_check(damage)
+ return 1
/mob/living/simple_animal/bullet_act(var/obj/item/projectile/Proj)
if(!Proj)
@@ -291,6 +292,7 @@
if(stat != DEAD)
var/damage = rand(1, 3)
attack_threshold_check(damage)
+ return 1
if (M.a_intent == "help")
if (health > 0)
visible_message("[M.name] [response_help] [src].")
@@ -300,13 +302,19 @@
/mob/living/simple_animal/attack_alien(mob/living/carbon/alien/humanoid/M as mob)
if(..()) //if harm or disarm intent.
- var/damage = rand(15, 30)
- visible_message("[M] has slashed at [src]!", \
- "[M] has slashed at [src]!")
- playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1)
- add_logs(M, src, "attacked", admin=0)
- attack_threshold_check(damage)
- return
+ if(M.a_intent == "disarm")
+ playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1)
+ visible_message("[M] [response_disarm] [name]!", \
+ "[M] [response_disarm] [name]!")
+ add_logs(M, src, "disarmed", admin=0)
+ else
+ var/damage = rand(15, 30)
+ visible_message("[M] has slashed at [src]!", \
+ "[M] has slashed at [src]!")
+ playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1)
+ add_logs(M, src, "attacked", admin=0)
+ attack_threshold_check(damage)
+ return 1
/mob/living/simple_animal/attack_larva(mob/living/carbon/alien/larva/L as mob)
if(..()) //successful larva bite
@@ -314,17 +322,15 @@
if(stat != DEAD)
L.amount_grown = min(L.amount_grown + damage, L.max_grown)
attack_threshold_check(damage)
+ return 1
/mob/living/simple_animal/attack_slime(mob/living/simple_animal/slime/M as mob)
- ..()
- var/damage = rand(1, 3)
-
- if(M.is_adult)
- damage = rand(20, 40)
- else
- damage = rand(5, 35)
- attack_threshold_check(damage)
- return
+ if(..()) //successful slime attack
+ var/damage = rand(5, 30)
+ if(M.is_adult)
+ damage = rand(10, 40)
+ attack_threshold_check(damage)
+ return 1
/mob/living/simple_animal/proc/attack_threshold_check(var/damage)
if(damage <= force_threshold)
@@ -402,9 +408,9 @@
if (2.0)
adjustBruteLoss(60)
-
if(3.0)
adjustBruteLoss(30)
+ updatehealth()
/mob/living/simple_animal/adjustBruteLoss(damage)
health = Clamp(health - damage, 0, maxHealth)
diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm
index c052df6175c..ace53c4346b 100644
--- a/code/modules/mob/living/simple_animal/slime/life.dm
+++ b/code/modules/mob/living/simple_animal/slime/life.dm
@@ -159,9 +159,7 @@
if (reagents.get_reagent_amount("epinephrine")>=5)
mutation_chance = max(mutation_chance - 5,0) //Prevents muation chance going <0%
reagents.remove_reagent("epinephrine", 5)
- src.updatehealth()
-
- return //TODO: DEFERRED
+ updatehealth()
/mob/living/simple_animal/slime/handle_regular_status_updates()
diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm
index 9fbbc063c5d..97d8865239c 100644
--- a/code/modules/mob/living/simple_animal/slime/slime.dm
+++ b/code/modules/mob/living/simple_animal/slime/slime.dm
@@ -95,7 +95,8 @@
var/tally = 0
var/health_deficiency = (100 - health)
- if(health_deficiency >= 45) tally += (health_deficiency / 25)
+ if(health_deficiency >= 45)
+ tally += (health_deficiency / 25)
if(bodytemperature < 183.222)
tally += (283.222 - bodytemperature) / 10 * 1.75
@@ -145,10 +146,7 @@
..()
if(statpanel("Status"))
- if(is_adult)
- stat(null, "Health: [round((health / 200) * 100)]%")
- else
- stat(null, "Health: [round((health / 150) * 100)]%")
+ stat(null, "Health: [round((health / maxHealth) * 100)]%")
if(!docile)
stat(null, "Nutrition: [nutrition]/[get_max_nutrition()]")
@@ -174,21 +172,10 @@
..()
/mob/living/simple_animal/slime/ex_act(severity, target)
+ if (severity == 2.0)
+ adjustFireLoss(60)
..()
- switch (severity)
- if (1.0)
- gib()
- return
-
- if (2.0)
- adjustBruteLoss(60)
- adjustFireLoss(60)
-
- if(3.0)
- adjustBruteLoss(30)
-
- updatehealth()
/mob/living/simple_animal/slime/MouseDrop(var/atom/movable/A as mob|obj)
if(isliving(A) && A != src && usr == src)
@@ -207,58 +194,36 @@
return
/mob/living/simple_animal/slime/attack_slime(mob/living/simple_animal/slime/M as mob)
- ..()
- if(Victim)
- Victim = null
- visible_message("[M] pulls [src] off!")
- return
- attacked += 5
- if(src.nutrition >= 100) //steal some nutrition. negval handled in life()
- src.nutrition -= (50 + (5 * M.amount_grown))
- M.add_nutrition(50 + (5 * M.amount_grown))
- if(src.health > 0)
- src.adjustBruteLoss(4 + (2 * M.amount_grown)) //amt_grown isn't very linear but it works
- src.updatehealth()
- M.adjustBruteLoss(-4 + (-2 * M.amount_grown))
- M.updatehealth()
- return
+ if(..()) //successful slime attack
+ if(Victim)
+ Victim = null
+ visible_message("[M] pulls [src] off!")
+ return
+ attacked += 5
+ if(nutrition >= 100) //steal some nutrition. negval handled in life()
+ nutrition -= (50 + (5 * M.amount_grown))
+ M.add_nutrition(50 + (5 * M.amount_grown))
+ if(health > 0)
+ M.adjustBruteLoss(-4 + (-2 * M.amount_grown))
+ M.updatehealth()
/mob/living/simple_animal/slime/attack_animal(mob/living/simple_animal/M as mob)
if(..())
- var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)
attacked += 10
- adjustBruteLoss(damage)
- updatehealth()
+
/mob/living/simple_animal/slime/attack_paw(mob/living/carbon/monkey/M as mob)
if(..()) //successful monkey bite.
- if(stat != DEAD)
- attacked += 10
- adjustBruteLoss(rand(1, 3))
- updatehealth()
- return
+ attacked += 10
/mob/living/simple_animal/slime/attack_larva(mob/living/carbon/alien/larva/L as mob)
if(..()) //successful larva bite.
- var/damage = rand(1, 3)
- if(stat != DEAD)
- L.amount_grown = min(L.amount_grown + damage, L.max_grown)
- adjustBruteLoss(damage)
- updatehealth()
+ attacked += 10
/mob/living/simple_animal/slime/attack_hulk(mob/living/carbon/human/user)
if(user.a_intent == "harm")
adjustBruteLoss(5)
- if(Victim || Target)
- Victim = null
- Target = null
- anchored = 0
- if(prob(80) && !client)
- Discipline++
- spawn(0)
- step_away(src,user,15)
- sleep(3)
- step_away(src,user,15)
+ discipline_slime(user)
/mob/living/simple_animal/slime/attack_hand(mob/living/carbon/human/M as mob)
@@ -272,18 +237,7 @@
visible_message(" [M] manages to wrestle \the [name] off!")
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
- if(prob(90) && !client)
- Discipline++
-
- spawn()
- SStun = 1
- sleep(rand(45,60))
- if(src)
- SStun = 0
-
- Victim = null
- anchored = 0
- step_away(src,M)
+ discipline_slime(M)
else
M.do_attack_animation(src)
@@ -295,89 +249,16 @@
visible_message(" [M] manages to wrestle \the [name] off of [Victim]!")
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
- if(prob(80) && !client)
- Discipline++
-
- if(!is_adult)
- if(Discipline == 1)
- attacked = 0
-
- spawn()
- SStun = 1
- sleep(rand(55,65))
- if(src)
- SStun = 0
-
- Victim = null
- anchored = 0
- step_away(src,M)
+ discipline_slime(M)
else if(..()) //successful attack
attacked += 10
/mob/living/simple_animal/slime/attack_alien(mob/living/carbon/alien/humanoid/M as mob)
if(..()) //if harm or disarm intent.
+ attacked += 10
+ discipline_slime(M)
- if (M.a_intent == "harm")
- if (prob(95))
- attacked += 10
- playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1)
- var/damage = rand(15, 30)
- if (damage >= 25)
- damage = rand(20, 40)
- visible_message("[M] has slashed [name]!", \
- "[M] has slashed [name]!")
- else
- visible_message("[M] has wounded [name]!", \
- ")[M] has wounded [name]!")
-
- add_logs(M, src, "attacked", admin=0)
- if (health != DEAD)
- adjustBruteLoss(damage)
- updatehealth()
- else
- playsound(loc, 'sound/weapons/slashmiss.ogg', 25, 1, -1)
- visible_message("[M] has attempted to lunge at [name]!", \
- "[M] has attempted to lunge at [name]!")
-
- if (M.a_intent == "disarm")
- playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1)
- var/damage = 5
- attacked += 10
-
- if(prob(95))
- visible_message("[M] has tackled [name]!", \
- "[M] has tackled [name]!")
-
- if(Victim || Target)
- Victim = null
- Target = null
- anchored = 0
- if(prob(80) && !client)
- Discipline++
- if(!istype(src, /mob/living/simple_animal/slime))
- if(Discipline == 1)
- attacked = 0
-
- spawn()
- SStun = 1
- sleep(rand(5,20))
- SStun = 0
-
- spawn(0)
-
- step_away(src,M,15)
- sleep(3)
- step_away(src,M,15)
-
- else
- drop_item()
- visible_message("[M] has disarmed [name]!",
- "[M] has disarmed [name]!")
- add_logs(M, src, "disarmed", admin=0)
- adjustBruteLoss(damage)
- updatehealth()
- return
/mob/living/simple_animal/slime/attackby(obj/item/W, mob/living/user, params)
if(istype(W,/obj/item/stack/sheet/mineral/plasma)) //Let's you feed slimes plasma.
@@ -402,29 +283,7 @@
if(is_adult)
force_effect = round(W.force/2)
if(prob(10 + force_effect))
- if(Victim || Target)
- if(prob(80) && !client)
- Discipline++
- if(Discipline == 1 && !is_adult)
- attacked = 0
- spawn()
- SStun = 1
- sleep(rand(5,20))
- SStun = 0
-
- Victim = null
- Target = null
- anchored = 0
-
- spawn(0)
- if(user)
- canmove = 0
- step_away(src, user)
- if(prob(25 + 2*force_effect))
- sleep(2)
- if(user)
- step_away(src, user)
- canmove = 1
+ discipline_slime(user)
..()
/mob/living/simple_animal/slime/show_inv(mob/user)
@@ -441,19 +300,6 @@
/mob/living/simple_animal/slime/getTrail()
return null
-/mob/living/simple_animal/slime/slip(var/s_amount, var/w_amount, var/obj/O, var/lube)
- if(lube>=2)
- return 0
- .=..()
-
-/mob/living/simple_animal/slime/stripPanelUnequip(obj/item/what, mob/who)
- src << "You don't have the dexterity to do this!"
- return
-
-/mob/living/simple_animal/slime/stripPanelEquip(obj/item/what, mob/who)
- src << "You don't have the dexterity to do this!"
- return
-
/mob/living/simple_animal/slime/examine(mob/user)
var/msg = "*---------*\nThis is \icon[src] \a [src]!\n"
@@ -486,6 +332,34 @@
user << msg
return
+/mob/living/simple_animal/slime/proc/discipline_slime(mob/user)
+
+ if(prob(80) && !client)
+ Discipline++
+
+ if(!is_adult)
+ if(Discipline == 1)
+ attacked = 0
+
+ if(Victim || Target)
+ Victim = null
+ Target = null
+ anchored = 0
+
+ spawn(0)
+ SStun = 1
+ sleep(rand(20,60))
+ SStun = 0
+
+ spawn(0)
+ canmove = 0
+ if(user)
+ step_away(src,user,15)
+ sleep(3)
+ if(user)
+ step_away(src,user,15)
+ canmove = 1
+
/mob/living/simple_animal/slime/pet
docile = 1
diff --git a/tgstation.dme b/tgstation.dme
index d35f40c877b..39a1eaefec5 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -1053,7 +1053,6 @@
#include "code\modules\mob\living\carbon\carbon_defines.dm"
#include "code\modules\mob\living\carbon\death.dm"
#include "code\modules\mob\living\carbon\emote.dm"
-#include "code\modules\mob\living\carbon\inventory.dm"
#include "code\modules\mob\living\carbon\life.dm"
#include "code\modules\mob\living\carbon\say.dm"
#include "code\modules\mob\living\carbon\update_icons.dm"