Сперма
This commit is contained in:
98
Content.Server/_Honk/Cunt/CuntSystems.cs
Normal file
98
Content.Server/_Honk/Cunt/CuntSystems.cs
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
using Content.Server.Chat.Systems;
|
||||||
|
using Content.Server.Chemistry.Containers.EntitySystems;
|
||||||
|
using Content.Server.Fluids.EntitySystems;
|
||||||
|
using Content.Shared._Honk.Cunt;
|
||||||
|
using Content.Shared.Chemistry.Components;
|
||||||
|
using Content.Shared.FixedPoint;
|
||||||
|
using Robust.Shared.Timing;
|
||||||
|
|
||||||
|
namespace Content.Server._Honk.Cunt;
|
||||||
|
|
||||||
|
public sealed class CuntSystem : EntitySystem
|
||||||
|
{
|
||||||
|
[Dependency] private readonly PuddleSystem _puddle = default!;
|
||||||
|
[Dependency] private readonly IGameTiming _timing = default!;
|
||||||
|
[Dependency] private readonly SolutionContainerSystem _solutionContainer = default!;
|
||||||
|
|
||||||
|
public override void Initialize()
|
||||||
|
{
|
||||||
|
SubscribeLocalEvent<CuntableComponent,EmoteEvent>(OnCunt);
|
||||||
|
SubscribeLocalEvent<CuntableComponent,ComponentStartup>(OnStartup);
|
||||||
|
SubscribeLocalEvent<CuntableComponent,EntityUnpausedEvent>(OnUnpaused);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnStartup(EntityUid uid, CuntableComponent component, ComponentStartup args)
|
||||||
|
{
|
||||||
|
var cuntSolution = _solutionContainer.EnsureSolution(uid, CuntableComponent.CuntSolutionName);
|
||||||
|
cuntSolution.MaxVolume = 10;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnCunt(EntityUid uid, CuntableComponent component, ref EmoteEvent args)
|
||||||
|
{
|
||||||
|
if (args.Emote.ID == "Squelch")
|
||||||
|
{
|
||||||
|
GenCum(uid, component);
|
||||||
|
TryCunt(uid, component);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TryCunt(EntityUid uid, CuntableComponent? component = null)
|
||||||
|
{
|
||||||
|
if (!Resolve(uid, ref component))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if(!_solutionContainer.TryGetSolution(uid,CuntableComponent.CuntSolutionName,out var cuntSolution))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if(cuntSolution.Volume < 5)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
_puddle.TrySpillAt(uid, cuntSolution, out _);
|
||||||
|
_solutionContainer.SplitSolution(uid,cuntSolution,50);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void GenCum(EntityUid uid, CuntableComponent? component = null)
|
||||||
|
{
|
||||||
|
if (!Resolve(uid, ref component))
|
||||||
|
return ;
|
||||||
|
|
||||||
|
if (_solutionContainer.TryGetSolution(uid, CuntableComponent.CuntSolutionName, out var solution))
|
||||||
|
{
|
||||||
|
if (solution.AvailableVolume <= FixedPoint2.Zero)
|
||||||
|
return;
|
||||||
|
|
||||||
|
var generated = new Solution("Cunt", 2);
|
||||||
|
|
||||||
|
_solutionContainer.TryAddSolution(uid, solution, generated);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//public override void Update(float frameTime)
|
||||||
|
//{
|
||||||
|
// base.Update(frameTime);
|
||||||
|
//
|
||||||
|
// var query = EntityQueryEnumerator<CuntableComponent, SolutionContainerManagerComponent>();
|
||||||
|
// while (query.MoveNext(out var uid, out var regen, out var manager))
|
||||||
|
// {
|
||||||
|
// if (_timing.CurTime < regen.NextRegenTime)
|
||||||
|
// continue;
|
||||||
|
|
||||||
|
// regen.NextRegenTime = _timing.CurTime + regen.Duration;
|
||||||
|
// if (_solutionContainer.TryGetSolution(uid, CuntableComponent.CuntSolutionName, out var solution, manager))
|
||||||
|
// {
|
||||||
|
// if (solution.AvailableVolume <= FixedPoint2.Zero)
|
||||||
|
// continue;
|
||||||
|
//
|
||||||
|
// var generated = new Solution("Cunt", 5);
|
||||||
|
//
|
||||||
|
// _solutionContainer.TryAddSolution(uid, solution, generated);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
private void OnUnpaused(EntityUid uid, CuntableComponent comp, ref EntityUnpausedEvent args)
|
||||||
|
{
|
||||||
|
comp.NextRegenTime += args.PausedTime;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -25,7 +25,6 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Power\Components\" />
|
<Folder Include="Power\Components\" />
|
||||||
<Folder Include="_Honk\" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="..\RobustToolbox\MSBuild\Robust.Properties.targets" />
|
<Import Project="..\RobustToolbox\MSBuild\Robust.Properties.targets" />
|
||||||
<Import Project="..\RobustToolbox\MSBuild\Robust.CompNetworkGenerator.targets" />
|
<Import Project="..\RobustToolbox\MSBuild\Robust.CompNetworkGenerator.targets" />
|
||||||
|
|||||||
10
Content.Shared/_Honk/Cunt/CuntableComponent.cs
Normal file
10
Content.Shared/_Honk/Cunt/CuntableComponent.cs
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
namespace Content.Shared._Honk.Cunt;
|
||||||
|
|
||||||
|
[RegisterComponent]
|
||||||
|
public sealed partial class CuntableComponent : Component
|
||||||
|
{
|
||||||
|
public const string CuntSolutionName = "cunt";
|
||||||
|
|
||||||
|
[ViewVariables] public TimeSpan NextRegenTime = TimeSpan.Zero;
|
||||||
|
[ViewVariables] public TimeSpan Duration = TimeSpan.FromSeconds(1);
|
||||||
|
}
|
||||||
5
Resources/Locale/ru-RU/_honk/reagents/cunt.ftl
Normal file
5
Resources/Locale/ru-RU/_honk/reagents/cunt.ftl
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
reagent-name-cunt = конча
|
||||||
|
reagent-desc-cunt = на вкус как сперма
|
||||||
|
reagent-physical-desc-cunt = густой и тёплый
|
||||||
|
|
||||||
|
flavor-base-cunt = солёное
|
||||||
@@ -287,6 +287,7 @@
|
|||||||
- type: RoleplayInfo
|
- type: RoleplayInfo
|
||||||
- type: Mood # WD
|
- type: Mood # WD
|
||||||
- type: OfferItem # WD-EDIT
|
- type: OfferItem # WD-EDIT
|
||||||
|
- type: Cuntable #Honk Edit
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
|
|||||||
12
Resources/Prototypes/_Honk/Actions/cunt.yml
Normal file
12
Resources/Prototypes/_Honk/Actions/cunt.yml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
- type: emote
|
||||||
|
id: Squelch
|
||||||
|
category: Gesture
|
||||||
|
buttonText: Кончать
|
||||||
|
chatMessages: [ кончает ]
|
||||||
|
chatTriggers:
|
||||||
|
- кончит
|
||||||
|
- кончает
|
||||||
|
- кончил
|
||||||
|
- кончила
|
||||||
|
- кончило
|
||||||
|
allowMenu: true
|
||||||
13
Resources/Prototypes/_Honk/Reagents/cunt.yml
Normal file
13
Resources/Prototypes/_Honk/Reagents/cunt.yml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
- type: reagent
|
||||||
|
id: Cunt
|
||||||
|
name: reagent-name-cunt
|
||||||
|
desc: reagent-desc-cunt
|
||||||
|
physicalDesc: reagent-physical-desc-cunt
|
||||||
|
recognizable: true
|
||||||
|
flavor: cunt
|
||||||
|
color: "#AAAAAA"
|
||||||
|
|
||||||
|
- type: flavor
|
||||||
|
id: cunt
|
||||||
|
flavorType: Base
|
||||||
|
description: flavor-base-cunt
|
||||||
Reference in New Issue
Block a user