Add undergarments & "Censor Nudity" toggle to options (#33185)
* Initial commit * Attribution * Review changes * Added comment for upstream
|
|
@ -1,8 +1,10 @@
|
||||||
|
using Content.Shared.CCVar;
|
||||||
using Content.Shared.Humanoid;
|
using Content.Shared.Humanoid;
|
||||||
using Content.Shared.Humanoid.Markings;
|
using Content.Shared.Humanoid.Markings;
|
||||||
using Content.Shared.Humanoid.Prototypes;
|
using Content.Shared.Humanoid.Prototypes;
|
||||||
using Content.Shared.Preferences;
|
using Content.Shared.Preferences;
|
||||||
using Robust.Client.GameObjects;
|
using Robust.Client.GameObjects;
|
||||||
|
using Robust.Shared.Configuration;
|
||||||
using Robust.Shared.Prototypes;
|
using Robust.Shared.Prototypes;
|
||||||
using Robust.Shared.Utility;
|
using Robust.Shared.Utility;
|
||||||
|
|
||||||
|
|
@ -12,12 +14,15 @@ public sealed class HumanoidAppearanceSystem : SharedHumanoidAppearanceSystem
|
||||||
{
|
{
|
||||||
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
|
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
|
||||||
[Dependency] private readonly MarkingManager _markingManager = default!;
|
[Dependency] private readonly MarkingManager _markingManager = default!;
|
||||||
|
[Dependency] private readonly IConfigurationManager _configurationManager = default!;
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
base.Initialize();
|
base.Initialize();
|
||||||
|
|
||||||
SubscribeLocalEvent<HumanoidAppearanceComponent, AfterAutoHandleStateEvent>(OnHandleState);
|
SubscribeLocalEvent<HumanoidAppearanceComponent, AfterAutoHandleStateEvent>(OnHandleState);
|
||||||
|
Subs.CVar(_configurationManager, CCVars.AccessibilityClientCensorNudity, OnCvarChanged, true);
|
||||||
|
Subs.CVar(_configurationManager, CCVars.AccessibilityServerCensorNudity, OnCvarChanged, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnHandleState(EntityUid uid, HumanoidAppearanceComponent component, ref AfterAutoHandleStateEvent args)
|
private void OnHandleState(EntityUid uid, HumanoidAppearanceComponent component, ref AfterAutoHandleStateEvent args)
|
||||||
|
|
@ -25,6 +30,15 @@ public sealed class HumanoidAppearanceSystem : SharedHumanoidAppearanceSystem
|
||||||
UpdateSprite(component, Comp<SpriteComponent>(uid));
|
UpdateSprite(component, Comp<SpriteComponent>(uid));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void OnCvarChanged(bool value)
|
||||||
|
{
|
||||||
|
var humanoidQuery = EntityManager.AllEntityQueryEnumerator<HumanoidAppearanceComponent, SpriteComponent>();
|
||||||
|
while (humanoidQuery.MoveNext(out var _, out var humanoidComp, out var spriteComp))
|
||||||
|
{
|
||||||
|
UpdateSprite(humanoidComp, spriteComp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void UpdateSprite(HumanoidAppearanceComponent component, SpriteComponent sprite)
|
private void UpdateSprite(HumanoidAppearanceComponent component, SpriteComponent sprite)
|
||||||
{
|
{
|
||||||
UpdateLayers(component, sprite);
|
UpdateLayers(component, sprite);
|
||||||
|
|
@ -209,16 +223,30 @@ public sealed class HumanoidAppearanceSystem : SharedHumanoidAppearanceSystem
|
||||||
// Really, markings should probably be a separate component altogether.
|
// Really, markings should probably be a separate component altogether.
|
||||||
ClearAllMarkings(humanoid, sprite);
|
ClearAllMarkings(humanoid, sprite);
|
||||||
|
|
||||||
|
var censorNudity = _configurationManager.GetCVar(CCVars.AccessibilityClientCensorNudity) ||
|
||||||
|
_configurationManager.GetCVar(CCVars.AccessibilityServerCensorNudity);
|
||||||
|
// The reason we're splitting this up is in case the character already has undergarment equipped in that slot.
|
||||||
|
var applyUndergarmentTop = censorNudity;
|
||||||
|
var applyUndergarmentBottom = censorNudity;
|
||||||
|
|
||||||
foreach (var markingList in humanoid.MarkingSet.Markings.Values)
|
foreach (var markingList in humanoid.MarkingSet.Markings.Values)
|
||||||
{
|
{
|
||||||
foreach (var marking in markingList)
|
foreach (var marking in markingList)
|
||||||
{
|
{
|
||||||
if (_markingManager.TryGetMarking(marking, out var markingPrototype))
|
if (_markingManager.TryGetMarking(marking, out var markingPrototype))
|
||||||
|
{
|
||||||
ApplyMarking(markingPrototype, marking.MarkingColors, marking.Visible, humanoid, sprite);
|
ApplyMarking(markingPrototype, marking.MarkingColors, marking.Visible, humanoid, sprite);
|
||||||
|
if (markingPrototype.BodyPart == HumanoidVisualLayers.UndergarmentTop)
|
||||||
|
applyUndergarmentTop = false;
|
||||||
|
else if (markingPrototype.BodyPart == HumanoidVisualLayers.UndergarmentBottom)
|
||||||
|
applyUndergarmentBottom = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
humanoid.ClientOldMarkings = new MarkingSet(humanoid.MarkingSet);
|
humanoid.ClientOldMarkings = new MarkingSet(humanoid.MarkingSet);
|
||||||
|
|
||||||
|
AddUndergarments(humanoid, sprite, applyUndergarmentTop, applyUndergarmentBottom);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ClearAllMarkings(HumanoidAppearanceComponent humanoid, SpriteComponent sprite)
|
private void ClearAllMarkings(HumanoidAppearanceComponent humanoid, SpriteComponent sprite)
|
||||||
|
|
@ -266,6 +294,31 @@ public sealed class HumanoidAppearanceSystem : SharedHumanoidAppearanceSystem
|
||||||
spriteComp.RemoveLayer(index);
|
spriteComp.RemoveLayer(index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void AddUndergarments(HumanoidAppearanceComponent humanoid, SpriteComponent sprite, bool undergarmentTop, bool undergarmentBottom)
|
||||||
|
{
|
||||||
|
if (undergarmentTop && humanoid.UndergarmentTop != null)
|
||||||
|
{
|
||||||
|
var marking = new Marking(humanoid.UndergarmentTop, new List<Color> { new Color() });
|
||||||
|
if (_markingManager.TryGetMarking(marking, out var prototype))
|
||||||
|
{
|
||||||
|
// Markings are added to ClientOldMarkings because otherwise it causes issues when toggling the feature on/off.
|
||||||
|
humanoid.ClientOldMarkings.Markings.Add(MarkingCategories.UndergarmentTop, new List<Marking>{ marking });
|
||||||
|
ApplyMarking(prototype, null, true, humanoid, sprite);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (undergarmentBottom && humanoid.UndergarmentBottom != null)
|
||||||
|
{
|
||||||
|
var marking = new Marking(humanoid.UndergarmentBottom, new List<Color> { new Color() });
|
||||||
|
if (_markingManager.TryGetMarking(marking, out var prototype))
|
||||||
|
{
|
||||||
|
humanoid.ClientOldMarkings.Markings.Add(MarkingCategories.UndergarmentBottom, new List<Marking>{ marking });
|
||||||
|
ApplyMarking(prototype, null, true, humanoid, sprite);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void ApplyMarking(MarkingPrototype markingPrototype,
|
private void ApplyMarking(MarkingPrototype markingPrototype,
|
||||||
IReadOnlyList<Color>? colors,
|
IReadOnlyList<Color>? colors,
|
||||||
bool visible,
|
bool visible,
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
<BoxContainer Orientation="Vertical">
|
<BoxContainer Orientation="Vertical">
|
||||||
<ScrollContainer VerticalExpand="True" HScrollEnabled="False">
|
<ScrollContainer VerticalExpand="True" HScrollEnabled="False">
|
||||||
<BoxContainer Orientation="Vertical" Margin="8">
|
<BoxContainer Orientation="Vertical" Margin="8">
|
||||||
|
<Label Text="{Loc 'ui-options-accessability-header-visuals'}"
|
||||||
|
StyleClasses="LabelKeyText"/>
|
||||||
<CheckBox Name="ReducedMotionCheckBox" Text="{Loc 'ui-options-reduced-motion'}" />
|
<CheckBox Name="ReducedMotionCheckBox" Text="{Loc 'ui-options-reduced-motion'}" />
|
||||||
<CheckBox Name="EnableColorNameCheckBox" Text="{Loc 'ui-options-enable-color-name'}" />
|
<CheckBox Name="EnableColorNameCheckBox" Text="{Loc 'ui-options-enable-color-name'}" />
|
||||||
<CheckBox Name="ColorblindFriendlyCheckBox" Text="{Loc 'ui-options-colorblind-friendly'}" />
|
<CheckBox Name="ColorblindFriendlyCheckBox" Text="{Loc 'ui-options-colorblind-friendly'}" />
|
||||||
|
|
@ -12,6 +14,9 @@
|
||||||
<ui:OptionSlider Name="SpeechBubbleTextOpacitySlider" Title="{Loc 'ui-options-speech-bubble-text-opacity'}" />
|
<ui:OptionSlider Name="SpeechBubbleTextOpacitySlider" Title="{Loc 'ui-options-speech-bubble-text-opacity'}" />
|
||||||
<ui:OptionSlider Name="SpeechBubbleSpeakerOpacitySlider" Title="{Loc 'ui-options-speech-bubble-speaker-opacity'}" />
|
<ui:OptionSlider Name="SpeechBubbleSpeakerOpacitySlider" Title="{Loc 'ui-options-speech-bubble-speaker-opacity'}" />
|
||||||
<ui:OptionSlider Name="SpeechBubbleBackgroundOpacitySlider" Title="{Loc 'ui-options-speech-bubble-background-opacity'}" />
|
<ui:OptionSlider Name="SpeechBubbleBackgroundOpacitySlider" Title="{Loc 'ui-options-speech-bubble-background-opacity'}" />
|
||||||
|
<Label Text="{Loc 'ui-options-accessability-header-content'}"
|
||||||
|
StyleClasses="LabelKeyText"/>
|
||||||
|
<CheckBox Name="CensorNudityCheckBox" Text="{Loc 'ui-options-censor-nudity'}" />
|
||||||
</BoxContainer>
|
</BoxContainer>
|
||||||
</ScrollContainer>
|
</ScrollContainer>
|
||||||
<ui:OptionsTabControlRow Name="Control" Access="Public" />
|
<ui:OptionsTabControlRow Name="Control" Access="Public" />
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,8 @@ public sealed partial class AccessibilityTab : Control
|
||||||
Control.AddOptionPercentSlider(CCVars.SpeechBubbleSpeakerOpacity, SpeechBubbleSpeakerOpacitySlider);
|
Control.AddOptionPercentSlider(CCVars.SpeechBubbleSpeakerOpacity, SpeechBubbleSpeakerOpacitySlider);
|
||||||
Control.AddOptionPercentSlider(CCVars.SpeechBubbleBackgroundOpacity, SpeechBubbleBackgroundOpacitySlider);
|
Control.AddOptionPercentSlider(CCVars.SpeechBubbleBackgroundOpacity, SpeechBubbleBackgroundOpacitySlider);
|
||||||
|
|
||||||
|
Control.AddOptionCheckBox(CCVars.AccessibilityClientCensorNudity, CensorNudityCheckBox);
|
||||||
|
|
||||||
Control.Initialize();
|
Control.Initialize();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -60,5 +60,17 @@ public sealed partial class CCVars
|
||||||
public static readonly CVarDef<float> SpeechBubbleBackgroundOpacity =
|
public static readonly CVarDef<float> SpeechBubbleBackgroundOpacity =
|
||||||
CVarDef.Create("accessibility.speech_bubble_background_opacity", 0.75f, CVar.CLIENTONLY | CVar.ARCHIVE);
|
CVarDef.Create("accessibility.speech_bubble_background_opacity", 0.75f, CVar.CLIENTONLY | CVar.ARCHIVE);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// If enabled, censors character nudity by forcing clothes markings on characters, selected by the client.
|
||||||
|
/// Both this and AccessibilityServerCensorNudity must be false to display nudity on the client.
|
||||||
|
/// </summary>
|
||||||
|
public static readonly CVarDef<bool> AccessibilityClientCensorNudity =
|
||||||
|
CVarDef.Create("accessibility.censor_nudity", false, CVar.CLIENTONLY | CVar.ARCHIVE);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// If enabled, censors character nudity by forcing clothes markings on characters, selected by the server.
|
||||||
|
/// Both this and AccessibilityClientCensorNudity must be false to display nudity on the client.
|
||||||
|
/// </summary>
|
||||||
|
public static readonly CVarDef<bool> AccessibilityServerCensorNudity =
|
||||||
|
CVarDef.Create("accessibility.server_censor_nudity", false, CVar.ARCHIVE | CVar.REPLICATED | CVar.SERVER);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -88,6 +88,15 @@ public sealed partial class HumanoidAppearanceComponent : Component
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DataField]
|
[DataField]
|
||||||
public HashSet<HumanoidVisualLayers> HideLayersOnEquip = [HumanoidVisualLayers.Hair];
|
public HashSet<HumanoidVisualLayers> HideLayersOnEquip = [HumanoidVisualLayers.Hair];
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Which markings the humanoid defaults to when nudity is toggled off.
|
||||||
|
/// </summary>
|
||||||
|
[DataField]
|
||||||
|
public ProtoId<MarkingPrototype>? UndergarmentTop = new ProtoId<MarkingPrototype>("UndergarmentTopTanktop");
|
||||||
|
|
||||||
|
[DataField]
|
||||||
|
public ProtoId<MarkingPrototype>? UndergarmentBottom = new ProtoId<MarkingPrototype>("UndergarmentBottomBoxers");
|
||||||
}
|
}
|
||||||
|
|
||||||
[DataDefinition]
|
[DataDefinition]
|
||||||
|
|
|
||||||
|
|
@ -10,9 +10,9 @@ namespace Content.Shared.Humanoid
|
||||||
Tail,
|
Tail,
|
||||||
Hair,
|
Hair,
|
||||||
FacialHair,
|
FacialHair,
|
||||||
|
UndergarmentTop,
|
||||||
|
UndergarmentBottom,
|
||||||
Chest,
|
Chest,
|
||||||
Underwear, // DeltaV
|
|
||||||
Undershirt, // DeltaV
|
|
||||||
Head,
|
Head,
|
||||||
Snout,
|
Snout,
|
||||||
HeadSide, // side parts (i.e., frills)
|
HeadSide, // side parts (i.e., frills)
|
||||||
|
|
@ -21,7 +21,6 @@ namespace Content.Shared.Humanoid
|
||||||
RArm,
|
RArm,
|
||||||
LArm,
|
LArm,
|
||||||
RHand,
|
RHand,
|
||||||
|
|
||||||
LHand,
|
LHand,
|
||||||
RLeg,
|
RLeg,
|
||||||
LLeg,
|
LLeg,
|
||||||
|
|
|
||||||
|
|
@ -13,8 +13,8 @@ namespace Content.Shared.Humanoid.Markings
|
||||||
HeadSide,
|
HeadSide,
|
||||||
Snout,
|
Snout,
|
||||||
Chest,
|
Chest,
|
||||||
Underwear, // DeltaV
|
UndergarmentTop,
|
||||||
Undershirt, // DeltaV
|
UndergarmentBottom,
|
||||||
Arms,
|
Arms,
|
||||||
Legs,
|
Legs,
|
||||||
Tail,
|
Tail,
|
||||||
|
|
@ -34,9 +34,9 @@ namespace Content.Shared.Humanoid.Markings
|
||||||
HumanoidVisualLayers.HeadTop => MarkingCategories.HeadTop,
|
HumanoidVisualLayers.HeadTop => MarkingCategories.HeadTop,
|
||||||
HumanoidVisualLayers.HeadSide => MarkingCategories.HeadSide,
|
HumanoidVisualLayers.HeadSide => MarkingCategories.HeadSide,
|
||||||
HumanoidVisualLayers.Snout => MarkingCategories.Snout,
|
HumanoidVisualLayers.Snout => MarkingCategories.Snout,
|
||||||
HumanoidVisualLayers.Undershirt => MarkingCategories.Undershirt, // DeltaV
|
|
||||||
HumanoidVisualLayers.Underwear => MarkingCategories.Underwear, // DeltaV
|
|
||||||
HumanoidVisualLayers.Chest => MarkingCategories.Chest,
|
HumanoidVisualLayers.Chest => MarkingCategories.Chest,
|
||||||
|
HumanoidVisualLayers.UndergarmentTop => MarkingCategories.UndergarmentTop,
|
||||||
|
HumanoidVisualLayers.UndergarmentBottom => MarkingCategories.UndergarmentBottom,
|
||||||
HumanoidVisualLayers.RArm => MarkingCategories.Arms,
|
HumanoidVisualLayers.RArm => MarkingCategories.Arms,
|
||||||
HumanoidVisualLayers.LArm => MarkingCategories.Arms,
|
HumanoidVisualLayers.LArm => MarkingCategories.Arms,
|
||||||
HumanoidVisualLayers.RHand => MarkingCategories.Arms,
|
HumanoidVisualLayers.RHand => MarkingCategories.Arms,
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@ public static class MarkingColoring
|
||||||
public sealed partial class LayerColoringDefinition
|
public sealed partial class LayerColoringDefinition
|
||||||
{
|
{
|
||||||
[DataField("type")]
|
[DataField("type")]
|
||||||
public LayerColoringType Type = new SkinColoring();
|
public LayerColoringType? Type = new SkinColoring();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Coloring types that will be used if main coloring type will return nil
|
/// Coloring types that will be used if main coloring type will return nil
|
||||||
|
|
@ -105,7 +105,9 @@ public sealed partial class LayerColoringDefinition
|
||||||
|
|
||||||
public Color GetColor(Color? skin, Color? eyes, MarkingSet markingSet)
|
public Color GetColor(Color? skin, Color? eyes, MarkingSet markingSet)
|
||||||
{
|
{
|
||||||
var color = Type.GetColor(skin, eyes, markingSet);
|
Color? color = null;
|
||||||
|
if (Type != null)
|
||||||
|
color = Type.GetColor(skin, eyes, markingSet);
|
||||||
if (color == null)
|
if (color == null)
|
||||||
{
|
{
|
||||||
foreach (var type in FallbackTypes)
|
foreach (var type in FallbackTypes)
|
||||||
|
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
markings-category-Undershirt = Undershirt
|
|
||||||
markings-category-Underwear = Underwear
|
|
||||||
|
|
@ -1 +1,2 @@
|
||||||
namepreset-lastfirst = {$last} {$first}
|
namepreset-lastfirst = {$last} {$first}
|
||||||
|
namepreset-lastnofirst = {$last}-no-{$first}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
## Species Names
|
## Species Names
|
||||||
|
|
||||||
|
species-name-oni = Oni
|
||||||
|
species-name-felinid = Felinid
|
||||||
species-name-vulpkanin = Vulpkanin
|
species-name-vulpkanin = Vulpkanin
|
||||||
species-name-harpy = Harpy
|
species-name-harpy = Harpy
|
||||||
species-name-rodentia = Rodentia
|
species-name-rodentia = Rodentia
|
||||||
|
|
|
||||||
|
|
@ -16,14 +16,5 @@ marking-UndershirtRolledSleeveless = Tanktop (Rolled)
|
||||||
marking-UndershirtNanotrasen-nanotrasen = Undershirt
|
marking-UndershirtNanotrasen-nanotrasen = Undershirt
|
||||||
marking-UndershirtNanotrasen = Undershirt (Nanotrasen)
|
marking-UndershirtNanotrasen = Undershirt (Nanotrasen)
|
||||||
|
|
||||||
marking-UndershirtBinder-binder = Binder
|
|
||||||
marking-UndershirtBinder = Binder
|
|
||||||
|
|
||||||
marking-UndershirtBraClassic-classic = Bra
|
|
||||||
marking-UndershirtBraClassic = Bra (Classic)
|
|
||||||
|
|
||||||
marking-UndershirtBraSports-sports = Bra
|
|
||||||
marking-UndershirtBraSports = Bra (Sports)
|
|
||||||
|
|
||||||
marking-UndershirtBraStrapless-strapless = Bra
|
marking-UndershirtBraStrapless-strapless = Bra
|
||||||
marking-UndershirtBraStrapless = Bra (Strapless)
|
marking-UndershirtBraStrapless = Bra (Strapless)
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,4 @@
|
||||||
marking-UnderwearDefault-boxers = Underwear
|
|
||||||
marking-UnderwearDefault = Underwear (Default)
|
|
||||||
marking-UnderwearBriefs-briefs = Underwear
|
|
||||||
marking-UnderwearBriefs = Underwear (Briefs)
|
|
||||||
marking-UnderwearLowriders-lowriders = Underwear
|
marking-UnderwearLowriders-lowriders = Underwear
|
||||||
marking-UnderwearLowriders = Underwear (Lowriders)
|
marking-UnderwearLowriders = Underwear (Lowriders)
|
||||||
marking-UnderwearSatin-satin = Underwear
|
|
||||||
marking-UnderwearSatin = Underwear (Satin)
|
|
||||||
marking-UnderwearTanga-tanga = Underwear
|
marking-UnderwearTanga-tanga = Underwear
|
||||||
marking-UnderwearTanga = Underwear (Tanga)
|
marking-UnderwearTanga = Underwear (Tanga)
|
||||||
|
|
|
||||||
|
|
@ -279,6 +279,9 @@ cmd-options-help = Usage: options [tab]
|
||||||
|
|
||||||
## Accessibility menu
|
## Accessibility menu
|
||||||
|
|
||||||
|
ui-options-accessability-header-visuals = Visuals
|
||||||
|
ui-options-accessability-header-content = Content
|
||||||
|
|
||||||
ui-options-enable-color-name = Add colors to character names
|
ui-options-enable-color-name = Add colors to character names
|
||||||
ui-options-colorblind-friendly = Colorblind friendly mode
|
ui-options-colorblind-friendly = Colorblind friendly mode
|
||||||
ui-options-reduced-motion = Reduce motion of visual effects
|
ui-options-reduced-motion = Reduce motion of visual effects
|
||||||
|
|
@ -289,6 +292,8 @@ ui-options-speech-bubble-text-opacity = Speech bubble text opacity
|
||||||
ui-options-speech-bubble-speaker-opacity = Speech bubble speaker opacity
|
ui-options-speech-bubble-speaker-opacity = Speech bubble speaker opacity
|
||||||
ui-options-speech-bubble-background-opacity = Speech bubble background opacity
|
ui-options-speech-bubble-background-opacity = Speech bubble background opacity
|
||||||
|
|
||||||
|
ui-options-censor-nudity = Censor character nudity
|
||||||
|
|
||||||
## Admin menu
|
## Admin menu
|
||||||
|
|
||||||
ui-options-enable-classic-overlay = Revert antag overlay to classic mode
|
ui-options-enable-classic-overlay = Revert antag overlay to classic mode
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
marking-UndergarmentTopTanktop = Tanktop
|
||||||
|
marking-UndergarmentTopBinder = Binder
|
||||||
|
marking-UndergarmentTopBra = Classic Bra
|
||||||
|
marking-UndergarmentTopSportsbra = Sports Bra
|
||||||
|
|
||||||
|
marking-UndergarmentBottomBoxers = Boxers
|
||||||
|
marking-UndergarmentBottomBriefs = Briefs
|
||||||
|
marking-UndergarmentBottomSatin = Satin
|
||||||
|
|
||||||
|
marking-UndergarmentTopTanktopVox = Tanktop
|
||||||
|
marking-UndergarmentTopBinderVox = Binder
|
||||||
|
marking-UndergarmentTopBraVox = Classic Bra
|
||||||
|
marking-UndergarmentTopSportsbraVox = Sports Bra
|
||||||
|
|
||||||
|
marking-UndergarmentBottomBoxersVox = Boxers
|
||||||
|
marking-UndergarmentBottomBriefsVox = Briefs
|
||||||
|
marking-UndergarmentBottomSatinVox = Satin
|
||||||
|
|
||||||
|
marking-UndergarmentBottomBoxersReptilian = Boxers
|
||||||
|
marking-UndergarmentBottomBriefsReptilian = Briefs
|
||||||
|
marking-UndergarmentBottomSatinReptilian = Satin
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
namepreset-lastnofirst = {$last}-no-{$first}
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
species-name-oni = Oni
|
|
||||||
species-name-felinid = Felinid
|
|
||||||
|
|
@ -20,6 +20,8 @@ markings-category-Head = Head
|
||||||
markings-category-HeadTop = Head (Top)
|
markings-category-HeadTop = Head (Top)
|
||||||
markings-category-HeadSide = Head (Side)
|
markings-category-HeadSide = Head (Side)
|
||||||
markings-category-Snout = Snout
|
markings-category-Snout = Snout
|
||||||
|
markings-category-UndergarmentTop = Undergarment (Top)
|
||||||
|
markings-category-UndergarmentBottom = Undergarment (Bottom)
|
||||||
markings-category-Chest = Chest
|
markings-category-Chest = Chest
|
||||||
markings-category-Arms = Arms
|
markings-category-Arms = Arms
|
||||||
markings-category-Legs = Legs
|
markings-category-Legs = Legs
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,223 @@
|
||||||
|
# These options are kept very sparse to not put emphasis on nudity, and to provide a base for players to feel comfortable with.
|
||||||
|
# It's unlikely more will be added to upstream for cosmetic reasons.
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomBoxers
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: boxers
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomBriefs
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: briefs
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomSatin
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: satin
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopBra
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: classic
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopSportsbra
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: sports
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopBinder
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: binder
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopTanktop
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: tanktop
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomBoxersVox # Voxers.
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: boxers_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomBriefsVox
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: briefs_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomSatinVox
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: satin_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopBraVox
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: classic_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopSportsbraVox
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: sports_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopBinderVox
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: binder_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentTopTanktopVox
|
||||||
|
bodyPart: UndergarmentTop
|
||||||
|
markingCategory: UndergarmentTop
|
||||||
|
speciesRestriction: [Vox]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: tanktop_vox
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomBoxersReptilian
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: [Reptilian]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: boxers_reptilian
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomBriefsReptilian
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: [Reptilian]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: briefs_reptilian
|
||||||
|
|
||||||
|
- type: marking
|
||||||
|
id: UndergarmentBottomSatinReptilian
|
||||||
|
bodyPart: UndergarmentBottom
|
||||||
|
markingCategory: UndergarmentBottom
|
||||||
|
speciesRestriction: [Reptilian]
|
||||||
|
coloring:
|
||||||
|
default:
|
||||||
|
type: null
|
||||||
|
fallbackColor: '#FFFFFF'
|
||||||
|
sprites:
|
||||||
|
- sprite: Mobs/Customization/undergarments.rsi
|
||||||
|
state: satin_reptilian
|
||||||
|
|
@ -83,8 +83,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: ["jumpsuit"]
|
- map: ["jumpsuit"]
|
||||||
- map: ["enum.HumanoidVisualLayers.LFoot"]
|
- map: ["enum.HumanoidVisualLayers.LFoot"]
|
||||||
- map: ["enum.HumanoidVisualLayers.RFoot"]
|
- map: ["enum.HumanoidVisualLayers.RFoot"]
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: ["jumpsuit"]
|
- map: ["jumpsuit"]
|
||||||
- map: ["enum.HumanoidVisualLayers.LFoot"]
|
- map: ["enum.HumanoidVisualLayers.LFoot"]
|
||||||
- map: ["enum.HumanoidVisualLayers.RFoot"]
|
- map: ["enum.HumanoidVisualLayers.RFoot"]
|
||||||
|
|
@ -325,8 +325,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: ["jumpsuit"]
|
- map: ["jumpsuit"]
|
||||||
- map: ["enum.HumanoidVisualLayers.LFoot"]
|
- map: ["enum.HumanoidVisualLayers.LFoot"]
|
||||||
- map: ["enum.HumanoidVisualLayers.RFoot"]
|
- map: ["enum.HumanoidVisualLayers.RFoot"]
|
||||||
|
|
|
||||||
|
|
@ -84,8 +84,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "jumpsuit" ]
|
- map: [ "jumpsuit" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
- Snout
|
- Snout
|
||||||
- HeadTop
|
- HeadTop
|
||||||
- HeadSide
|
- HeadSide
|
||||||
|
undergarmentBottom: UndergarmentBottomBoxersReptilian
|
||||||
- type: Hunger
|
- type: Hunger
|
||||||
- type: Puller
|
- type: Puller
|
||||||
needsHands: false
|
needsHands: false
|
||||||
|
|
@ -93,6 +94,7 @@
|
||||||
- Snout
|
- Snout
|
||||||
- HeadTop
|
- HeadTop
|
||||||
- HeadSide
|
- HeadSide
|
||||||
|
undergarmentBottom: UndergarmentBottomBoxersReptilian
|
||||||
- type: Inventory
|
- type: Inventory
|
||||||
speciesId: reptilian
|
speciesId: reptilian
|
||||||
femaleDisplacements:
|
femaleDisplacements:
|
||||||
|
|
|
||||||
|
|
@ -11,8 +11,10 @@
|
||||||
- type: Body
|
- type: Body
|
||||||
prototype: Vox
|
prototype: Vox
|
||||||
requiredLegs: 2
|
requiredLegs: 2
|
||||||
- type: HumanoidAppearance
|
- type: HumanoidAppearance
|
||||||
species: Vox
|
species: Vox
|
||||||
|
undergarmentTop: UndergarmentTopTanktopVox
|
||||||
|
undergarmentBottom: UndergarmentBottomBoxersVox
|
||||||
#- type: VoxAccent # Not yet coded
|
#- type: VoxAccent # Not yet coded
|
||||||
- type: Speech
|
- type: Speech
|
||||||
speechVerb: Vox
|
speechVerb: Vox
|
||||||
|
|
@ -71,6 +73,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "jumpsuit" ]
|
- map: [ "jumpsuit" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
||||||
|
|
@ -153,6 +157,8 @@
|
||||||
components:
|
components:
|
||||||
- type: HumanoidAppearance
|
- type: HumanoidAppearance
|
||||||
species: Vox
|
species: Vox
|
||||||
|
undergarmentTop: UndergarmentTopTanktopVox
|
||||||
|
undergarmentBottom: UndergarmentBottomBoxersVox
|
||||||
- type: Body
|
- type: Body
|
||||||
prototype: Vox
|
prototype: Vox
|
||||||
- type: Inventory
|
- type: Inventory
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@
|
||||||
sprites:
|
sprites:
|
||||||
Head: MobArachnidHead
|
Head: MobArachnidHead
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobArachnidTorso
|
Chest: MobArachnidTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -65,14 +65,6 @@
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
# Begin DeltaV changes.
|
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
# End DeltaV changes.
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@
|
||||||
Head: MobDionaHead
|
Head: MobDionaHead
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobDionaTorso
|
Chest: MobDionaTorso
|
||||||
Eyes: MobDionaEyes
|
Eyes: MobDionaEyes
|
||||||
LArm: MobDionaLArm
|
LArm: MobDionaLArm
|
||||||
|
|
@ -45,20 +45,18 @@
|
||||||
HeadSide:
|
HeadSide:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
|
UndergarmentTop:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
|
UndergarmentBottom:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
Legs:
|
Legs:
|
||||||
points: 2
|
points: 2
|
||||||
required: false
|
required: false
|
||||||
# Begin DeltaV changes.
|
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
# End DeltaV changes.
|
|
||||||
Arms:
|
Arms:
|
||||||
points: 2
|
points: 2
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,6 @@
|
||||||
Head: MobGingerbreadHead
|
Head: MobGingerbreadHead
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
|
||||||
Chest: MobGingerbreadTorso
|
Chest: MobGingerbreadTorso
|
||||||
Eyes: MobGingerbreadEyes
|
Eyes: MobGingerbreadEyes
|
||||||
LArm: MobGingerbreadLArm
|
LArm: MobGingerbreadLArm
|
||||||
|
|
|
||||||
|
|
@ -22,8 +22,8 @@
|
||||||
Hair: MobHumanoidAnyMarking
|
Hair: MobHumanoidAnyMarking
|
||||||
FacialHair: MobHumanoidAnyMarking
|
FacialHair: MobHumanoidAnyMarking
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobHumanTorso
|
Chest: MobHumanTorso
|
||||||
Eyes: MobHumanoidEyes
|
Eyes: MobHumanoidEyes
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
|
|
@ -59,17 +59,15 @@
|
||||||
HeadTop:
|
HeadTop:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
|
UndergarmentTop:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
|
UndergarmentBottom:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
# Begin DeltaV changes.
|
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
# End DeltaV changes.
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,8 @@
|
||||||
sprites:
|
sprites:
|
||||||
Head: MobMothHead
|
Head: MobMothHead
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobMothTorso
|
Chest: MobMothTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -66,17 +66,15 @@
|
||||||
Head:
|
Head:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
|
UndergarmentTop:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
|
UndergarmentBottom:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
# Begin DeltaV changes.
|
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
# End DeltaV changes.
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,8 @@
|
||||||
sprites:
|
sprites:
|
||||||
Head: MobReptilianHead
|
Head: MobReptilianHead
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobReptilianTorso
|
Chest: MobReptilianTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -57,17 +57,15 @@
|
||||||
HeadSide:
|
HeadSide:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
|
UndergarmentTop:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
|
UndergarmentBottom:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
Chest:
|
Chest:
|
||||||
points: 3
|
points: 3
|
||||||
required: false
|
required: false
|
||||||
# Begin DeltaV changes.
|
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
# End DeltaV changes.
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,8 @@
|
||||||
Head: MobSlimeHead
|
Head: MobSlimeHead
|
||||||
Hair: MobSlimeMarkingFollowSkin
|
Hair: MobSlimeMarkingFollowSkin
|
||||||
FacialHair: MobSlimeMarkingFollowSkin
|
FacialHair: MobSlimeMarkingFollowSkin
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobSlimeTorso
|
Chest: MobSlimeTorso
|
||||||
Eyes: MobHumanoidEyes
|
Eyes: MobHumanoidEyes
|
||||||
LArm: MobSlimeLArm
|
LArm: MobSlimeLArm
|
||||||
|
|
@ -40,14 +40,6 @@
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
# Begin DeltaV changes.
|
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
# End DeltaV changes.
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 4
|
points: 4
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -21,8 +21,8 @@
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Hair: MobHumanoidAnyMarking
|
Hair: MobHumanoidAnyMarking
|
||||||
FacialHair: MobHumanoidAnyMarking
|
FacialHair: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking # DeltaV
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking # DeltaV
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobVoxTorso
|
Chest: MobVoxTorso
|
||||||
Eyes: MobVoxEyes
|
Eyes: MobVoxEyes
|
||||||
LArm: MobVoxLArm
|
LArm: MobVoxLArm
|
||||||
|
|
@ -60,14 +60,12 @@
|
||||||
points: 4
|
points: 4
|
||||||
required: true
|
required: true
|
||||||
defaultMarkings: [ VoxLLegScales, VoxRLegScales, VoxRFootScales, VoxLFootScales ]
|
defaultMarkings: [ VoxLLegScales, VoxRLegScales, VoxRFootScales, VoxLFootScales ]
|
||||||
# Begin DeltaV changes.
|
UndergarmentTop:
|
||||||
Underwear:
|
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
Undershirt:
|
UndergarmentBottom:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
# End DeltaV changes.
|
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -109,8 +109,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ] # DeltaV
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "jumpsuit" ]
|
- map: [ "jumpsuit" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||||
|
|
@ -128,7 +128,7 @@
|
||||||
- map: [ "eyes" ]
|
- map: [ "eyes" ]
|
||||||
- map: [ "belt" ]
|
- map: [ "belt" ]
|
||||||
- map: [ "id" ]
|
- map: [ "id" ]
|
||||||
- map: [ "back" ]
|
- map: [ "back" ]
|
||||||
- map: [ "neck" ]
|
- map: [ "neck" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Tail" ] #in the utopian future we should probably have a wings enum inserted here so everyhting doesn't break
|
- map: [ "enum.HumanoidVisualLayers.Tail" ] #in the utopian future we should probably have a wings enum inserted here so everyhting doesn't break
|
||||||
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]
|
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@
|
||||||
# its fine, but its still very stupid that it has to be done like this instead of allowing sprites to just directly insert a stencil clear.
|
# its fine, but its still very stupid that it has to be done like this instead of allowing sprites to just directly insert a stencil clear.
|
||||||
# sprite refactor when
|
# sprite refactor when
|
||||||
state: l_leg
|
state: l_leg
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "jumpsuit" ]
|
- map: [ "jumpsuit" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "underpants" ]
|
- map: [ "underpants" ]
|
||||||
- map: [ "undershirt" ]
|
- map: [ "undershirt" ]
|
||||||
- map: [ "socks" ]
|
- map: [ "socks" ]
|
||||||
|
|
@ -177,8 +177,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "underpants" ]
|
- map: [ "underpants" ]
|
||||||
- map: [ "undershirt" ]
|
- map: [ "undershirt" ]
|
||||||
- map: [ "socks" ]
|
- map: [ "socks" ]
|
||||||
|
|
|
||||||
|
|
@ -45,8 +45,8 @@
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "jumpsuit" ]
|
- map: [ "jumpsuit" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||||
|
|
|
||||||
|
|
@ -45,8 +45,8 @@
|
||||||
sprite: _DV/Mobs/Customization/Vulpkanin/masking_helpers.rsi
|
sprite: _DV/Mobs/Customization/Vulpkanin/masking_helpers.rsi
|
||||||
state: female_full
|
state: female_full
|
||||||
visible: false
|
visible: false
|
||||||
- map: [ "enum.HumanoidVisualLayers.Underwear" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentBottom" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.Undershirt" ]
|
- map: [ "enum.HumanoidVisualLayers.UndergarmentTop" ]
|
||||||
- map: [ "jumpsuit" ]
|
- map: [ "jumpsuit" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||||
|
|
|
||||||
|
|
@ -35,12 +35,6 @@
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
@ -17,8 +17,8 @@
|
||||||
sprites:
|
sprites:
|
||||||
Head: MobChitinidHead
|
Head: MobChitinidHead
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobChitinidTorso
|
Chest: MobChitinidTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -69,12 +69,6 @@
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
sprites: MobHumanSprites
|
sprites: MobHumanSprites
|
||||||
markingLimits: MobFelinidMarkingLimits
|
markingLimits: MobFelinidMarkingLimits
|
||||||
dollPrototype: MobFelinidDummy
|
dollPrototype: MobFelinidDummy
|
||||||
skinColoration: Hues # DeltaV
|
skinColoration: Hues
|
||||||
|
|
||||||
- type: markingPoints
|
- type: markingPoints
|
||||||
id: MobFelinidMarkingLimits
|
id: MobFelinidMarkingLimits
|
||||||
|
|
@ -28,12 +28,6 @@
|
||||||
Chest:
|
Chest:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
@ -20,6 +20,8 @@
|
||||||
FacialHair: MobHumanoidAnyMarking
|
FacialHair: MobHumanoidAnyMarking
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Chest: MobFeroxiTorso
|
Chest: MobFeroxiTorso
|
||||||
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
Tail: MobHumanoidAnyMarking
|
Tail: MobHumanoidAnyMarking
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,8 @@
|
||||||
Hair: MobHumanoidAnyMarking
|
Hair: MobHumanoidAnyMarking
|
||||||
FacialHair: MobHumanoidAnyMarking
|
FacialHair: MobHumanoidAnyMarking
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobHarpyTorso
|
Chest: MobHarpyTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -53,12 +53,6 @@
|
||||||
points: 1
|
points: 1
|
||||||
required: true
|
required: true
|
||||||
defaultMarkings: [ HarpyChestDefault ]
|
defaultMarkings: [ HarpyChestDefault ]
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 2
|
points: 2
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -20,8 +20,8 @@
|
||||||
Hair: MobHumanoidAnyMarking
|
Hair: MobHumanoidAnyMarking
|
||||||
FacialHair: MobHumanoidAnyMarking
|
FacialHair: MobHumanoidAnyMarking
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobRodentiaTorso
|
Chest: MobRodentiaTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -55,12 +55,6 @@
|
||||||
Arms:
|
Arms:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Snout:
|
Snout:
|
||||||
points: 1
|
points: 1
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@
|
||||||
Hair: MobHumanoidAnyMarking
|
Hair: MobHumanoidAnyMarking
|
||||||
FacialHair: MobHumanoidAnyMarking
|
FacialHair: MobHumanoidAnyMarking
|
||||||
Snout: MobHumanoidAnyMarking
|
Snout: MobHumanoidAnyMarking
|
||||||
Underwear: MobHumanoidAnyMarking
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
Undershirt: MobHumanoidAnyMarking
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobVulpkaninTorso
|
Chest: MobVulpkaninTorso
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
|
@ -51,12 +51,6 @@
|
||||||
Head:
|
Head:
|
||||||
points: 3
|
points: 3
|
||||||
required: false
|
required: false
|
||||||
Underwear:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Undershirt:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Legs:
|
Legs:
|
||||||
points: 6
|
points: 6
|
||||||
required: false
|
required: false
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtDefault
|
id: UndershirtDefault
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -14,9 +14,9 @@
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtRolled
|
id: UndershirtRolled
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -28,9 +28,9 @@
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtSleeveless
|
id: UndershirtSleeveless
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -42,9 +42,9 @@
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtRolledSleeveless
|
id: UndershirtRolledSleeveless
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -56,9 +56,9 @@
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtGrossSleeveless
|
id: UndershirtGrossSleeveless
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -70,9 +70,9 @@
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtNanotrasen
|
id: UndershirtNanotrasen
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -82,53 +82,11 @@
|
||||||
- sprite: _Impstation/Mobs/Customization/undershirt.rsi
|
- sprite: _Impstation/Mobs/Customization/undershirt.rsi
|
||||||
state: nanotrasen
|
state: nanotrasen
|
||||||
|
|
||||||
- type: marking
|
|
||||||
id: UndershirtBinder
|
|
||||||
bodyPart: Undershirt
|
|
||||||
markingCategory: Undershirt
|
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
|
||||||
coloring:
|
|
||||||
default:
|
|
||||||
type:
|
|
||||||
!type:SimpleColoring
|
|
||||||
color: "#FFFFFF"
|
|
||||||
sprites:
|
|
||||||
- sprite: _Impstation/Mobs/Customization/undershirt.rsi
|
|
||||||
state: binder
|
|
||||||
|
|
||||||
- type: marking
|
|
||||||
id: UndershirtBraClassic
|
|
||||||
bodyPart: Undershirt
|
|
||||||
markingCategory: Undershirt
|
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
|
||||||
coloring:
|
|
||||||
default:
|
|
||||||
type:
|
|
||||||
!type:SimpleColoring
|
|
||||||
color: "#FFFFFF"
|
|
||||||
sprites:
|
|
||||||
- sprite: _Impstation/Mobs/Customization/undershirt.rsi
|
|
||||||
state: classic
|
|
||||||
|
|
||||||
- type: marking
|
|
||||||
id: UndershirtBraSports
|
|
||||||
bodyPart: Undershirt
|
|
||||||
markingCategory: Undershirt
|
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
|
||||||
coloring:
|
|
||||||
default:
|
|
||||||
type:
|
|
||||||
!type:SimpleColoring
|
|
||||||
color: "#FFFFFF"
|
|
||||||
sprites:
|
|
||||||
- sprite: _Impstation/Mobs/Customization/undershirt.rsi
|
|
||||||
state: sports
|
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UndershirtBraStrapless
|
id: UndershirtBraStrapless
|
||||||
bodyPart: Undershirt
|
bodyPart: UndergarmentTop
|
||||||
markingCategory: Undershirt
|
markingCategory: UndergarmentTop
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
|
||||||
|
|
@ -1,36 +1,8 @@
|
||||||
- type: marking
|
|
||||||
id: UnderwearDefault
|
|
||||||
bodyPart: Underwear
|
|
||||||
markingCategory: Underwear
|
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
|
||||||
coloring:
|
|
||||||
default:
|
|
||||||
type:
|
|
||||||
!type:SimpleColoring
|
|
||||||
color: "#FFFFFF"
|
|
||||||
sprites:
|
|
||||||
- sprite: _Impstation/Mobs/Customization/underwear.rsi
|
|
||||||
state: boxers
|
|
||||||
|
|
||||||
- type: marking
|
|
||||||
id: UnderwearBriefs
|
|
||||||
bodyPart: Underwear
|
|
||||||
markingCategory: Underwear
|
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
|
||||||
coloring:
|
|
||||||
default:
|
|
||||||
type:
|
|
||||||
!type:SimpleColoring
|
|
||||||
color: "#FFFFFF"
|
|
||||||
sprites:
|
|
||||||
- sprite: _Impstation/Mobs/Customization/underwear.rsi
|
|
||||||
state: briefs
|
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UnderwearLowriders
|
id: UnderwearLowriders
|
||||||
bodyPart: Underwear
|
bodyPart: UndergarmentBottom
|
||||||
markingCategory: Underwear
|
markingCategory: UndergarmentBottom
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
@ -40,25 +12,11 @@
|
||||||
- sprite: _Impstation/Mobs/Customization/underwear.rsi
|
- sprite: _Impstation/Mobs/Customization/underwear.rsi
|
||||||
state: lowriders
|
state: lowriders
|
||||||
|
|
||||||
- type: marking
|
|
||||||
id: UnderwearSatin
|
|
||||||
bodyPart: Underwear
|
|
||||||
markingCategory: Underwear
|
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
|
||||||
coloring:
|
|
||||||
default:
|
|
||||||
type:
|
|
||||||
!type:SimpleColoring
|
|
||||||
color: "#FFFFFF"
|
|
||||||
sprites:
|
|
||||||
- sprite: _Impstation/Mobs/Customization/underwear.rsi
|
|
||||||
state: satin
|
|
||||||
|
|
||||||
- type: marking
|
- type: marking
|
||||||
id: UnderwearTanga
|
id: UnderwearTanga
|
||||||
bodyPart: Underwear
|
bodyPart: UndergarmentBottom
|
||||||
markingCategory: Underwear
|
markingCategory: UndergarmentBottom
|
||||||
speciesRestriction: [Dwarf, Human, Reptilian, Arachnid, SlimePerson, Diona, Moth, Vulpkanin, Rodentia, Harpy, Felinid, Vox, Oni, Chitinid, Feroxi] # Delta V - Chitinid, Feroxi
|
speciesRestriction: null # DeltaV - removed restrictions
|
||||||
coloring:
|
coloring:
|
||||||
default:
|
default:
|
||||||
type:
|
type:
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,8 @@
|
||||||
Head: MobThavenHead
|
Head: MobThavenHead
|
||||||
HeadTop: MobHumanoidAnyMarking
|
HeadTop: MobHumanoidAnyMarking
|
||||||
HeadSide: MobHumanoidAnyMarking
|
HeadSide: MobHumanoidAnyMarking
|
||||||
|
UndergarmentTop: MobHumanoidAnyMarking
|
||||||
|
UndergarmentBottom: MobHumanoidAnyMarking
|
||||||
Chest: MobThavenTorso
|
Chest: MobThavenTorso
|
||||||
LArm: MobThavenLArm
|
LArm: MobThavenLArm
|
||||||
RArm: MobThavenRArm
|
RArm: MobThavenRArm
|
||||||
|
|
|
||||||
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
|
@ -0,0 +1,79 @@
|
||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "sprites taken from https://github.com/cmss13-devs/cmss13/blob/884ab172389b6fc54ef063f5fbea5e8b0a0a2235/icons/mob/humans/underwear.dmi and https://github.com/cmss13-devs/cmss13/blob/884ab172389b6fc54ef063f5fbea5e8b0a0a2235/icons/mob/humans/undershirt.dmi, edited by SlamBamActionman",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "briefs",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "satin",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "boxers",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "classic",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sports",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "binder",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "tanktop",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "briefs_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "satin_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "boxers_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "classic_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sports_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "binder_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "tanktop_vox",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "briefs_reptilian",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "satin_reptilian",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "boxers_reptilian",
|
||||||
|
"directions": 4
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 18 KiB |