Moproaches (#38700)

* MOPROACHES

* rerun test - random test fail of doom

* added to random pest event, with same prob as cancer mouse

* rerun test - random test fail of doom 2 electric boogaloo

* changed moproach obtain methods

* no crafting of moproaches allowed :(

* Reverted content of file.

* requested changes

* requested changes

* requested changes

* Increase moproach health by 5 - requested by Emo on discord

* spaaaaaaaaaaaaaaaaaaaaaaaaace

* microwave recipe added

* no surgery this week

* spaaaaaaaaaaaaaaaaaaace 2 more space for your space

* space

* new mopshoes sprite

* in-hands

* inhands v2

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
This commit is contained in:
Velken
2025-07-14 23:47:47 -03:00
committed by GitHub
parent 5dbef8a924
commit b18a7ccdd3
24 changed files with 264 additions and 0 deletions

View File

@@ -35,6 +35,9 @@ ghost-role-information-mouse-description = A hungry and mischievous mouse.
ghost-role-information-mothroach-name = Mothroach
ghost-role-information-mothroach-description = A cute but mischievous mothroach.
ghost-role-information-moproach-name = Moproach
ghost-role-information-moproach-description = A cute mothroach with more cute moplike shoes on its feet.
ghost-role-information-snail-name = Snail
ghost-role-information-snail-description = A little snail who doesn't mind a bit of space. Just stay on grid!

View File

@@ -71,6 +71,7 @@ construction-graph-tag-corgi-hide = corgi hide
construction-graph-tag-apron = an apron
construction-graph-tag-utility-belt = a utility belt
soil-construction-graph-any-mushroom = any mushroom
construction-graph-tag-mop-basic = mop
# toys
construction-graph-tag-rubber-ducky = a rubber ducky

View File

@@ -86,6 +86,21 @@
prototypes:
- MobCockroach
- type: entity
parent: MarkerBase
id: SpawnMobMoproach
name: Moproach Spawner
components:
- type: Sprite
layers:
- state: green
- sprite: Mobs/Animals/mothroach/moproach.rsi
state: icon
- state: ai
- type: ConditionalSpawner
prototypes:
- MobMoproach
- type: entity
parent: MarkerBase
id: SpawnMobCow

View File

@@ -0,0 +1,55 @@
- type: entity
name: moproach
parent: MobMothroach
id: MobMoproach
description: This little mothroach has mopshoes on its feet! How adorable!
components:
- type: GhostRole
name: ghost-role-information-moproach-name
description: ghost-role-information-moproach-description
- type: Sprite
sprite: Mobs/Animals/mothroach/moproach.rsi
- type: Clothing
quickEquip: false
sprite: Mobs/Animals/mothroach/moproach.rsi
equippedPrefix: 0
slots:
- HEAD
- type: MobThresholds
thresholds:
0: Alive
45: Critical
65: Dead
- type: MovementSpeedModifier
baseSprintSpeed : 5 # extra speed for that moppin'!
- type: HTN
rootTask:
task: MoproachCompound
- type: Absorbent
pickupAmount: 2 # small feet
- type: UseDelay
delay: 0.5 # quick feet
- type: SolutionRegeneration
solution: absorbed
generated:
reagents:
- ReagentId: Water
Quantity: 10
- type: SolutionPurge
solution: absorbed
preserve:
- Water
quantity: 10
- type: SolutionContainerManager
solutions:
absorbed:
maxVol: 50
food:
reagents:
- ReagentId: Slime
Quantity: 5
- type: DrainableSolution
solution: drainBuffer
- type: InteractionPopup
interactSuccessString: petting-success-cleanbot
interactFailureString: petting-failure-cleanbot

View File

@@ -0,0 +1,15 @@
### For items thare are used as intermediate steps on a crafting recipe but have no use outside of it.
- type: entity
parent: BaseItem
id: MoproachShoes
name: moproach shoes
description: Three pairs of tiny mopshoes, perfectly fit for a moproach.
components:
- type: Sprite
sprite: Objects/Misc/moproach_shoes.rsi
state: mopshoes
- type: Construction
graph: MoproachShoes
node: shoes
- type: Item
size: Tiny

View File

@@ -302,6 +302,7 @@
SpacemenFigureSpawner: 28
SpawnMobCockroach: 5
MaintenanceToolSpawner: 5
SpawnMobMoproach: 2
- type: entity
parent: BaseItem

View File

@@ -116,6 +116,15 @@
possibleSpawns:
- MobMothroach
- type: entity
parent: RehydratableAnimalCube
id: MoproachCube
name: moproach cube
components:
- type: Rehydratable
possibleSpawns:
- MobMoproach
- type: entity
parent: RehydratableAnimalCube
id: MouseCube

View File

@@ -82,6 +82,8 @@
prob: 0.03
- id: MobMothroach
prob: 0.008
- id: MobMoproach
prob: 0.004
- type: entity
id: SnailMigrationLowPop

View File

@@ -31,6 +31,19 @@
- tasks:
- !type:HTNCompoundTask
task: IdleCompound
- type: htnCompound
id: MoproachCompound
branches:
- tasks:
- !type:HTNCompoundTask
task: FoodCompound
- tasks:
- !type:HTNCompoundTask
task: BufferNearbyPuddlesCompound
- tasks:
- !type:HTNCompoundTask
task: IdleCompound
- type: htnCompound
id: GlockroachCompound

View File

@@ -2422,3 +2422,16 @@
FoodMeat: 1
FoodTomato: 1
FoodSoybeans: 2 # replace these with green beans once those become a thing
- type: microwaveMealRecipe
id: RecipeMoproach # TODO: Move this to be an actual surgery instead, once surgery gets implemented.
name: moproach recipe
result: MobMoproach
time: 30
group: Other
reagents:
SpaceCleaner: 15
solids:
MobMothroach: 1
OrganAnimalHeart: 1
MoproachShoes: 1

View File

@@ -36,3 +36,50 @@
doAfter: 5
- node: suit
entity: ClothingOuterSuitIan
- type: constructionGraph
id: MoproachShoes
start: start
graph:
- node: start
edges:
- to: shoes
steps:
- tag: MopBasic
name: construction-graph-tag-mop-basic
icon:
sprite: Objects/Specific/Janitorial/mop.rsi
state: mop
doAfter: 5
- tag: MopBasic
name: construction-graph-tag-mop-basic
icon:
sprite: Objects/Specific/Janitorial/mop.rsi
state: mop
doAfter: 5
- tag: MopBasic
name: construction-graph-tag-mop-basic
icon:
sprite: Objects/Specific/Janitorial/mop.rsi
state: mop
doAfter: 5
- tag: MopBasic
name: construction-graph-tag-mop-basic
icon:
sprite: Objects/Specific/Janitorial/mop.rsi
state: mop
doAfter: 5
- tag: MopBasic
name: construction-graph-tag-mop-basic
icon:
sprite: Objects/Specific/Janitorial/mop.rsi
state: mop
doAfter: 5
- tag: MopBasic
name: construction-graph-tag-mop-basic
icon:
sprite: Objects/Specific/Janitorial/mop.rsi
state: mop
doAfter: 5
- node: shoes
entity: MoproachShoes

View File

@@ -13,3 +13,11 @@
targetNode: suit
category: construction-category-misc
objectType: Item
- type: construction
id: MoproachShoes
graph: MoproachShoes
startNode: start
targetNode: shoes
category: construction-category-misc
objectType: Item

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 581 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 956 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 939 B

View File

@@ -0,0 +1,60 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from fulpstation at https://github.com/fulpstation/fulpstation/commit/edb232b692ec9f356ec554ea1971da552b9bc447. 'mothroach-moving' by MilenVolf, all edited by lzk228",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "icon"
},
{
"name": "mothroach",
"directions": 4
},
{
"name": "mothroach-moving",
"directions": 4,
"delays": [
[
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2
]
]
},
{
"name": "mothroach_dead",
"directions": 4
},
{
"name": "inhand-left",
"directions": 4
},
{
"name": "inhand-right",
"directions": 4
},
{
"name": "0-equipped-HELMET",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 555 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 555 B

View File

@@ -0,0 +1,22 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Sprites by Velken. Inhand versions modified from mop sprites from Easypoll. Mopshoes based from Galoshes from tgstation at commit https://github.com/tgstation/tgstation/commit/7e4e9d432d88981fb9bb463970c5b98ce85c0abe",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "mopshoes"
},
{
"name": "inhand-left",
"directions": 4
},
{
"name": "inhand-right",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 502 B