Skip to content

Commit

Permalink
Merge branch 'Tilkku's-Toys' of https://github.com/SleepyScarecrow/fl…
Browse files Browse the repository at this point in the history
…oofstation1 into Tilkku's-Toys
  • Loading branch information
SleepyScarecrow committed Aug 19, 2024
2 parents e8ba7ed + 83162d5 commit 8dec475
Show file tree
Hide file tree
Showing 296 changed files with 3,522 additions and 82 deletions.
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Floofstation CODEOWNERS

* @Fansana @FoxxoTrystan
* @Memeji @FoxxoTrystan
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ namespace Content.Server.FloofStation.Traits;
[RegisterComponent, Access(typeof(LewdTraitSystem))]
public sealed partial class CumProducerComponent : Component
{
[DataField("solutionname"), ViewVariables(VVAccess.ReadWrite)]
public string SolutionName;
[DataField("solutionname")]
public string SolutionName = "penis";

[DataField, ViewVariables(VVAccess.ReadWrite)]
[DataField]
public ProtoId<ReagentPrototype> ReagentId = "Cum";

[DataField]
Expand All @@ -24,14 +24,14 @@ public sealed partial class CumProducerComponent : Component
[DataField]
public Entity<SolutionComponent>? Solution = null;

[DataField, ViewVariables(VVAccess.ReadOnly)]
public FixedPoint2 QuantityPerUpdate = 25;
[DataField]
public FixedPoint2 QuantityPerUpdate = 5;

[DataField]
public float HungerUsage = 10f;

[DataField]
public TimeSpan GrowthDelay = TimeSpan.FromMinutes(1);
public TimeSpan GrowthDelay = TimeSpan.FromSeconds(10);

[DataField(customTypeSerializer: typeof(TimeOffsetSerializer))]
public TimeSpan NextGrowth = TimeSpan.FromSeconds(0);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,26 +12,26 @@ namespace Content.Server.FloofStation.Traits;
[RegisterComponent, Access(typeof(LewdTraitSystem))]
public sealed partial class MilkProducerComponent : Component
{
[DataField("solutionname"), ViewVariables(VVAccess.ReadWrite)]
public string SolutionName;
[DataField("solutionname")]
public string SolutionName = "breasts";

[DataField, ViewVariables(VVAccess.ReadWrite)]
[DataField]
public ProtoId<ReagentPrototype> ReagentId = "Milk";

[DataField]
public FixedPoint2 MaxVolume = FixedPoint2.New(25);
public FixedPoint2 MaxVolume = FixedPoint2.New(50);

[DataField]
public Entity<SolutionComponent>? Solution = null;

[DataField, ViewVariables(VVAccess.ReadOnly)]
public FixedPoint2 QuantityPerUpdate = 25;
[DataField]
public FixedPoint2 QuantityPerUpdate = 5;

[DataField]
public float HungerUsage = 10f;

[DataField]
public TimeSpan GrowthDelay = TimeSpan.FromMinutes(1);
public TimeSpan GrowthDelay = TimeSpan.FromSeconds(10);

[DataField(customTypeSerializer: typeof(TimeOffsetSerializer))]
public TimeSpan NextGrowth = TimeSpan.FromSeconds(0);
Expand Down
94 changes: 53 additions & 41 deletions Content.Server/FloofStation/Traits/LewdTraitSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -268,61 +268,73 @@ private void AttemptMilk(Entity<MilkProducerComponent> lewd, EntityUid userUid,
public override void Update(float frameTime)
{
base.Update(frameTime);

var queryCum = EntityQueryEnumerator<CumProducerComponent>(); //SquirtProducerComponent -unused ,
var queryMilk = EntityQueryEnumerator<MilkProducerComponent>();
var now = _timing.CurTime;
var query = AllEntityQuery<CumProducerComponent, MilkProducerComponent>(); //SquirtProducerComponent -unused

while (query.MoveNext(out var uid, out var containerCum, out var containerMilk)) // out var containerSquirt -unused
while (queryCum.MoveNext(out var uid, out var containerCum))
{
if (now < containerCum.NextGrowth)
continue;

containerCum.NextGrowth = now + containerCum.GrowthDelay;

if (_mobState.IsDead(uid))
continue;

if (!(now < containerCum.NextGrowth))
if (EntityManager.TryGetComponent(uid, out HungerComponent? hunger))
{
containerCum.NextGrowth = now + containerCum.GrowthDelay;

// Actually there is food digestion so no problem with instant reagent generation "OnFeed"
if (EntityManager.TryGetComponent(uid, out HungerComponent? hunger))
{
// Is there enough nutrition to produce reagent?
if (!(_hunger.GetHungerThreshold(hunger) < HungerThreshold.Okay))
_hunger.ModifyHunger(uid, -containerCum.HungerUsage, hunger);
}

if (_solutionContainer.ResolveSolution(uid, containerCum.SolutionName, ref containerCum.Solution))
_solutionContainer.TryAddReagent(containerCum.Solution.Value, containerCum.ReagentId, containerCum.QuantityPerUpdate, out _);
if (_hunger.GetHungerThreshold(hunger) < HungerThreshold.Okay)
continue;

//_hunger.ModifyHunger(uid, -containerCum.HungerUsage, hunger);
}

if (!(now < containerMilk.NextGrowth))
{
containerMilk.NextGrowth = now + containerMilk.GrowthDelay;
if (!_solutionContainer.ResolveSolution(uid, containerCum.SolutionName, ref containerCum.Solution))
continue;

_solutionContainer.TryAddReagent(containerCum.Solution.Value, containerCum.ReagentId, containerCum.QuantityPerUpdate, out _);
}

while (queryMilk.MoveNext(out var uid, out var containerMilk))
{
if (now < containerMilk.NextGrowth)
continue;

containerMilk.NextGrowth = now + containerMilk.GrowthDelay;

if (_mobState.IsDead(uid))
continue;

if (EntityManager.TryGetComponent(uid, out HungerComponent? hunger))
{
if (!(_hunger.GetHungerThreshold(hunger) < HungerThreshold.Okay))
_hunger.ModifyHunger(uid, -containerMilk.HungerUsage, hunger);
}
if (EntityManager.TryGetComponent(uid, out HungerComponent? hunger))
{
if (_hunger.GetHungerThreshold(hunger) < HungerThreshold.Okay)
continue;

if (_solutionContainer.ResolveSolution(uid, containerMilk.SolutionName, ref containerMilk.Solution))
_solutionContainer.TryAddReagent(containerMilk.Solution.Value, containerMilk.ReagentId, containerMilk.QuantityPerUpdate, out _);
//_hunger.ModifyHunger(uid, -containerMilk.HungerUsage, hunger);
}

//if (!(now < containerSquirt.NextGrowth)) //Unused-Trait is WIP
//{
// containerSquirt.NextGrowth = now + containerSquirt.GrowthDelay;

//
// if (EntityManager.TryGetComponent(uid, out HungerComponent? hunger))
// {
//
// if (!(_hunger.GetHungerThreshold(hunger) < HungerThreshold.Okay))
// _hunger.ModifyHunger(uid, -containerSquirt.HungerUsage, hunger);
// }

// if (_solutionContainer.ResolveSolution(uid, containerSquirt.SolutionName, ref containerSquirt.Solution))
// _solutionContainer.TryAddReagent(containerSquirt.Solution.Value, containerSquirt.ReagentId, containerSquirt.QuantityPerUpdate, out _);
//}
if (!_solutionContainer.ResolveSolution(uid, containerMilk.SolutionName, ref containerMilk.Solution))
continue;

_solutionContainer.TryAddReagent(containerMilk.Solution.Value, containerMilk.ReagentId, containerMilk.QuantityPerUpdate, out _);
}

//if (!(now < containerSquirt.NextGrowth)) //Unused-Trait is WIP
//{
// containerSquirt.NextGrowth = now + containerSquirt.GrowthDelay;

//
// if (EntityManager.TryGetComponent(uid, out HungerComponent? hunger))
// {
//
// if (!(_hunger.GetHungerThreshold(hunger) < HungerThreshold.Okay))
// _hunger.ModifyHunger(uid, -containerSquirt.HungerUsage, hunger);
// }

// if (_solutionContainer.ResolveSolution(uid, containerSquirt.SolutionName, ref containerSquirt.Solution))
// _solutionContainer.TryAddReagent(containerSquirt.Solution.Value, containerSquirt.ReagentId, containerSquirt.QuantityPerUpdate, out _);
//}
}
#endregion
}
50 changes: 50 additions & 0 deletions Resources/Changelog/Floof.yml
Original file line number Diff line number Diff line change
Expand Up @@ -502,3 +502,53 @@ Entries:
message: Added way to make Double Cream Blaster with all natural creams
id: 70
time: '2024-08-15T00:10:40.0000000+00:00'
- author: Memeji
changes:
- type: Tweak
message: Tweaked starting max milk amount. 25u -> 50u
- type: Tweak
message: Gave cumProducer a default SolutionName ("penis").
- type: Tweak
message: Gave milkProducer a default SolutionName ("breasts").
- type: Tweak
message: cumProducer takes less time to generate, but generates less per growth.
- type: Tweak
message: milkProducer takes less time to generate, but generates less per growth.
- type: Fix
message: >-
Cum generation - When you eat something, your tank will refill and use
hunger.
- type: Fix
message: >-
Milk generation - When you eat something, your tank will refill and use
hunger.
- type: Remove
message: Duplicate "Floof" folder.
id: 71
time: '2024-08-15T21:26:49.0000000+00:00'
- author: fenndragon
changes:
- type: Tweak
message: Updated the Rouny Sprite
id: 72
time: '2024-08-16T06:52:50.0000000+00:00'
- author: Memeji
changes:
- type: Tweak
message: Cum/Milk regeneration doesn't use hunger.
id: 73
time: '2024-08-17T23:21:19.0000000+00:00'
- author: ShatteredSwords
changes:
- type: Add
message: Adds Seb themselves as their own thing!
- type: Tweak
message: Seb will always spawn instead of Siobhan in Floof maps.
id: 74
time: '2024-08-18T21:19:51.0000000+00:00'
- author: Memeji
changes:
- type: Add
message: Pink Collar
id: 75
time: '2024-08-19T05:33:04.0000000+00:00'
3 changes: 3 additions & 0 deletions Resources/Migrations/floofmigration.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# 2024-08-16 Floof Only Please message @FracturedSwords on discord if there are any merge conflicts upcoming
SpawnMobArcticFoxSiobhan: SpawnMobArcticFoxSeb
MobArcticFoxSiobhan: MobArcticFoxSeb
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,6 @@
ClothingNeckScarfStripedBrown: 3
ClothingShoesBootsWinterCargo: 2
ClothingNeckCollarLogi: 1 # Floofstation - Collar addition
ClothingHandsLogisWarmers: 1 # Floofstation
ClothingUnderSocksLogis: 1 # Floofstation
ClothingUniformLogisThong: 1 # Floofstation
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@
ClothingHeadHatWitch1: 1
ClothingOuterPlagueSuit: 1
ClothingMaskPlague: 1
ClothingHandsChaplainWarmers: 1 # Floofstation
ClothingUnderSocksChaplain: 1 # Floofstation
ClothingUniformChaplainThong: 1 # Floofstation
ClothingOuterEpiChaplainMantle: 1 # Floofstation
#ClothingHeadsetService: 2 # Delta-V - Chaplain is no longer service dept
BoxCandle: 2
BoxCandleSmall: 2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
ClothingUniformLoinCloth: 5 # FloofStation
ClothingNeckCollarBlue: 1 # Floofstation - Collar addition
ClothingNeckCollarBlack: 1 # Floofstation - Collar addition
ClothingNeckCollarPink: 1 # Floofstation - Collar addition
ClothingLongcoatNT: 2 # Floofstation
ClothingLongcoatAL: 2 # Floofstation
ClothingLongcoatBrown: 2 # Floofstation
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,6 @@
ClothingNeckScarfStripedOrange: 3
ClothingShoesBootsWinterEngi: 2
ClothingNeckCollarEngi: 1 # Floofstation - Collar addition
ClothingHandsEngiWarmers: 1 # Floofstation
ClothingUnderSocksEngi: 1 # Floofstation
ClothingUniformEngiThong: 1 # Floofstation
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@
ClothingShoesBootsWinterJani: 2 #Delta V: Add departmental winter boots
ClothingUniformJumpskirtJanimaid: 2 # Delta V: the maiden outfits no longer require emagging.
ClothingUniformJumpskirtJanimaidmini: 1
ClothingHandsJanitorWarmers: 1 # Floofstation
ClothingUnderSocksJanitor: 1 # Floofstation
ClothingUniformJanitorThong: 1 # Floofstation

emaggedInventory: # Delta V: tactical maid outfit set is now the emagg reward.
ClothingHandsTacticalMaidGloves: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@
ClothingHeadHatSurgcapPurple: 4
ClothingShoesBootsWinterMed: 2
ClothingNeckCollarMed: 1 # Floofstation - Collar addition
ClothingHandsMedicWarmers: 1 # Floofstation
ClothingUnderSocksMedic: 1 # Floofstation
ClothingUniformMedicThong: 1 # Floofstation
contrabandInventory: #DeltaV
UniformScrubsColorCybersun: 1 #DeltaV
ClothingHeadHatSurgcapCybersun: 1 #DeltaV
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,8 @@
ClothingOuterWinterSci: 2
ClothingNeckScarfStripedPurple: 3
ClothingNeckCollarEpi: 1 # Floofstation - Collar addition
ClothingHandsEpiWarmers: 1 # Floofstation
ClothingUnderSocksEpi: 1 # Floofstation
ClothingUniformEpiThong: 1 # Floofstation
ClothingHeadTinfoil: 2 # Nyanotrasen - Tinfoil hats for Epistemics
ClothingShoesBootsWinterSci: 2
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
ClothingNeckScarfStripedRed: 3
ClothingEyesBlindfold: 1
ClothingNeckCollarSec: 1 # Floofstation - Collar addition
ClothingHandsSecurityWarmers: 1 # Floofstation
ClothingUnderSocksSecurity: 1 # Floofstation
ClothingUniformSecurityThong: 1 # Floofstation
ClothingShoesBootsCombat: 1
ClothingShoesBootsWinterSec: 2
ClothingShoesBootsCowboyBlack: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,4 @@
ClothingUnderSocksBee: 1
emaggedInventory:
# 3 for more friends!
ClothingUnderSocksCoderValid: 3 # Floofstation
ClothingUnderSocksCoderValid: 3 # Floofstation
6 changes: 3 additions & 3 deletions Resources/Prototypes/DeltaV/Entities/Mobs/NPCs/pets.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
- type: entity
name: Seb
name: Siobhan
parent: MobArcticFox
id: MobArcticFoxSiobhan
description: His name is "Sebastien de Lys", but he is known as Seb by his friends. A fluffy, adorable arctic fox.
description: Her name is pronounced "Shivahn", but she is known as Shivs by her associates. A fluffy, adorable arctic fox.
components:
- type: InteractionPopup
successChance: 1
Expand All @@ -13,7 +13,7 @@
- type: Grammar
attributes:
proper: true
gender: male
gender: female
- type: Tag
tags:
- CannotSuicide
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -533,21 +533,3 @@
tags:
- Wine

#Floof
- type: entity
parent: DrinkCanBaseFull
id: DrinkNNNCan
name: Nikkos Naughty Nectar
description: A can of Nikko's Naughty Nectar! Best not to ask how it's made...
components:
- type: SolutionContainerManager
solutions:
drink:
maxVol: 30
reagents:
- ReagentId: NikkosNaughtyNectar
Quantity: 30
- type: Sprite
sprite: Objects/Consumable/Drinks/nnn_can.rsi
- type: Item
sprite: Objects/Consumable/Drinks/nnn_can.rsi
Loading

0 comments on commit 8dec475

Please sign in to comment.