From 8561b9b7c17cc3bedc0138f6b8960fa36a2566b6 Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 03:12:54 +0800 Subject: [PATCH 01/11] Update livestock.dm --- code/modules/cargo/packs/livestock.dm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/code/modules/cargo/packs/livestock.dm b/code/modules/cargo/packs/livestock.dm index 99a6dd00..22dfb0a6 100644 --- a/code/modules/cargo/packs/livestock.dm +++ b/code/modules/cargo/packs/livestock.dm @@ -172,3 +172,10 @@ /mob/living/simple_animal/hostile/retaliate/bat/secbat, /mob/living/simple_animal/hostile/retaliate/bat/secbat) crate_name = "security bat crate" + +/datum/supply_pack/critter/slugcat + name = "Slugcat Crate" + desc = "It's a cat . . . Thing from another planet, maybe from another world.contain one slugcat." + cost = 5000 + contains = list(/mob/living/simple_animal/pet/slugcat) + crate_name = "slugcat crate" From 2f9db095f8f8bd67770088f36690e9f062303aeb Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 03:15:05 +0800 Subject: [PATCH 02/11] Add files via upload --- icons/mob/animals_held_lh.dmi | Bin 10036 -> 10810 bytes icons/mob/animals_held_rh.dmi | Bin 10099 -> 10881 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/animals_held_lh.dmi b/icons/mob/animals_held_lh.dmi index 6c407c850bf37be8127f689001dfb64fb8a30237..14ba559f8b6ef28c8e654728f98a9c7914e7c5af 100644 GIT binary patch literal 10810 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 literal 10036 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 Tu2jI9Qb1NxNupfL#Q(nl{!vap literal 10099 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 ngunN+p8WS0v;HqO&mXUmH>@J73FE Date: Tue, 2 Apr 2024 03:15:18 +0800 Subject: [PATCH 04/11] Add files via upload --- GainStation13/code/mobs/slucat.dm | 104 ++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 GainStation13/code/mobs/slucat.dm diff --git a/GainStation13/code/mobs/slucat.dm b/GainStation13/code/mobs/slucat.dm new file mode 100644 index 00000000..66a3f0f3 --- /dev/null +++ b/GainStation13/code/mobs/slucat.dm @@ -0,0 +1,104 @@ +/mob/living/simple_animal/pet/slugcat + name = "slugcat" + desc = "It's a cat . . . Thing from another planet, maybe from another world. You think it's not dangerous, but you can't be sure. " + icon = 'GainStation13/icons/mobs/pets.dmi' + icon_state = "slugcat" + icon_living = "slugcat" + icon_dead = "slugcat_dead" + emote_see = list("stares at the ceiling.", "shivers.") + speak_chance = 1 + turns_per_move = 20 + can_be_held = TRUE + see_in_dark = 6 + ventcrawler = VENTCRAWLER_ALWAYS + pass_flags = PASSTABLE + mob_size = MOB_SIZE_SMALL + mob_biotypes = MOB_ORGANIC|MOB_BEAST + minbodytemp = 200 + maxbodytemp = 400 + butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab = 2) + unsuitable_atmos_damage = 0.1 + animal_species = /mob/living/simple_animal/pet/slugcat + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + gold_core_spawnable = FRIENDLY_SPAWN + attack_sound = 'sound/effects/attackblob.ogg' + do_footstep = TRUE + gold_core_spawnable = FRIENDLY_SPAWN + size_multiplier = 0.5 + obj_damage = 0 + melee_damage_lower = 0 + melee_damage_upper = 0 + var/held_icon = "slugcat" + do_footstep = TRUE + //lizard food + devourable = 1 + digestable = 1 + feeding = 1 + var/obj/item/twohanded/spear/weapon + +/mob/living/simple_animal/pet/slugcat/Initialize() + . = ..() + add_verb(src, /mob/living/proc/lay_down) + +/mob/living/simple_animal/pet/slugcat/ComponentInitialize() + . = ..() + AddElement(/datum/element/wuv, "purrs!", EMOTE_AUDIBLE, /datum/mood_event/pet_animal, "hisses!", EMOTE_AUDIBLE) + AddElement(/datum/element/mob_holder, held_icon) + +/mob/living/simple_animal/pet/slugcat/update_canmove() + ..() + if(client && stat != DEAD) + if (resting) + icon_state = "[icon_living]_rest" + else + icon_state = "[icon_living]" + regenerate_icons() + +/mob/living/simple_animal/pet/slugcat/UnarmedAttack(atom/A) + . = ..() + if(!isitem(A)) + return + + if(!weapon && istype(A, /obj/item/twohanded/spear)) + visible_message("[src] pick up the [A].", "You pick up the [A].") + weapon = A + weapon.forceMove(src) + melee_damage_lower = weapon.force + weapon.force_wielded + melee_damage_upper = weapon.force + weapon.force_wielded + armour_penetration = weapon.armour_penetration + melee_damage_type = weapon.damtype + attack_sound = weapon.hitsound + update_icons() + else if(!weapon && !istype(A, /obj/item/twohanded/spear ||)) + to_chat(src, "You do not know how to wield the [A]!") + +/mob/living/simple_animal/pet/slugcat/RangedAttack(atom/A, params) + . = ..() + if(!weapon) + return + visible_message("[src] throws the [weapon] at [A]!","You throw the [weapon] at [A]!") + melee_damage_lower = initial(melee_damage_lower) + melee_damage_upper = initial(melee_damage_upper) + armour_penetration = initial(armour_penetration) + melee_damage_type = initial(melee_damage_type) + attack_sound = initial(attack_sound) + weapon.forceMove(get_turf(src)) + weapon.throw_at(A, weapon.throw_range, weapon.throw_speed, src) + weapon = null + update_icons() + +/mob/living/simple_animal/pet/slugcat/update_icons() + . = ..() + if(stat == DEAD || resting) + return + icon_state = weapon ? initial(icon_state) + "_spear" : initial(icon_state) + +/mob/living/simple_animal/pet/slugcat/death(gibbed) + if(weapon) + weapon.forceMove(get_turf(src)) + weapon = null + update_icons() + . = ..() + From 3f386e9fae1fcb11a3986d489504fa1709d6967f Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 03:18:32 +0800 Subject: [PATCH 05/11] slugcat dmi --- GainStation13/icons/mob/pets.dmi | Bin 0 -> 1396 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 GainStation13/icons/mob/pets.dmi diff --git a/GainStation13/icons/mob/pets.dmi b/GainStation13/icons/mob/pets.dmi new file mode 100644 index 0000000000000000000000000000000000000000..987afe9dcad06263d6ba4cb82fdef7005ebe8266 GIT binary patch literal 1396 zcmV-)1&jKLP)Xw$4@bK`Vp`qpF+9tD=R=iK)}Gjz`($?w6wOiwy&?RI{?tq z00001bW%=J06^y0W&i*HgnCq1bVOxyV{&P5bZKvH004NLQ&wi$oG(9=7M2U+tC9|j) zq>YO+ttc@!6~s2gP#0fZkeXOTwCbYNVkDyt@heVAO-#Y1SXsf<&jsv30J^(GJ6}9~ z4gdfH_DMuRRA_Dce0sG9dv#ij1)<+1sV! z2+K?t0q8RjTqMXZkwk$LHV~f}Sm7X$ z0a~SHXc+?*MZpvB{6pjWsYi+fI0hgZZFIxF0m@K*dJl34?1EIT@guG!OQ5Z4%&V3q zAT?HD0u}1OF0k@p@p17WxoL#5q7hW=5CF@XKd5^LsLOx@h)>O;`NXDJ)eRA7YHk&! z(n^bKp1>N(flV-FAp5Mf{+w|cP!8z60ml$Xk@nzbwdDzHR~y=i{3?epSX2dmVN=|1 zL&+QzWTaCnH=!voIUQwzv!3!>QkG%bVK@a)PG_L+tWkzeTDnP5_YtP;7IiLjjds$( z$M?6fQ*Q~Rso%l|SBT+*4#~y%oj!GKgB3IYiNa1%gq*q!U4JyDLv%#Fbj=FGCn2sH zx75RF^O^*W(4y-ct<5KPaH=deVFH_?R8G{UX^PiJp1&wScDs&R z;ojbeiY{WKjj8g=7(CBHsuzXXC{No;}>lI<$}0f>l=S)qbDsRp2i5-k`{dT&V+fqt0Qz5fKp)|35^1AnF5A zABg%u)CYbOec%uvP@z8DTpu{F47@(@#G6O@z?9G7GJW9q#J=C_1IH7a;M2)w$K&zo zl-Vhkhr{Wt4?O)j86S_Qus(1+-Buqs{X`!)MSURZ1HZpM@bwaX;A_+eA|fIpA|fIp zBL2%@iW-19J-3ZauYdTqMR-%LkjTDUYP^5XpDJu%F&EB zxp=9)GAEzo%MoTXVXsO-iT3ePIG`10^rjsZf1MjL;Gh@lo!2t^EP@$aTJ Date: Tue, 2 Apr 2024 03:29:14 +0800 Subject: [PATCH 06/11] Delete GainStation13/code/mobs/slucat.dm --- GainStation13/code/mobs/slucat.dm | 104 ------------------------------ 1 file changed, 104 deletions(-) delete mode 100644 GainStation13/code/mobs/slucat.dm diff --git a/GainStation13/code/mobs/slucat.dm b/GainStation13/code/mobs/slucat.dm deleted file mode 100644 index 66a3f0f3..00000000 --- a/GainStation13/code/mobs/slucat.dm +++ /dev/null @@ -1,104 +0,0 @@ -/mob/living/simple_animal/pet/slugcat - name = "slugcat" - desc = "It's a cat . . . Thing from another planet, maybe from another world. You think it's not dangerous, but you can't be sure. " - icon = 'GainStation13/icons/mobs/pets.dmi' - icon_state = "slugcat" - icon_living = "slugcat" - icon_dead = "slugcat_dead" - emote_see = list("stares at the ceiling.", "shivers.") - speak_chance = 1 - turns_per_move = 20 - can_be_held = TRUE - see_in_dark = 6 - ventcrawler = VENTCRAWLER_ALWAYS - pass_flags = PASSTABLE - mob_size = MOB_SIZE_SMALL - mob_biotypes = MOB_ORGANIC|MOB_BEAST - minbodytemp = 200 - maxbodytemp = 400 - butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab = 2) - unsuitable_atmos_damage = 0.1 - animal_species = /mob/living/simple_animal/pet/slugcat - response_help = "pets" - response_disarm = "gently pushes aside" - response_harm = "kicks" - gold_core_spawnable = FRIENDLY_SPAWN - attack_sound = 'sound/effects/attackblob.ogg' - do_footstep = TRUE - gold_core_spawnable = FRIENDLY_SPAWN - size_multiplier = 0.5 - obj_damage = 0 - melee_damage_lower = 0 - melee_damage_upper = 0 - var/held_icon = "slugcat" - do_footstep = TRUE - //lizard food - devourable = 1 - digestable = 1 - feeding = 1 - var/obj/item/twohanded/spear/weapon - -/mob/living/simple_animal/pet/slugcat/Initialize() - . = ..() - add_verb(src, /mob/living/proc/lay_down) - -/mob/living/simple_animal/pet/slugcat/ComponentInitialize() - . = ..() - AddElement(/datum/element/wuv, "purrs!", EMOTE_AUDIBLE, /datum/mood_event/pet_animal, "hisses!", EMOTE_AUDIBLE) - AddElement(/datum/element/mob_holder, held_icon) - -/mob/living/simple_animal/pet/slugcat/update_canmove() - ..() - if(client && stat != DEAD) - if (resting) - icon_state = "[icon_living]_rest" - else - icon_state = "[icon_living]" - regenerate_icons() - -/mob/living/simple_animal/pet/slugcat/UnarmedAttack(atom/A) - . = ..() - if(!isitem(A)) - return - - if(!weapon && istype(A, /obj/item/twohanded/spear)) - visible_message("[src] pick up the [A].", "You pick up the [A].") - weapon = A - weapon.forceMove(src) - melee_damage_lower = weapon.force + weapon.force_wielded - melee_damage_upper = weapon.force + weapon.force_wielded - armour_penetration = weapon.armour_penetration - melee_damage_type = weapon.damtype - attack_sound = weapon.hitsound - update_icons() - else if(!weapon && !istype(A, /obj/item/twohanded/spear ||)) - to_chat(src, "You do not know how to wield the [A]!") - -/mob/living/simple_animal/pet/slugcat/RangedAttack(atom/A, params) - . = ..() - if(!weapon) - return - visible_message("[src] throws the [weapon] at [A]!","You throw the [weapon] at [A]!") - melee_damage_lower = initial(melee_damage_lower) - melee_damage_upper = initial(melee_damage_upper) - armour_penetration = initial(armour_penetration) - melee_damage_type = initial(melee_damage_type) - attack_sound = initial(attack_sound) - weapon.forceMove(get_turf(src)) - weapon.throw_at(A, weapon.throw_range, weapon.throw_speed, src) - weapon = null - update_icons() - -/mob/living/simple_animal/pet/slugcat/update_icons() - . = ..() - if(stat == DEAD || resting) - return - icon_state = weapon ? initial(icon_state) + "_spear" : initial(icon_state) - -/mob/living/simple_animal/pet/slugcat/death(gibbed) - if(weapon) - weapon.forceMove(get_turf(src)) - weapon = null - update_icons() - . = ..() - From cce0ed4b1b9368b156c950f599942e10ac0a0b12 Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 03:29:53 +0800 Subject: [PATCH 07/11] Add files via upload --- GainStation13/code/mobs/slugcat.dm | 104 +++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 GainStation13/code/mobs/slugcat.dm diff --git a/GainStation13/code/mobs/slugcat.dm b/GainStation13/code/mobs/slugcat.dm new file mode 100644 index 00000000..08176f90 --- /dev/null +++ b/GainStation13/code/mobs/slugcat.dm @@ -0,0 +1,104 @@ +/mob/living/simple_animal/pet/slugcat + name = "slugcat" + desc = "It's a cat . . . Thing from another planet, maybe from another world. You think it's not dangerous, but you can't be sure. " + icon = 'GainStation13/icons/mobs/pets.dmi' + icon_state = "slugcat" + icon_living = "slugcat" + icon_dead = "slugcat_dead" + emote_see = list("stares at the ceiling.", "shivers.") + speak_chance = 1 + turns_per_move = 20 + can_be_held = TRUE + see_in_dark = 6 + ventcrawler = VENTCRAWLER_ALWAYS + pass_flags = PASSTABLE + mob_size = MOB_SIZE_SMALL + mob_biotypes = MOB_ORGANIC|MOB_BEAST + minbodytemp = 200 + maxbodytemp = 400 + butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab = 2) + unsuitable_atmos_damage = 0.1 + animal_species = /mob/living/simple_animal/pet/slugcat + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "kicks" + gold_core_spawnable = FRIENDLY_SPAWN + attack_sound = 'sound/effects/attackblob.ogg' + do_footstep = TRUE + gold_core_spawnable = FRIENDLY_SPAWN + size_multiplier = 0.5 + obj_damage = 0 + melee_damage_lower = 0 + melee_damage_upper = 0 + var/held_icon = "slugcat" + do_footstep = TRUE + //lizard food + devourable = 1 + digestable = 1 + feeding = 1 + var/obj/item/twohanded/spear/weapon + +/mob/living/simple_animal/pet/slugcat/Initialize() + . = ..() + add_verb(src, /mob/living/proc/lay_down) + +/mob/living/simple_animal/pet/slugcat/ComponentInitialize() + . = ..() + AddElement(/datum/element/wuv, "purrs!", EMOTE_AUDIBLE, /datum/mood_event/pet_animal, "hisses!", EMOTE_AUDIBLE) + AddElement(/datum/element/mob_holder, held_icon) + +/mob/living/simple_animal/pet/slugcat/update_canmove() + ..() + if(client && stat != DEAD) + if (resting) + icon_state = "[icon_living]_rest" + else + icon_state = "[icon_living]" + regenerate_icons() + +/mob/living/simple_animal/pet/slugcat/UnarmedAttack(atom/A) + . = ..() + if(!isitem(A)) + return + + if(!weapon && istype(A, /obj/item/twohanded/spear)) + visible_message("[src] pick up the [A].", "You pick up the [A].") + weapon = A + weapon.forceMove(src) + melee_damage_lower = weapon.force + weapon.force_wielded + melee_damage_upper = weapon.force + weapon.force_wielded + armour_penetration = weapon.armour_penetration + melee_damage_type = weapon.damtype + attack_sound = weapon.hitsound + update_icons() + else if(!weapon && !istype(A, /obj/item/twohanded/spear)) + to_chat(src, "You do not know how to wield the [A]!") + +/mob/living/simple_animal/pet/slugcat/RangedAttack(atom/A, params) + . = ..() + if(!weapon) + return + visible_message("[src] throws the [weapon] at [A]!","You throw the [weapon] at [A]!") + melee_damage_lower = initial(melee_damage_lower) + melee_damage_upper = initial(melee_damage_upper) + armour_penetration = initial(armour_penetration) + melee_damage_type = initial(melee_damage_type) + attack_sound = initial(attack_sound) + weapon.forceMove(get_turf(src)) + weapon.throw_at(A, weapon.throw_range, weapon.throw_speed, src) + weapon = null + update_icons() + +/mob/living/simple_animal/pet/slugcat/update_icons() + . = ..() + if(stat == DEAD || resting) + return + icon_state = weapon ? initial(icon_state) + "_spear" : initial(icon_state) + +/mob/living/simple_animal/pet/slugcat/death(gibbed) + if(weapon) + weapon.forceMove(get_turf(src)) + weapon = null + update_icons() + . = ..() + From ec7ff3653cd4b8b463779682c22d2c335e4d43af Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 03:33:26 +0800 Subject: [PATCH 09/11] Update slugcat.dm --- GainStation13/code/mobs/slugcat.dm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/GainStation13/code/mobs/slugcat.dm b/GainStation13/code/mobs/slugcat.dm index 08176f90..0cfb680e 100644 --- a/GainStation13/code/mobs/slugcat.dm +++ b/GainStation13/code/mobs/slugcat.dm @@ -1,7 +1,7 @@ /mob/living/simple_animal/pet/slugcat name = "slugcat" desc = "It's a cat . . . Thing from another planet, maybe from another world. You think it's not dangerous, but you can't be sure. " - icon = 'GainStation13/icons/mobs/pets.dmi' + icon = 'GainStation13/icons/mob/pets.dmi' icon_state = "slugcat" icon_living = "slugcat" icon_dead = "slugcat_dead" @@ -17,7 +17,7 @@ minbodytemp = 200 maxbodytemp = 400 butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab = 2) - unsuitable_atmos_damage = 0.1 + unsuitable_atmos_damage = 0.5 animal_species = /mob/living/simple_animal/pet/slugcat response_help = "pets" response_disarm = "gently pushes aside" @@ -101,4 +101,3 @@ weapon = null update_icons() . = ..() - From b803dfe248b90b6dfeb4738ab81236c98d575b4a Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 03:36:22 +0800 Subject: [PATCH 10/11] Update tgstation.dme --- tgstation.dme | 1 + 1 file changed, 1 insertion(+) diff --git a/tgstation.dme b/tgstation.dme index 8888857a..efd12171 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3092,6 +3092,7 @@ #include "GainStation13\code\mechanics\den abductors\purchaseble_goodies.dm" #include "GainStation13\code\mobs\cakegolem.dm" #include "GainStation13\code\mobs\chocoslime.dm" +#include "GainStation13\code\mobs\slugcat.dm" #include "GainStation13\code\mobs\races\caloritegolem.dm" #include "GainStation13\code\modules\client\preferences\preferences.dm" #include "GainStation13\code\modules\clothing\under\jobs\modcivilian.dm" From 5c918a409e6794d4961af2f5b23dfade51d895d6 Mon Sep 17 00:00:00 2001 From: foxep <165693904+foxep@users.noreply.github.com> Date: Tue, 2 Apr 2024 05:15:27 +0800 Subject: [PATCH 11/11] Allow ghost to become slugcat --- GainStation13/code/mobs/slugcat.dm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/GainStation13/code/mobs/slugcat.dm b/GainStation13/code/mobs/slugcat.dm index 0cfb680e..8f5f0cb7 100644 --- a/GainStation13/code/mobs/slugcat.dm +++ b/GainStation13/code/mobs/slugcat.dm @@ -101,3 +101,19 @@ weapon = null update_icons() . = ..() + +/mob/living/simple_animal/pet/slugcat/attack_ghost(mob/user) + if(key) + return + if(CONFIG_GET(flag/use_age_restriction_for_jobs)) + if(!isnum(user.client.player_age)) + return + if(!SSticker.mode) + to_chat(user, "Can't become a slugcat before the game has started.") + return + var/be_scug = alert("Become a slugcat? (Warning, You can no longer be cloned!)",,"Yes","No") + if(be_scug == "No" || QDELETED(src) || !isobserver(user)) + return + sentience_act() + key = user.key +