Not exclusive whitelist diet. Vox regain access to old food. (#37497)
* Creates a secondary digestible whitelist that is not exclusive. Additionally reworks the Vox stomach. * Update FoodSystem.cs Remnants of an old attempt. Cleaning it. * Update vox.yml Remnants of an old attempt. Cleaning up. * Whitelist no longer, now the diet exclusion var is a bool. * Clean-up * Update Content.Server/Body/Components/StomachComponent.cs Typo fixing Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Update Content.Server/Body/Components/StomachComponent.cs Clarifications. Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Update Content.Server/Nutrition/EntitySystems/FoodSystem.cs Typo fixing Co-authored-by: Tayrtahn <tayrtahn@gmail.com> * Update Resources/Prototypes/Body/Organs/vox.yml Typo fixes Co-authored-by: Tayrtahn <tayrtahn@gmail.com> --------- Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
This commit is contained in:
@@ -47,6 +47,12 @@ namespace Content.Server.Body.Components
|
|||||||
[DataField]
|
[DataField]
|
||||||
public EntityWhitelist? SpecialDigestible = null;
|
public EntityWhitelist? SpecialDigestible = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Controls whitelist behavior. If true, this stomach can digest <i>only</i> food that passes the whitelist. If false, it can digest normal food <i>and</i> any food that passes the whitelist.
|
||||||
|
/// </summary>
|
||||||
|
[DataField]
|
||||||
|
public bool IsSpecialDigestibleExclusive = true;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Used to track how long each reagent has been in the stomach
|
/// Used to track how long each reagent has been in the stomach
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -442,8 +442,10 @@ public sealed class FoodSystem : EntitySystem
|
|||||||
// Check if the food is in the whitelist
|
// Check if the food is in the whitelist
|
||||||
if (_whitelistSystem.IsWhitelistPass(ent.Comp1.SpecialDigestible, food))
|
if (_whitelistSystem.IsWhitelistPass(ent.Comp1.SpecialDigestible, food))
|
||||||
return true;
|
return true;
|
||||||
// They can only eat whitelist food and the food isn't in the whitelist. It's not edible.
|
|
||||||
return false;
|
// If their diet is whitelist exclusive, then they cannot eat anything but what follows their whitelisted tags. Else, they can eat their tags AND human food.
|
||||||
|
if (ent.Comp1.IsSpecialDigestibleExclusive)
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (component.RequiresSpecialDigestion)
|
if (component.RequiresSpecialDigestion)
|
||||||
|
|||||||
@@ -27,14 +27,7 @@
|
|||||||
specialDigestible:
|
specialDigestible:
|
||||||
tags:
|
tags:
|
||||||
- Trash
|
- Trash
|
||||||
- Fruit
|
isSpecialDigestibleExclusive: false
|
||||||
- ReptilianFood
|
|
||||||
- Meat
|
|
||||||
- Pill
|
|
||||||
- Crayon
|
|
||||||
- Paper
|
|
||||||
- VoxFood
|
|
||||||
- Vegetable
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: OrganHumanLiver
|
parent: OrganHumanLiver
|
||||||
|
|||||||
@@ -20,9 +20,6 @@
|
|||||||
reagents:
|
reagents:
|
||||||
- ReagentId: Nutriment
|
- ReagentId: Nutriment
|
||||||
Quantity: 5
|
Quantity: 5
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: FoodBagel
|
id: FoodBagel
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Bread
|
- Bread
|
||||||
- VoxFood
|
|
||||||
- type: SolutionContainerManager
|
- type: SolutionContainerManager
|
||||||
solutions:
|
solutions:
|
||||||
food:
|
food:
|
||||||
|
|||||||
@@ -26,7 +26,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Cake
|
- Cake
|
||||||
- VoxFood
|
|
||||||
- type: SecretStash
|
- type: SecretStash
|
||||||
maxItemSize: "Normal"
|
maxItemSize: "Normal"
|
||||||
secretStashName: secret-stash-cake
|
secretStashName: secret-stash-cake
|
||||||
|
|||||||
@@ -10,7 +10,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Donut
|
- Donut
|
||||||
- VoxFood
|
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Consumable/Food/Baked/donut.rsi
|
sprite: Objects/Consumable/Food/Baked/donut.rsi
|
||||||
- type: SolutionContainerManager
|
- type: SolutionContainerManager
|
||||||
|
|||||||
@@ -18,9 +18,6 @@
|
|||||||
Quantity: 5
|
Quantity: 5
|
||||||
- type: Item
|
- type: Item
|
||||||
size: Tiny
|
size: Tiny
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
# Muffins
|
# Muffins
|
||||||
|
|
||||||
|
|||||||
@@ -30,7 +30,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Pie
|
- Pie
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: FoodInjectableBase # Not sliceable
|
parent: FoodInjectableBase # Not sliceable
|
||||||
|
|||||||
@@ -22,9 +22,6 @@
|
|||||||
reagents:
|
reagents:
|
||||||
- ReagentId: Nutriment
|
- ReagentId: Nutriment
|
||||||
Quantity: 20
|
Quantity: 20
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
# Meals
|
# Meals
|
||||||
|
|
||||||
@@ -353,7 +350,7 @@
|
|||||||
description: BBQ ribs, slathered in a healthy coating of BBQ sauce. The least vegan thing to ever exist.
|
description: BBQ ribs, slathered in a healthy coating of BBQ sauce. The least vegan thing to ever exist.
|
||||||
components:
|
components:
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodKebabSkewer
|
- FoodKebabSkewer
|
||||||
- type: FlavorProfile
|
- type: FlavorProfile
|
||||||
flavors:
|
flavors:
|
||||||
@@ -615,7 +612,7 @@
|
|||||||
description: Buttery.
|
description: Buttery.
|
||||||
components:
|
components:
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPlate
|
- FoodPlate
|
||||||
- type: FlavorProfile
|
- type: FlavorProfile
|
||||||
flavors:
|
flavors:
|
||||||
|
|||||||
@@ -18,10 +18,7 @@
|
|||||||
reagents:
|
reagents:
|
||||||
- ReagentId: Nutriment
|
- ReagentId: Nutriment
|
||||||
Quantity: 20
|
Quantity: 20
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
# Noodles
|
# Noodles
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
|
|||||||
@@ -10,7 +10,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- FoodSnack
|
- FoodSnack
|
||||||
- VoxFood
|
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Objects/Consumable/Food/snacks.rsi
|
sprite: Objects/Consumable/Food/snacks.rsi
|
||||||
- type: SolutionContainerManager
|
- type: SolutionContainerManager
|
||||||
@@ -42,7 +41,7 @@
|
|||||||
state: boritos
|
state: boritos
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketBoritosTrash
|
- FoodPacketBoritosTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -58,7 +57,7 @@
|
|||||||
state: cnds
|
state: cnds
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketCnDsTrash
|
- FoodPacketCnDsTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -75,7 +74,7 @@
|
|||||||
state: cheesiehonkers
|
state: cheesiehonkers
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketCheesieTrash
|
- FoodPacketCheesieTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -93,7 +92,7 @@
|
|||||||
state: chips
|
state: chips
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketChipsTrash
|
- FoodPacketChipsTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -192,7 +191,7 @@
|
|||||||
state: pistachio
|
state: pistachio
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketPistachioTrash
|
- FoodPacketPistachioTrash
|
||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
@@ -215,7 +214,7 @@
|
|||||||
- type: Item
|
- type: Item
|
||||||
heldPrefix: popcorn
|
heldPrefix: popcorn
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketPopcornTrash
|
- FoodPacketPopcornTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -231,7 +230,7 @@
|
|||||||
state: raisins
|
state: raisins
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketRaisinsTrash
|
- FoodPacketRaisinsTrash
|
||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
@@ -250,7 +249,7 @@
|
|||||||
state: semki
|
state: semki
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketSemkiTrash
|
- FoodPacketSemkiTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -266,7 +265,7 @@
|
|||||||
state: susjerky
|
state: susjerky
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketSusTrash
|
- FoodPacketSusTrash
|
||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
@@ -285,7 +284,7 @@
|
|||||||
state: syndicakes
|
state: syndicakes
|
||||||
- type: Item
|
- type: Item
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketSyndiTrash
|
- FoodPacketSyndiTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -310,7 +309,7 @@
|
|||||||
- type: Sprite
|
- type: Sprite
|
||||||
state: ramen
|
state: ramen
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketCupRamenTrash
|
- FoodPacketCupRamenTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -353,7 +352,7 @@
|
|||||||
- ReagentId: Soysauce
|
- ReagentId: Soysauce
|
||||||
Quantity: 2
|
Quantity: 2
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketChowMeinTrash
|
- FoodPacketChowMeinTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -382,7 +381,7 @@
|
|||||||
- ReagentId: Soysauce
|
- ReagentId: Soysauce
|
||||||
Quantity: 2
|
Quantity: 2
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodPacketDanDanTrash
|
- FoodPacketDanDanTrash
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -408,7 +407,7 @@
|
|||||||
heldPrefix: packet
|
heldPrefix: packet
|
||||||
size: Tiny
|
size: Tiny
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodCookieFortune
|
- FoodCookieFortune
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
@@ -498,9 +497,6 @@
|
|||||||
Quantity: 10
|
Quantity: 10
|
||||||
- ReagentId: Theobromine
|
- ReagentId: Theobromine
|
||||||
Quantity: 3
|
Quantity: 3
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
# Trash
|
# Trash
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
- type: Item
|
- type: Item
|
||||||
storedRotation: -90
|
storedRotation: -90
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodBowlBig
|
- FoodBowlBig
|
||||||
utensil: Spoon
|
utensil: Spoon
|
||||||
- type: SolutionContainerManager
|
- type: SolutionContainerManager
|
||||||
@@ -42,7 +42,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Soup
|
- Soup
|
||||||
- VoxFood
|
|
||||||
- type: Destructible
|
- type: Destructible
|
||||||
thresholds:
|
thresholds:
|
||||||
- trigger:
|
- trigger:
|
||||||
@@ -972,7 +971,7 @@
|
|||||||
flavors:
|
flavors:
|
||||||
- miso
|
- miso
|
||||||
- type: Food
|
- type: Food
|
||||||
trash:
|
trash:
|
||||||
- FoodBowlFancy
|
- FoodBowlFancy
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
layers:
|
layers:
|
||||||
|
|||||||
@@ -1364,9 +1364,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
id: VoiceTrigger
|
id: VoiceTrigger
|
||||||
|
|
||||||
- type: Tag # Eating fix tag
|
|
||||||
id: VoxFood
|
|
||||||
|
|
||||||
- type: Tag
|
- type: Tag
|
||||||
id: Wall
|
id: Wall
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user