From ebbed814c92373af25a2a99119cad468f4cbdca6 Mon Sep 17 00:00:00 2001 From: Kyep Date: Fri, 29 Dec 2017 17:28:41 -0800 Subject: [PATCH 1/8] Station Pet Tweaks --- code/modules/mob/living/living.dm | 3 +++ code/modules/mob/living/simple_animal/friendly/cat.dm | 2 ++ code/modules/mob/living/simple_animal/friendly/fox.dm | 4 +++- .../modules/mob/living/simple_animal/friendly/sloth.dm | 6 +++--- code/modules/mob/living/simple_animal/parrot.dm | 10 +++++++++- code/modules/mob/mob.dm | 2 +- 6 files changed, 21 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 8c81980eb8e..198bba5ac0a 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -57,6 +57,9 @@ if(moving_diagonally) //no mob swap during diagonal moves. return 1 + if(ispet(src)) + return 1 + if(!M.buckled && !M.has_buckled_mobs()) var/mob_swap //the puller can always swap with it's victim if on grab intent diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 501bfd1e798..5dfce5d7b72 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -175,3 +175,5 @@ eats_mice = 0 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 + melee_damage_lower = 5 + melee_damage_upper = 15 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/fox.dm b/code/modules/mob/living/simple_animal/friendly/fox.dm index 6edfc6f42c9..26db6dae955 100644 --- a/code/modules/mob/living/simple_animal/friendly/fox.dm +++ b/code/modules/mob/living/simple_animal/friendly/fox.dm @@ -37,4 +37,6 @@ faction = list("syndicate") gold_core_spawnable = CHEM_MOB_SPAWN_INVALID atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) - minbodytemp = 0 \ No newline at end of file + minbodytemp = 0 + melee_damage_lower = 10 + melee_damage_upper = 20 \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/friendly/sloth.dm b/code/modules/mob/living/simple_animal/friendly/sloth.dm index bf12b07de2e..7f80683a46d 100644 --- a/code/modules/mob/living/simple_animal/friendly/sloth.dm +++ b/code/modules/mob/living/simple_animal/friendly/sloth.dm @@ -17,8 +17,8 @@ response_disarm = "gently pushes aside" response_harm = "kicks" gold_core_spawnable = CHEM_MOB_SPAWN_FRIENDLY - melee_damage_lower = 18 - melee_damage_upper = 18 + melee_damage_lower = 0 + melee_damage_upper = 0 health = 50 maxHealth = 50 speed = 2 @@ -28,4 +28,4 @@ /mob/living/simple_animal/pet/sloth/paperwork name = "Paperwork" desc = "Cargo's pet sloth. About as useful as the rest of the techs." - gold_core_spawnable = CHEM_MOB_SPAWN_INVALID + gold_core_spawnable = CHEM_MOB_SPAWN_INVALID \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index 91eb0970f50..e6dacc81a67 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -687,7 +687,15 @@ "STOP HOT-WIRING THE ENGINE, FUCKING CHRIST!", "Wire the solars, you lazy bums!", "WHO TOOK THE DAMN HARDSUITS?", - "OH GOD ITS FREE CALL THE SHUTTLE") + "OH GOD ITS FREE CALL THE SHUTTLE", + "Why are there so many atmos alerts?", + "OH GOD WHY WOULD YOU TURN ON THE PA BEFORE CONTAINMENT IS UP?", + "Remember to lock the emitters!", + "Stop goofing off and repair the goddam station!", + "The singularity is not your friend!", + "What were the wires again?", + "Goddam emaggers!" + ) gold_core_spawnable = CHEM_MOB_SPAWN_INVALID /mob/living/simple_animal/parrot/Poly/New() diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index aa4fb41ca08..0e904b90290 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1055,7 +1055,7 @@ var/list/slot_equipment_priority = list( \ var/list/creatures = list("Mouse") for(var/mob/living/L in living_mob_list) if(safe_respawn(L.type) && L.stat!=2) - if(!L.key) + if(!L.key && is_station_level(L.z)) creatures += L var/picked = input("Please select an NPC to respawn as", "Respawn as NPC") as null|anything in creatures switch(picked) From 9aff234e5eb332d610c0f3c570c1f7ce49e26b44 Mon Sep 17 00:00:00 2001 From: Kyep Date: Fri, 29 Dec 2017 23:41:00 -0800 Subject: [PATCH 2/8] stops pets pulling other mobs --- code/modules/mob/pulling.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/mob/pulling.dm b/code/modules/mob/pulling.dm index 5a532ee1a42..9742c5bc6c5 100644 --- a/code/modules/mob/pulling.dm +++ b/code/modules/mob/pulling.dm @@ -15,6 +15,9 @@ return stop_pulling() + if(ispet(src) && isliving(AM)) + return + if(AM.pulledby) visible_message("[src] has pulled [AM] from [AM.pulledby]'s grip.") AM.pulledby.stop_pulling() //an object can't be pulled by two mobs at once. From 6d813c07e4c9f775d1c5564934d2c01b1a69a38f Mon Sep 17 00:00:00 2001 From: Kyep Date: Sat, 30 Dec 2017 10:16:24 -0800 Subject: [PATCH 3/8] pets can now pull other pets but not humanoids --- code/modules/mob/pulling.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/pulling.dm b/code/modules/mob/pulling.dm index 9742c5bc6c5..c89c5b9d144 100644 --- a/code/modules/mob/pulling.dm +++ b/code/modules/mob/pulling.dm @@ -15,7 +15,7 @@ return stop_pulling() - if(ispet(src) && isliving(AM)) + if(ispet(src) && isliving(AM) && !ispet(AM)) return if(AM.pulledby) From daea0d35306f4de5ad82befe0168266d488c6043 Mon Sep 17 00:00:00 2001 From: Kyep Date: Sat, 30 Dec 2017 21:10:14 -0800 Subject: [PATCH 4/8] Tiger requests --- code/modules/mob/living/living.dm | 3 --- .../mob/living/simple_animal/friendly/pet.dm | 13 ++++++++++++- code/modules/mob/pulling.dm | 3 --- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 198bba5ac0a..8c81980eb8e 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -57,9 +57,6 @@ if(moving_diagonally) //no mob swap during diagonal moves. return 1 - if(ispet(src)) - return 1 - if(!M.buckled && !M.has_buckled_mobs()) var/mob_swap //the puller can always swap with it's victim if on grab intent diff --git a/code/modules/mob/living/simple_animal/friendly/pet.dm b/code/modules/mob/living/simple_animal/friendly/pet.dm index 7202c8a4054..cb104be6f92 100644 --- a/code/modules/mob/living/simple_animal/friendly/pet.dm +++ b/code/modules/mob/living/simple_animal/friendly/pet.dm @@ -28,4 +28,15 @@ overlays.Cut() if(collar) overlays += "[icon_state]collar" - overlays += "[icon_state]tag" \ No newline at end of file + overlays += "[icon_state]tag" + +/mob/living/simple_animal/pet/start_pulling(atom/movable/AM) + if(isliving(AM) && !ispet(AM)) + return + ..() + +/mob/living/simple_animal/pet/MobBump(mob/M) + if(ispet(M)) + return ..() + spreadFire(M) + return 1 \ No newline at end of file diff --git a/code/modules/mob/pulling.dm b/code/modules/mob/pulling.dm index c89c5b9d144..5a532ee1a42 100644 --- a/code/modules/mob/pulling.dm +++ b/code/modules/mob/pulling.dm @@ -15,9 +15,6 @@ return stop_pulling() - if(ispet(src) && isliving(AM) && !ispet(AM)) - return - if(AM.pulledby) visible_message("[src] has pulled [AM] from [AM.pulledby]'s grip.") AM.pulledby.stop_pulling() //an object can't be pulled by two mobs at once. From 776eb98714188ecb0924471de920eccc51906d86 Mon Sep 17 00:00:00 2001 From: Kyep Date: Sun, 31 Dec 2017 11:21:52 -0800 Subject: [PATCH 5/8] Tiger request #2 --- code/modules/mob/mob.dm | 2 +- code/modules/mob/transform_procs.dm | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 0e904b90290..aa4fb41ca08 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1055,7 +1055,7 @@ var/list/slot_equipment_priority = list( \ var/list/creatures = list("Mouse") for(var/mob/living/L in living_mob_list) if(safe_respawn(L.type) && L.stat!=2) - if(!L.key && is_station_level(L.z)) + if(!L.key) creatures += L var/picked = input("Please select an NPC to respawn as", "Respawn as NPC") as null|anything in creatures switch(picked) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 072300a85f8..58e062cbae8 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -274,6 +274,8 @@ if(!MP) return 0 + if(ispath(MP, /mob/living/simple_animal/pet/cat/Syndi)) + return 0 if(ispath(MP, /mob/living/simple_animal/pet/cat)) return 1 if(ispath(MP, /mob/living/simple_animal/pet/corgi)) @@ -288,6 +290,8 @@ return 1 if(ispath(MP, /mob/living/simple_animal/pony)) return 1 + if(ispath(MP, /mob/living/simple_animal/pet/fox/Syndifox)) + return 0 if(ispath(MP, /mob/living/simple_animal/pet/fox)) return 1 if(ispath(MP, /mob/living/simple_animal/chick)) From 6b7278c40f75de73699d3c68cf14441ae3eefa4a Mon Sep 17 00:00:00 2001 From: Kyep Date: Sun, 7 Jan 2018 01:20:04 -0800 Subject: [PATCH 6/8] allows syndicat/syndifox during nukeop rounds --- code/modules/mob/transform_procs.dm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 58e062cbae8..aa1607db9af 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -274,8 +274,9 @@ if(!MP) return 0 - if(ispath(MP, /mob/living/simple_animal/pet/cat/Syndi)) - return 0 + if(!GAMEMODE_IS_NUCLEAR) + if(ispath(MP, /mob/living/simple_animal/pet/cat/Syndi)) + return 0 if(ispath(MP, /mob/living/simple_animal/pet/cat)) return 1 if(ispath(MP, /mob/living/simple_animal/pet/corgi)) @@ -290,8 +291,9 @@ return 1 if(ispath(MP, /mob/living/simple_animal/pony)) return 1 - if(ispath(MP, /mob/living/simple_animal/pet/fox/Syndifox)) - return 0 + if(!GAMEMODE_IS_NUCLEAR) + if(ispath(MP, /mob/living/simple_animal/pet/fox/Syndifox)) + return 0 if(ispath(MP, /mob/living/simple_animal/pet/fox)) return 1 if(ispath(MP, /mob/living/simple_animal/chick)) From 2c02c7bbc0bae07684c14e6fcba11de016ab6aba Mon Sep 17 00:00:00 2001 From: Kyep Date: Sun, 1 Apr 2018 21:29:28 -0700 Subject: [PATCH 7/8] Removes pulling changes --- code/modules/mob/living/simple_animal/friendly/pet.dm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/friendly/pet.dm b/code/modules/mob/living/simple_animal/friendly/pet.dm index cb104be6f92..f567589507d 100644 --- a/code/modules/mob/living/simple_animal/friendly/pet.dm +++ b/code/modules/mob/living/simple_animal/friendly/pet.dm @@ -30,10 +30,6 @@ overlays += "[icon_state]collar" overlays += "[icon_state]tag" -/mob/living/simple_animal/pet/start_pulling(atom/movable/AM) - if(isliving(AM) && !ispet(AM)) - return - ..() /mob/living/simple_animal/pet/MobBump(mob/M) if(ispet(M)) From 39e06126839af7696bba9b597e8e1e77ff28652d Mon Sep 17 00:00:00 2001 From: Kyep Date: Sun, 1 Apr 2018 21:43:24 -0700 Subject: [PATCH 8/8] deletes pushing changes --- code/modules/mob/living/simple_animal/friendly/pet.dm | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/code/modules/mob/living/simple_animal/friendly/pet.dm b/code/modules/mob/living/simple_animal/friendly/pet.dm index f567589507d..7202c8a4054 100644 --- a/code/modules/mob/living/simple_animal/friendly/pet.dm +++ b/code/modules/mob/living/simple_animal/friendly/pet.dm @@ -28,11 +28,4 @@ overlays.Cut() if(collar) overlays += "[icon_state]collar" - overlays += "[icon_state]tag" - - -/mob/living/simple_animal/pet/MobBump(mob/M) - if(ispet(M)) - return ..() - spreadFire(M) - return 1 \ No newline at end of file + overlays += "[icon_state]tag" \ No newline at end of file