From c3135f160e6b4d0a75fd3c549c095cabaa4000e2 Mon Sep 17 00:00:00 2001 From: Cinka Date: Sun, 18 Feb 2024 13:23:05 +0300 Subject: [PATCH] - fix: felinids layouts --- Content.Client/_Amour/Hole/HoleSystem.cs | 22 +- .../GenitalBoxView.xaml | 6 +- .../HumanoidProfileEditor.Genitals.cs | 9 +- Content.Server/_Amour/Hole/HoleSystem.cs | 8 + Content.Shared/_Amour/Hole/HoleComponent.cs | 17 +- .../_Amour/Hole/HoleContainerComponent.cs | 1 + .../_Amour/Hole/HoleSystem.Container.cs | 3 + Content.Shared/_Amour/Hole/HoleSystem.cs | 10 + .../Locale/ru-RU/_amour/genitals/menu.ftl | 1 + .../Prototypes/Entities/Mobs/Species/moth.yml | 14 + .../Prototypes/White/Mobs/Species/felinid.yml | 28 + .../Prototypes/White/Mobs/Species/harpy.yml | 28 + .../Prototypes/_Amour/Entities/Holes/base.yml | 2 + .../_Amour/Entities/Holes/breast.yml | 918 ++++++++++++++++++ .../Prototypes/_Amour/Entities/Holes/butt.yml | 83 ++ .../_Amour/Entities/Holes/penis.yml | 43 +- .../_Amour/Entities/Holes/testicles.yml | 191 ++++ .../_Amour/Entities/Holes/vagina.yml | 108 +++ Resources/Prototypes/_Amour/genitalsGroup.yml | 93 ++ 19 files changed, 1530 insertions(+), 55 deletions(-) create mode 100644 Resources/Prototypes/_Amour/Entities/Holes/breast.yml create mode 100644 Resources/Prototypes/_Amour/Entities/Holes/butt.yml create mode 100644 Resources/Prototypes/_Amour/Entities/Holes/testicles.yml create mode 100644 Resources/Prototypes/_Amour/Entities/Holes/vagina.yml diff --git a/Content.Client/_Amour/Hole/HoleSystem.cs b/Content.Client/_Amour/Hole/HoleSystem.cs index 1b2483c6d0..0ba0be2e7e 100644 --- a/Content.Client/_Amour/Hole/HoleSystem.cs +++ b/Content.Client/_Amour/Hole/HoleSystem.cs @@ -2,6 +2,7 @@ using Content.Shared.Humanoid; using Robust.Client.GameObjects; using Robust.Shared.Containers; +using Robust.Shared.GameStates; using Robust.Shared.Reflection; namespace Content.Client._Amour.Hole; @@ -14,6 +15,22 @@ public sealed class HoleSystem : SharedHoleSystem base.Initialize(); SubscribeLocalEvent(OnInsert); SubscribeLocalEvent(OnRemoved); + + SubscribeLocalEvent(OnHandleState); + } + + private void OnHandleState(EntityUid uid, HoleComponent component,ref ComponentHandleState args) + { + if(args.Current is not HoleComponentState componentState) + return; + + component.IsExcited = componentState.IsExcited; + component.Parent = componentState.Parent; + + if (component.Parent is not null) + { + UpdateVisual(GetEntity(component.Parent.Value),uid); + } } private void OnRemoved(EntityUid uid, HoleContainerComponent component, EntRemovedFromContainerMessage args) @@ -40,6 +57,7 @@ public sealed class HoleSystem : SharedHoleSystem { if(!Resolve(entity,ref entity.Comp) || entity.Comp.Slot == null) return; + foreach (var hole in entity.Comp.Slot.ContainedEntities) { UpdateVisual(entity.Owner,hole,!HasAccessTo(entity,hole)); @@ -62,7 +80,6 @@ public sealed class HoleSystem : SharedHoleSystem if (Resolve(owner.Owner, ref owner.Comp2)) { layer.Color ??= owner.Comp2.SkinColor; - layer.Color.Value.WithAlpha(owner.Comp2.SkinColor.A); } var state = layer.State; @@ -113,8 +130,9 @@ public sealed class HoleSystem : SharedHoleSystem public override void Exide(Entity entity, bool value = true) { + if(!Resolve(entity.Owner,ref entity.Comp)) return; base.Exide(entity, value); - var netEntity = entity.Comp!.Parent; + var netEntity = entity.Comp.Parent; if (netEntity != null) UpdateVisual(GetEntity(netEntity.Value), entity); } diff --git a/Content.Client/_Amour/HumanoidProfileEditorExt/GenitalBoxView.xaml b/Content.Client/_Amour/HumanoidProfileEditorExt/GenitalBoxView.xaml index 6182d8ea80..8f37d7c4a7 100644 --- a/Content.Client/_Amour/HumanoidProfileEditorExt/GenitalBoxView.xaml +++ b/Content.Client/_Amour/HumanoidProfileEditorExt/GenitalBoxView.xaml @@ -2,9 +2,9 @@ xmlns="https://spacestation14.io" xmlns:humanoidProfileEditorExt="clr-namespace:Content.Client._Amour.HumanoidProfileEditorExt"> - - diff --git a/Content.Client/_Amour/HumanoidProfileEditorExt/HumanoidProfileEditor.Genitals.cs b/Content.Client/_Amour/HumanoidProfileEditorExt/HumanoidProfileEditor.Genitals.cs index 84ec411cb0..6dfe5169b4 100644 --- a/Content.Client/_Amour/HumanoidProfileEditorExt/HumanoidProfileEditor.Genitals.cs +++ b/Content.Client/_Amour/HumanoidProfileEditorExt/HumanoidProfileEditor.Genitals.cs @@ -19,13 +19,8 @@ public sealed partial class HumanoidProfileEditor private void OnExide(BaseButton.ButtonEventArgs obj) { - if (_entMan.TryGetComponent(_previewDummy, out var component)) - { - foreach (var entity in component.Slot.ContainedEntities) - { - _holeSystem.Exide(entity); - } - } + if (_previewDummy != null) + _holeSystem.ExideEntity(_previewDummy.Value,obj.Button.Pressed); } private void UpdateGenitalsControls() diff --git a/Content.Server/_Amour/Hole/HoleSystem.cs b/Content.Server/_Amour/Hole/HoleSystem.cs index ceb4b46701..d0e6ace6df 100644 --- a/Content.Server/_Amour/Hole/HoleSystem.cs +++ b/Content.Server/_Amour/Hole/HoleSystem.cs @@ -2,6 +2,7 @@ using Content.Shared._Amour.Hole; using Robust.Server.Containers; using Robust.Shared.Containers; +using Robust.Shared.GameStates; using Robust.Shared.Timing; namespace Content.Server._Amour.Hole; @@ -14,6 +15,13 @@ public sealed partial class HoleSystem : SharedHoleSystem { base.Initialize(); InitializeInventory(); + + SubscribeLocalEvent(OnGetState); + } + + private void OnGetState(EntityUid uid, HoleComponent component,ref ComponentGetState args) + { + args.State = new HoleComponentState(component.Parent, component.IsExcited); } public override void Update(float frameTime) diff --git a/Content.Shared/_Amour/Hole/HoleComponent.cs b/Content.Shared/_Amour/Hole/HoleComponent.cs index 82060fffd4..2577e41b87 100644 --- a/Content.Shared/_Amour/Hole/HoleComponent.cs +++ b/Content.Shared/_Amour/Hole/HoleComponent.cs @@ -26,8 +26,8 @@ public sealed partial class HoleComponent : Component // this shit just for sprite prefix like state: dildo_FRONT [DataField] public List Prefixes = new(); - [ViewVariables] public bool IsExcited = false; - [DataField] public bool IsMainOrgan = false; + [ViewVariables(VVAccess.ReadWrite)] public bool IsExcited = false; + [DataField] public bool IsMainHole = false; } [Serializable, NetSerializable, DataDefinition] @@ -49,3 +49,16 @@ public enum HoleType : byte Flat, Mother } + +[Serializable,NetSerializable] +public sealed partial class HoleComponentState : ComponentState +{ + public readonly NetEntity? Parent; + public readonly bool IsExcited; + + public HoleComponentState(NetEntity? parent, bool isExcited) + { + Parent = parent; + IsExcited = isExcited; + } +} diff --git a/Content.Shared/_Amour/Hole/HoleContainerComponent.cs b/Content.Shared/_Amour/Hole/HoleContainerComponent.cs index 09d729c130..5e70903652 100644 --- a/Content.Shared/_Amour/Hole/HoleContainerComponent.cs +++ b/Content.Shared/_Amour/Hole/HoleContainerComponent.cs @@ -9,6 +9,7 @@ public sealed partial class HoleContainerComponent : Component { public const string SlotName = "Funny"; [ViewVariables] public Container Slot = default!; + [ViewVariables] public NetEntity? MainHole; [DataField] public List HolePrototypes = new(); [DataField] public bool UseHumanGenitalLayers = false; } diff --git a/Content.Shared/_Amour/Hole/HoleSystem.Container.cs b/Content.Shared/_Amour/Hole/HoleSystem.Container.cs index 6e6f428713..0a827ce7f7 100644 --- a/Content.Shared/_Amour/Hole/HoleSystem.Container.cs +++ b/Content.Shared/_Amour/Hole/HoleSystem.Container.cs @@ -40,6 +40,9 @@ public abstract partial class SharedHoleSystem component.Layers[0].Color = color; + if (component.IsMainHole) + entity.Comp.MainHole = GetNetEntity(spawned); + _containerSystem.Insert(spawned, entity.Comp.Slot); Dirty(entity); } diff --git a/Content.Shared/_Amour/Hole/HoleSystem.cs b/Content.Shared/_Amour/Hole/HoleSystem.cs index 3cbabfdaae..489c856c1d 100644 --- a/Content.Shared/_Amour/Hole/HoleSystem.cs +++ b/Content.Shared/_Amour/Hole/HoleSystem.cs @@ -1,4 +1,5 @@ using Robust.Shared.Containers; +using Robust.Shared.GameStates; namespace Content.Shared._Amour.Hole; @@ -25,5 +26,14 @@ public abstract partial class SharedHoleSystem : EntitySystem { if(!Resolve(entity.Owner,ref entity.Comp)) return; entity.Comp.IsExcited = value; + Dirty(entity); + } + + public void ExideEntity(Entity entity, bool value = true) + { + if (Resolve(entity,ref entity.Comp) && entity.Comp.MainHole != null) + { + Exide(GetEntity(entity.Comp.MainHole.Value), value); + } } } diff --git a/Resources/Locale/ru-RU/_amour/genitals/menu.ftl b/Resources/Locale/ru-RU/_amour/genitals/menu.ftl index 101627c824..b6a04e6121 100644 --- a/Resources/Locale/ru-RU/_amour/genitals/menu.ftl +++ b/Resources/Locale/ru-RU/_amour/genitals/menu.ftl @@ -7,3 +7,4 @@ genitals-group-testicles = Яйца genitals-group-butt = Попа genitals-group-breast = Сисечки +genitals-exide = Переключить другой прикол diff --git a/Resources/Prototypes/Entities/Mobs/Species/moth.yml b/Resources/Prototypes/Entities/Mobs/Species/moth.yml index 1eccb73e3b..b95cae7dc8 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/moth.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/moth.yml @@ -65,6 +65,13 @@ noRot: true drawdepth: Mobs layers: + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtBehind" ] + - map: [ "enum.GenitalVisualLayers.BreastBehind" ] + - map: [ "enum.GenitalVisualLayers.VaginaBehind" ] + - map: [ "enum.GenitalVisualLayers.TesticlesBehind" ] + - map: [ "enum.GenitalVisualLayers.DickBehind" ] + # END AMOUR EDIT - map: [ "enum.HumanoidVisualLayers.Chest" ] - map: [ "enum.HumanoidVisualLayers.Head" ] - map: [ "enum.HumanoidVisualLayers.Snout" ] @@ -118,6 +125,13 @@ sprite: "Effects/creampie.rsi" state: "creampie_moth" visible: false + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtFront" ] + - map: [ "enum.GenitalVisualLayers.BreastFront" ] + - map: [ "enum.GenitalVisualLayers.VaginaFront" ] + - map: [ "enum.GenitalVisualLayers.TesticlesFront" ] + - map: [ "enum.GenitalVisualLayers.DickFront" ] + # END AMOUR EDIT - type: entity parent: BaseSpeciesDummy diff --git a/Resources/Prototypes/White/Mobs/Species/felinid.yml b/Resources/Prototypes/White/Mobs/Species/felinid.yml index 2328210e9a..d20147d055 100644 --- a/Resources/Prototypes/White/Mobs/Species/felinid.yml +++ b/Resources/Prototypes/White/Mobs/Species/felinid.yml @@ -11,6 +11,13 @@ drawdepth: Mobs scale: 0.8, 0.8 layers: + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtBehind" ] + - map: [ "enum.GenitalVisualLayers.BreastBehind" ] + - map: [ "enum.GenitalVisualLayers.VaginaBehind" ] + - map: [ "enum.GenitalVisualLayers.TesticlesBehind" ] + - map: [ "enum.GenitalVisualLayers.DickBehind" ] + # END AMOUR EDIT - map: [ "enum.HumanoidVisualLayers.Chest" ] color: "#e8b59b" sprite: Mobs/Species/Human/parts.rsi @@ -100,6 +107,13 @@ sprite: Mobs/Customization/masking_helpers.rsi state: none visible: false + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtFront" ] + - map: [ "enum.GenitalVisualLayers.BreastFront" ] + - map: [ "enum.GenitalVisualLayers.VaginaFront" ] + - map: [ "enum.GenitalVisualLayers.TesticlesFront" ] + - map: [ "enum.GenitalVisualLayers.DickFront" ] + # END AMOUR EDIT - type: HumanoidAppearance species: Felinid - type: Body @@ -141,6 +155,13 @@ drawdepth: Mobs scale: 1, 1 layers: + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtBehind" ] + - map: [ "enum.GenitalVisualLayers.BreastBehind" ] + - map: [ "enum.GenitalVisualLayers.VaginaBehind" ] + - map: [ "enum.GenitalVisualLayers.TesticlesBehind" ] + - map: [ "enum.GenitalVisualLayers.DickBehind" ] + # END AMOUR EDIT - map: ["enum.HumanoidVisualLayers.Chest"] color: "#e8b59b" sprite: Mobs/Species/Human/parts.rsi @@ -231,5 +252,12 @@ sprite: Mobs/Customization/masking_helpers.rsi state: none visible: false + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtFront" ] + - map: [ "enum.GenitalVisualLayers.BreastFront" ] + - map: [ "enum.GenitalVisualLayers.VaginaFront" ] + - map: [ "enum.GenitalVisualLayers.TesticlesFront" ] + - map: [ "enum.GenitalVisualLayers.DickFront" ] + # END AMOUR EDIT #Nya~~ diff --git a/Resources/Prototypes/White/Mobs/Species/harpy.yml b/Resources/Prototypes/White/Mobs/Species/harpy.yml index b41aa366e9..f0c249f3df 100644 --- a/Resources/Prototypes/White/Mobs/Species/harpy.yml +++ b/Resources/Prototypes/White/Mobs/Species/harpy.yml @@ -41,6 +41,13 @@ - type: Sprite scale: 0.9, 0.9 layers: + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtBehind" ] + - map: [ "enum.GenitalVisualLayers.BreastBehind" ] + - map: [ "enum.GenitalVisualLayers.VaginaBehind" ] + - map: [ "enum.GenitalVisualLayers.TesticlesBehind" ] + - map: [ "enum.GenitalVisualLayers.DickBehind" ] + # END AMOUR EDIT - map: [ "enum.HumanoidVisualLayers.Chest" ] - map: [ "enum.HumanoidVisualLayers.Head" ] - map: [ "enum.HumanoidVisualLayers.Snout" ] @@ -85,6 +92,13 @@ - map: [ "enum.HumanoidVisualLayers.HeadTop" ] - map: [ "mask" ] - map: [ "head" ] + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtFront" ] + - map: [ "enum.GenitalVisualLayers.BreastFront" ] + - map: [ "enum.GenitalVisualLayers.VaginaFront" ] + - map: [ "enum.GenitalVisualLayers.TesticlesFront" ] + - map: [ "enum.GenitalVisualLayers.DickFront" ] + # END AMOUR EDIT - type: HumanoidAppearance species: Harpy @@ -133,6 +147,13 @@ - type: Sprite scale: 0.9, 0.9 layers: + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtBehind" ] + - map: [ "enum.GenitalVisualLayers.BreastBehind" ] + - map: [ "enum.GenitalVisualLayers.VaginaBehind" ] + - map: [ "enum.GenitalVisualLayers.TesticlesBehind" ] + - map: [ "enum.GenitalVisualLayers.DickBehind" ] + # END AMOUR EDIT - map: [ "enum.HumanoidVisualLayers.Chest" ] - map: [ "enum.HumanoidVisualLayers.Head" ] - map: [ "enum.HumanoidVisualLayers.Snout" ] @@ -172,6 +193,13 @@ - map: [ "enum.HumanoidVisualLayers.Hair" ] - map: [ "mask" ] - map: [ "head" ] + # START AMOUR EDIT + - map: [ "enum.GenitalVisualLayers.ButtFront" ] + - map: [ "enum.GenitalVisualLayers.BreastFront" ] + - map: [ "enum.GenitalVisualLayers.VaginaFront" ] + - map: [ "enum.GenitalVisualLayers.TesticlesFront" ] + - map: [ "enum.GenitalVisualLayers.DickFront" ] + # END AMOUR EDIT - type: entity id: ActionHarpyPlayMidi diff --git a/Resources/Prototypes/_Amour/Entities/Holes/base.yml b/Resources/Prototypes/_Amour/Entities/Holes/base.yml index 1332622364..509f8990a4 100644 --- a/Resources/Prototypes/_Amour/Entities/Holes/base.yml +++ b/Resources/Prototypes/_Amour/Entities/Holes/base.yml @@ -6,6 +6,7 @@ - type: Hole holeType: Father holeName: Dick + isMainHole: true holeNotVisibleIn: - suitstorage - outerClothing @@ -32,6 +33,7 @@ - type: Hole holeType: Mother holeName: Vagina + isMainHole: true holeNotVisibleIn: - suitstorage - outerClothing diff --git a/Resources/Prototypes/_Amour/Entities/Holes/breast.yml b/Resources/Prototypes/_Amour/Entities/Holes/breast.yml new file mode 100644 index 0000000000..36da2e9332 --- /dev/null +++ b/Resources/Prototypes/_Amour/Entities/Holes/breast.yml @@ -0,0 +1,918 @@ + +- type: entity + parent: BaseBreast + id: BreastsPairA + components: + - type: Hole + layers: + - state: breasts_pair_a + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairB + components: + - type: Hole + layers: + - state: breasts_pair_b + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairC + components: + - type: Hole + layers: + - state: breasts_pair_c + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairD + components: + - type: Hole + layers: + - state: breasts_pair_d + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairE + components: + - type: Hole + layers: + - state: breasts_pair_e + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairF + components: + - type: Hole + layers: + - state: breasts_pair_f + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairGiga + components: + - type: Hole + layers: + - state: breasts_pair_giga + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairG + components: + - type: Hole + layers: + - state: breasts_pair_g + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairHuge + components: + - type: Hole + layers: + - state: breasts_pair_huge + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairH + components: + - type: Hole + layers: + - state: breasts_pair_h + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairImpossible + components: + - type: Hole + layers: + - state: breasts_pair_impossible + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairI + components: + - type: Hole + layers: + - state: breasts_pair_i + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairJ + components: + - type: Hole + layers: + - state: breasts_pair_j + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairK + components: + - type: Hole + layers: + - state: breasts_pair_k + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairL + components: + - type: Hole + layers: + - state: breasts_pair_l + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairMassive + components: + - type: Hole + layers: + - state: breasts_pair_massive + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairM + components: + - type: Hole + layers: + - state: breasts_pair_m + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairN + components: + - type: Hole + layers: + - state: breasts_pair_n + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsPairO + components: + - type: Hole + layers: + - state: breasts_pair_o + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadA + components: + - type: Hole + layers: + - state: breasts_quad_a + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadB + components: + - type: Hole + layers: + - state: breasts_quad_b + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadC + components: + - type: Hole + layers: + - state: breasts_quad_c + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadD + components: + - type: Hole + layers: + - state: breasts_quad_d + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadE + components: + - type: Hole + layers: + - state: breasts_quad_e + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadF + components: + - type: Hole + layers: + - state: breasts_quad_f + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadGiga + components: + - type: Hole + layers: + - state: breasts_quad_giga + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadG + components: + - type: Hole + layers: + - state: breasts_quad_g + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadHuge + components: + - type: Hole + layers: + - state: breasts_quad_huge + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadH + components: + - type: Hole + layers: + - state: breasts_quad_h + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadImpossible + components: + - type: Hole + layers: + - state: breasts_quad_impossible + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadI + components: + - type: Hole + layers: + - state: breasts_quad_i + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadJ + components: + - type: Hole + layers: + - state: breasts_quad_j + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadK + components: + - type: Hole + layers: + - state: breasts_quad_k + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadL + components: + - type: Hole + layers: + - state: breasts_quad_l + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadMassive + components: + - type: Hole + layers: + - state: breasts_quad_massive + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadM + components: + - type: Hole + layers: + - state: breasts_quad_m + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadN + components: + - type: Hole + layers: + - state: breasts_quad_n + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsQuadO + components: + - type: Hole + layers: + - state: breasts_quad_o + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleA + components: + - type: Hole + layers: + - state: breasts_sextuple_a + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleB + components: + - type: Hole + layers: + - state: breasts_sextuple_b + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleC + components: + - type: Hole + layers: + - state: breasts_sextuple_c + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleD + components: + - type: Hole + layers: + - state: breasts_sextuple_d + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleE + components: + - type: Hole + layers: + - state: breasts_sextuple_e + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleF + components: + - type: Hole + layers: + - state: breasts_sextuple_f + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleGiga + components: + - type: Hole + layers: + - state: breasts_sextuple_giga + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleG + components: + - type: Hole + layers: + - state: breasts_sextuple_g + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleHuge + components: + - type: Hole + layers: + - state: breasts_sextuple_huge + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _0_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleH + components: + - type: Hole + layers: + - state: breasts_sextuple_h + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleImpossible + components: + - type: Hole + layers: + - state: breasts_sextuple_impossible + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleI + components: + - type: Hole + layers: + - state: breasts_sextuple_i + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleJ + components: + - type: Hole + layers: + - state: breasts_sextuple_j + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleK + components: + - type: Hole + layers: + - state: breasts_sextuple_k + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleL + components: + - type: Hole + layers: + - state: breasts_sextuple_l + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleMassive + components: + - type: Hole + layers: + - state: breasts_sextuple_massive + prefixes: + - layer: "enum.GenitalVisualLayers.BreastBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleM + components: + - type: Hole + layers: + - state: breasts_sextuple_m + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleN + components: + - type: Hole + layers: + - state: breasts_sextuple_n + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseBreast + id: BreastsSextupleO + components: + - type: Hole + layers: + - state: breasts_sextuple_o + prefixes: + - layer: "enum.GenitalVisualLayers.BreastFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + diff --git a/Resources/Prototypes/_Amour/Entities/Holes/butt.yml b/Resources/Prototypes/_Amour/Entities/Holes/butt.yml new file mode 100644 index 0000000000..d17f62e4ab --- /dev/null +++ b/Resources/Prototypes/_Amour/Entities/Holes/butt.yml @@ -0,0 +1,83 @@ +- type: entity + parent: BaseButt + id: ButtPair0 + components: + - type: Hole + layers: + - state: butt_pair_0 + prefixes: + - layer: "enum.GenitalVisualLayers.ButtFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + hasForHuman: true + + +- type: entity + parent: BaseButt + id: ButtPair1 + components: + - type: Hole + layers: + - state: butt_pair_1 + prefixes: + - layer: "enum.GenitalVisualLayers.ButtFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + hasForHuman: true + + +- type: entity + parent: BaseButt + id: ButtPair2 + components: + - type: Hole + layers: + - state: butt_pair_2 + prefixes: + - layer: "enum.GenitalVisualLayers.ButtFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + hasForHuman: true + + +- type: entity + parent: BaseButt + id: ButtPair3 + components: + - type: Hole + layers: + - state: butt_pair_3 + prefixes: + - layer: "enum.GenitalVisualLayers.ButtFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + hasForHuman: true + + +- type: entity + parent: BaseButt + id: ButtPair4 + components: + - type: Hole + layers: + - state: butt_pair_4 + prefixes: + - layer: "enum.GenitalVisualLayers.ButtFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + hasForHuman: true + + +- type: entity + parent: BaseButt + id: ButtPair5 + components: + - type: Hole + layers: + - state: butt_pair_5 + prefixes: + - layer: "enum.GenitalVisualLayers.ButtFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + hasForHuman: true + diff --git a/Resources/Prototypes/_Amour/Entities/Holes/penis.yml b/Resources/Prototypes/_Amour/Entities/Holes/penis.yml index 1a39e823ce..a41248cd55 100644 --- a/Resources/Prototypes/_Amour/Entities/Holes/penis.yml +++ b/Resources/Prototypes/_Amour/Entities/Holes/penis.yml @@ -1,5 +1,4 @@ - -- type: entity +- type: entity parent: BaseDick id: PenisAmputated0 components: @@ -23,7 +22,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -42,7 +40,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -61,7 +58,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -80,7 +76,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -111,7 +106,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -130,7 +124,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -149,7 +142,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -168,7 +160,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -199,7 +190,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -218,7 +208,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -237,7 +226,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -256,7 +244,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -287,7 +274,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -306,7 +292,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -325,7 +310,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -344,7 +328,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -363,7 +346,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -382,7 +364,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -401,7 +382,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -418,9 +398,8 @@ prefixes: - layer: "enum.GenitalVisualLayers.DickBehind" prefix: _0_BEHIND - excitedPrefix: _1_BEHIND + excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -454,7 +433,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -473,7 +451,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -492,7 +469,6 @@ prefix: _0_BEHIND excitedPrefix: _0_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -511,7 +487,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -542,7 +517,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -561,7 +535,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -580,7 +553,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -599,7 +571,6 @@ prefix: _0_BEHIND excitedPrefix: _1_BEHIND hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT @@ -617,7 +588,6 @@ - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT - hasForHuman: true - type: entity @@ -631,12 +601,9 @@ - layer: "enum.GenitalVisualLayers.DickBehind" prefix: _0_BEHIND excitedPrefix: _0_BEHIND - hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT - hasForHuman: true - type: entity @@ -650,12 +617,9 @@ - layer: "enum.GenitalVisualLayers.DickBehind" prefix: _0_BEHIND excitedPrefix: _0_BEHIND - hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT - hasForHuman: true - type: entity @@ -669,12 +633,9 @@ - layer: "enum.GenitalVisualLayers.DickBehind" prefix: _0_BEHIND excitedPrefix: _1_BEHIND - hasForHuman: true - - layer: "enum.GenitalVisualLayers.DickFront" prefix: _0_FRONT excitedPrefix: _1_FRONT - hasForHuman: true - type: entity diff --git a/Resources/Prototypes/_Amour/Entities/Holes/testicles.yml b/Resources/Prototypes/_Amour/Entities/Holes/testicles.yml new file mode 100644 index 0000000000..225cfcbaae --- /dev/null +++ b/Resources/Prototypes/_Amour/Entities/Holes/testicles.yml @@ -0,0 +1,191 @@ + +- type: entity + parent: BaseTesticles + id: TesticlesHidden1 + components: + - type: Hole + layers: + - state: testicles_hidden_1 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + + +- type: entity + parent: BaseTesticles + id: TesticlesHidden2 + components: + - type: Hole + layers: + - state: testicles_hidden_2 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + + +- type: entity + parent: BaseTesticles + id: TesticlesHidden3 + components: + - type: Hole + layers: + - state: testicles_hidden_3 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + + +- type: entity + parent: BaseTesticles + id: TesticlesSheath1 + components: + - type: Hole + layers: + - state: testicles_sheath_1 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSheath2 + components: + - type: Hole + layers: + - state: testicles_sheath_2 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSheath3 + components: + - type: Hole + layers: + - state: testicles_sheath_3 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSheath4 + components: + - type: Hole + layers: + - state: testicles_sheath_4 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSheath5 + components: + - type: Hole + layers: + - state: testicles_sheath_5 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSingle1 + components: + - type: Hole + layers: + - state: testicles_single_1 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSingle2 + components: + - type: Hole + layers: + - state: testicles_single_2 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSingle3 + components: + - type: Hole + layers: + - state: testicles_single_3 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesBehind" + prefix: _0_BEHIND + excitedPrefix: _1_BEHIND + hasForHuman: true + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSingle4 + components: + - type: Hole + layers: + - state: testicles_single_4 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseTesticles + id: TesticlesSingle5 + components: + - type: Hole + layers: + - state: testicles_single_5 + prefixes: + - layer: "enum.GenitalVisualLayers.TesticlesFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + diff --git a/Resources/Prototypes/_Amour/Entities/Holes/vagina.yml b/Resources/Prototypes/_Amour/Entities/Holes/vagina.yml new file mode 100644 index 0000000000..a21fa3a9c6 --- /dev/null +++ b/Resources/Prototypes/_Amour/Entities/Holes/vagina.yml @@ -0,0 +1,108 @@ + +- type: entity + parent: BaseVagina + id: VaginaCloaca1 + components: + - type: Hole + layers: + - state: vagina_cloaca_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + + +- type: entity + parent: BaseVagina + id: VaginaDentata1 + components: + - type: Hole + layers: + - state: vagina_dentata_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseVagina + id: VaginaFurred1 + components: + - type: Hole + layers: + - state: vagina_furred_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + + +- type: entity + parent: BaseVagina + id: VaginaGaping1 + components: + - type: Hole + layers: + - state: vagina_gaping_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseVagina + id: VaginaHairy1 + components: + - type: Hole + layers: + - state: vagina_hairy_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + + +- type: entity + parent: BaseVagina + id: VaginaHuman1 + components: + - type: Hole + layers: + - state: vagina_human_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + + +- type: entity + parent: BaseVagina + id: VaginaSpade1 + components: + - type: Hole + layers: + - state: vagina_spade_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _0_FRONT + + +- type: entity + parent: BaseVagina + id: VaginaTentacle1 + components: + - type: Hole + layers: + - state: vagina_tentacle_1 + prefixes: + - layer: "enum.GenitalVisualLayers.DickFront" + prefix: _0_FRONT + excitedPrefix: _1_FRONT + hasForHuman: true + diff --git a/Resources/Prototypes/_Amour/genitalsGroup.yml b/Resources/Prototypes/_Amour/genitalsGroup.yml index 7f9a14ebe5..704505d0a1 100644 --- a/Resources/Prototypes/_Amour/genitalsGroup.yml +++ b/Resources/Prototypes/_Amour/genitalsGroup.yml @@ -44,3 +44,96 @@ - PenisThick3 - PenisThick4 - PenisThick5 + - VaginaCloaca1 + - VaginaDentata1 + - VaginaFurred1 + - VaginaGaping1 + - VaginaHairy1 + - VaginaHuman1 + - VaginaSpade1 + - VaginaTentacle1 + +- type: genitalsGroup + id: Butt + prototypes: + - ButtPair0 + - ButtPair1 + - ButtPair2 + - ButtPair3 + - ButtPair4 + - ButtPair5 + +- type: genitalsGroup + id: Breast + prototypes: + - BreastsPairA + - BreastsPairB + - BreastsPairC + - BreastsPairD + - BreastsPairE + - BreastsPairF + - BreastsPairGiga + - BreastsPairG + - BreastsPairHuge + - BreastsPairH + - BreastsPairImpossible + - BreastsPairI + - BreastsPairJ + - BreastsPairK + - BreastsPairL + - BreastsPairMassive + - BreastsPairM + - BreastsPairN + - BreastsPairO + - BreastsQuadA + - BreastsQuadB + - BreastsQuadC + - BreastsQuadD + - BreastsQuadE + - BreastsQuadF + - BreastsQuadGiga + - BreastsQuadG + - BreastsQuadHuge + - BreastsQuadH + - BreastsQuadImpossible + - BreastsQuadI + - BreastsQuadJ + - BreastsQuadK + - BreastsQuadL + - BreastsQuadMassive + - BreastsQuadM + - BreastsQuadN + - BreastsQuadO + - BreastsSextupleA + - BreastsSextupleB + - BreastsSextupleC + - BreastsSextupleD + - BreastsSextupleE + - BreastsSextupleF + - BreastsSextupleGiga + - BreastsSextupleG + - BreastsSextupleHuge + - BreastsSextupleH + - BreastsSextupleImpossible + - BreastsSextupleI + - BreastsSextupleJ + - BreastsSextupleK + - BreastsSextupleL + - BreastsSextupleMassive + - BreastsSextupleM + - BreastsSextupleN + - BreastsSextupleO + +- type: genitalsGroup + id: Testicles + prototypes: + - TesticlesSheath1 + - TesticlesSheath2 + - TesticlesSheath3 + - TesticlesSheath4 + - TesticlesSheath5 + - TesticlesSingle1 + - TesticlesSingle2 + - TesticlesSingle3 + - TesticlesSingle4 + - TesticlesSingle5