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,7 +442,9 @@ 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.
|
|
||||||
|
// 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;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -18,9 +18,6 @@
|
|||||||
reagents:
|
reagents:
|
||||||
- ReagentId: Nutriment
|
- ReagentId: Nutriment
|
||||||
Quantity: 20
|
Quantity: 20
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
# Noodles
|
# Noodles
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
@@ -498,9 +497,6 @@
|
|||||||
Quantity: 10
|
Quantity: 10
|
||||||
- ReagentId: Theobromine
|
- ReagentId: Theobromine
|
||||||
Quantity: 3
|
Quantity: 3
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- VoxFood
|
|
||||||
|
|
||||||
# Trash
|
# Trash
|
||||||
|
|
||||||
|
|||||||
@@ -42,7 +42,6 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Soup
|
- Soup
|
||||||
- VoxFood
|
|
||||||
- type: Destructible
|
- type: Destructible
|
||||||
thresholds:
|
thresholds:
|
||||||
- trigger:
|
- trigger:
|
||||||
|
|||||||
@@ -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