Merge pull request #75 from crystallpunk-14/new-player-inventory

New player inventory
This commit is contained in:
Ed
2024-04-11 11:13:02 +03:00
committed by GitHub
77 changed files with 666 additions and 68 deletions

View File

@@ -36,13 +36,20 @@ public sealed class ClientClothingSystem : ClothingSystem
{Jumpsuit, "INNERCLOTHING"},
{"neck", "NECK"},
{"back", "BACKPACK"},
{"belt", "BELT"},
{"belt1", "BELT1"},
{"belt2", "BELT2"},
{"gloves", "HAND"},
{"shoes", "FEET"},
{"id", "IDCARD"},
{"pocket1", "POCKET1"},
{"pocket2", "POCKET2"},
{"suitstorage", "SUITSTORAGE"},
{"ring1", "RING1"},
{"ring2", "RING2"},
{"pants", "PANTS"},
{"shirt", "SHIRT"},
{"cloak", "CLOAK"},
{"keys", "KEYS"},
};
[Dependency] private readonly IResourceCache _cache = default!;

View File

@@ -22,6 +22,7 @@ using Content.Client.Stylesheets;
using Content.Client.Viewport;
using Content.Client.Voting;
using Content.Shared.Ame.Components;
using Content.Shared.CCVar;
using Content.Shared.Gravity;
using Content.Shared.Localizations;
using Robust.Client;
@@ -157,7 +158,7 @@ namespace Content.Client.Entry
_clientPreferencesManager.Initialize();
_euiManager.Initialize();
_voteManager.Initialize();
_userInterfaceManager.SetDefaultTheme("SS14DefaultTheme");
_userInterfaceManager.SetDefaultTheme(_configManager.GetCVar(CCVars.UIDefaultInterfaceTheme));
_userInterfaceManager.SetActiveTheme(_configManager.GetCVar(CVars.InterfaceTheme));
_documentParsingManager.Initialize();

View File

@@ -93,12 +93,12 @@ namespace Content.Client.Stylesheets
public static readonly Color DangerousRedFore = Color.FromHex("#BB3232");
public static readonly Color DisabledFore = Color.FromHex("#5A5A5A");
public static readonly Color ButtonColorDefault = Color.FromHex("#464966");
public static readonly Color ButtonColorDefault = Color.FromHex("#664e46");
public static readonly Color ButtonColorDefaultRed = Color.FromHex("#D43B3B");
public static readonly Color ButtonColorHovered = Color.FromHex("#575b7f");
public static readonly Color ButtonColorHovered = Color.FromHex("#7f6357");
public static readonly Color ButtonColorHoveredRed = Color.FromHex("#DF6B6B");
public static readonly Color ButtonColorPressed = Color.FromHex("#3e6c45");
public static readonly Color ButtonColorDisabled = Color.FromHex("#30313c");
public static readonly Color ButtonColorPressed = Color.FromHex("#6c4a3e");
public static readonly Color ButtonColorDisabled = Color.FromHex("#3c3330");
public static readonly Color ButtonColorCautionDefault = Color.FromHex("#ab3232");
public static readonly Color ButtonColorCautionHovered = Color.FromHex("#cf2f2f");

View File

@@ -631,6 +631,9 @@ namespace Content.Shared.CCVar
* Interface
*/
public static readonly CVarDef<string> UIDefaultInterfaceTheme =
CVarDef.Create("interface.default_theme", "CP14DefaultTheme", CVar.CLIENTONLY);
public static readonly CVarDef<string> UIClickSound =
CVarDef.Create("interface.click_sound", "/Audio/UserInterface/click.ogg", CVar.REPLICATED);
@@ -726,7 +729,7 @@ namespace Content.Shared.CCVar
public static readonly CVarDef<bool> CombatModeIndicatorsPointShow =
CVarDef.Create("hud.combat_mode_indicators_point_show", true, CVar.ARCHIVE | CVar.CLIENTONLY);
public static readonly CVarDef<bool> LoocAboveHeadShow =
CVarDef.Create("hud.show_looc_above_head", true, CVar.ARCHIVE | CVar.CLIENTONLY);
@@ -1225,7 +1228,7 @@ namespace Content.Shared.CCVar
/// </summary>
public static readonly CVarDef<bool> OocEnableDuringRound =
CVarDef.Create("ooc.enable_during_round", false, CVar.NOTIFY | CVar.REPLICATED | CVar.SERVER);
public static readonly CVarDef<bool> ShowOocPatronColor =
CVarDef.Create("ooc.show_ooc_patron_color", true, CVar.ARCHIVE | CVar.REPLICATED | CVar.CLIENT);

View File

@@ -26,5 +26,10 @@ public enum SlotFlags
LEGS = 1 << 13,
FEET = 1 << 14,
SUITSTORAGE = 1 << 15,
RING = 1 << 16,
PANTS = 1 << 17,
SHIRT = 1 << 18,
CLOAK = 1 << 19,
KEYS = 1 << 20,
All = ~NONE,
}

View File

@@ -28,6 +28,8 @@
state: unisex_full
visible: false
- map: ["jumpsuit"]
- map: [ "pants" ]
- map: [ "shirt" ]
- map: ["enum.HumanoidVisualLayers.LFoot"]
- map: ["enum.HumanoidVisualLayers.RFoot"]
- map: ["enum.HumanoidVisualLayers.LHand"]
@@ -40,6 +42,7 @@
- map: [ "belt" ]
- map: [ "id" ]
- map: [ "neck" ]
- map: [ "cloak" ]
- map: [ "back" ]
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]
- map: [ "enum.HumanoidVisualLayers.Hair" ]
@@ -347,12 +350,16 @@
state: body-overlay-2
visible: false
- map: [ "gloves" ]
- map: [ "ring1" ]
- map: [ "ring2" ]
- map: [ "shoes" ]
- map: [ "ears" ]
- map: [ "outerClothing" ]
- map: [ "eyes" ]
- map: [ "belt" ]
- map: [ "belt1" ]
- map: [ "belt2" ]
- map: [ "id" ]
- map: [ "keys" ]
- map: [ "neck" ]
- map: [ "back" ]
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]

View File

@@ -1,4 +1,5 @@
- type: entity
save: false
parent: CPBaseMobHuman
name: Mr. Human
id: CPMobHuman

View File

@@ -1,5 +1,5 @@
- type: entity
parent: CPBaseMobTiefling
id: CPMobTiefling
name: Mr. Tiefling
save: false
parent: CPBaseMobTiefling
name: Mr. Tiefling
id: CPMobTiefling

View File

@@ -0,0 +1,307 @@
- type: entity
parent:
- BaseMob
- MobDamageable
- MobCombat
id: CPBaseMobSpecies
save: false
abstract: true
components:
- type: Sprite
layers:
- map: [ "enum.HumanoidVisualLayers.Chest" ]
- map: [ "enum.HumanoidVisualLayers.Head" ]
- map: [ "enum.HumanoidVisualLayers.Snout" ]
- map: [ "enum.HumanoidVisualLayers.Eyes" ]
- map: [ "enum.HumanoidVisualLayers.RArm" ]
- map: [ "enum.HumanoidVisualLayers.LArm" ]
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
- shader: StencilClear
sprite: Mobs/Species/Human/parts.rsi #PJB on stencil clear being on the left leg: "...this is 'fine'" -https://github.com/space-wizards/space-station-14/pull/12217#issuecomment-1291677115
# 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
state: l_leg
- shader: StencilMask
map: [ "enum.HumanoidVisualLayers.StencilMask" ]
sprite: Mobs/Customization/masking_helpers.rsi
state: unisex_full
visible: false
- map: [ "jumpsuit" ]
- map: [ "pants" ]
- map: [ "shirt" ]
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
- map: [ "enum.HumanoidVisualLayers.LHand" ]
- map: [ "enum.HumanoidVisualLayers.RHand" ]
- map: [ "gloves" ]
- map: [ "shoes" ]
- map: [ "ears" ]
- map: [ "outerClothing" ]
- map: [ "eyes" ]
- map: [ "belt" ]
- map: [ "id" ]
- map: [ "neck" ]
- map: [ "cloak" ]
- map: [ "back" ]
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]
- map: [ "enum.HumanoidVisualLayers.Hair" ]
- map: [ "enum.HumanoidVisualLayers.HeadSide" ]
- map: [ "enum.HumanoidVisualLayers.HeadTop" ]
- map: [ "enum.HumanoidVisualLayers.Tail" ]
- map: [ "mask" ]
- map: [ "head" ]
- map: [ "pocket1" ]
- map: [ "pocket2" ]
- map: ["enum.HumanoidVisualLayers.Handcuffs"]
color: "#ffffff"
sprite: Objects/Misc/handcuffs.rsi
state: body-overlay-2
visible: false
- map: [ "clownedon" ] # Dynamically generated
sprite: "Effects/creampie.rsi"
state: "creampie_human"
visible: false
- type: DamageVisuals
thresholds: [ 10, 20, 30, 50, 70, 100 ]
targetLayers:
- "enum.HumanoidVisualLayers.Chest"
- "enum.HumanoidVisualLayers.Head"
- "enum.HumanoidVisualLayers.LArm"
- "enum.HumanoidVisualLayers.LLeg"
- "enum.HumanoidVisualLayers.RArm"
- "enum.HumanoidVisualLayers.RLeg"
damageOverlayGroups:
Brute:
sprite: Mobs/Effects/brute_damage.rsi
color: "#FF0000"
Burn:
sprite: Mobs/Effects/burn_damage.rsi
- type: GenericVisualizer
visuals:
enum.CreamPiedVisuals.Creamed:
clownedon: # Not 'creampied' bc I can already see Skyrat complaining about conflicts.
True: { visible: true }
False: { visible: false }
- type: StatusIcon
bounds: -0.5,-0.5,0.5,0.5
- type: RotationVisuals
defaultRotation: 90
horizontalRotation: 90
- type: HumanoidAppearance
species: Human
- type: SlowOnDamage
speedModifierThresholds:
60: 0.7
80: 0.5
- type: Fixtures
fixtures: # TODO: This needs a second fixture just for mob collisions.
fix1:
shape:
!type:PhysShapeCircle
radius: 0.35
density: 185
restitution: 0.0
mask:
- MobMask
layer:
- MobLayer
- type: FloorOcclusion
- type: RangedDamageSound
soundGroups:
Brute:
collection:
MeatBulletImpact
soundTypes:
Heat:
collection:
MeatLaserImpact
- type: Reactive
groups:
Flammable: [ Touch ]
Extinguish: [ Touch ]
Acidic: [ Touch, Ingestion ]
reactions:
- reagents: [ Water, SpaceCleaner ]
methods: [ Touch ]
effects:
- !type:WashCreamPieReaction
- type: StatusEffects
allowed:
- Stun
- KnockedDown
- SlowedDown
- Stutter
- SeeingRainbows
- Electrocution
- Drunk
- SlurredSpeech
- RatvarianLanguage
- PressureImmunity
- Muted
- ForcedSleep
- TemporaryBlindness
- Pacified
- StaminaModifier
- type: Reflect
enabled: false
reflectProb: 0
- type: Body
prototype: Human
requiredLegs: 2
- type: Identity
- type: IdExaminable
- type: Hands
- type: Internals
- type: Inventory
- type: InventorySlots
- type: FloatingVisuals
- type: Climbing
- type: Cuffable
- type: Ensnareable
sprite: Objects/Misc/ensnare.rsi
state: icon
- type: AnimationPlayer
- type: Buckle
- type: CombatMode
canDisarm: true
- type: MeleeWeapon
soundHit:
collection: Punch
angle: 30
animation: WeaponArcFist
attackRate: 1
damage:
types:
Blunt: 5
- type: SleepEmitSound
- type: SSDIndicator
- type: StandingState
- type: Fingerprint
- type: Dna
- type: MindContainer
showExamineInfo: true
- type: InteractionPopup
successChance: 1
interactSuccessString: hugging-success-generic
interactSuccessSound: /Audio/Effects/thudswoosh.ogg
messagePerceivedByOthers: hugging-success-generic-others
- type: CanHostGuardian
- type: NpcFactionMember
factions:
- NanoTrasen
- type: CreamPied
- type: Stripping
- type: Strippable
- type: UserInterface
interfaces:
- key: enum.VoiceMaskUIKey.Key
type: VoiceMaskBoundUserInterface
- key: enum.HumanoidMarkingModifierKey.Key
type: HumanoidMarkingModifierBoundUserInterface
- key: enum.StrippingUiKey.Key
type: StrippableBoundUserInterface
- type: Puller
- type: Speech
speechSounds: Alto
- type: DamageForceSay
- type: Vocal
sounds:
Male: MaleHuman
Female: FemaleHuman
Unsexed: MaleHuman
- type: Emoting
- type: BodyEmotes
soundsId: GeneralBodyEmotes
- type: Grammar
attributes:
proper: true
- type: MobPrice
price: 1500 # Kidnapping a living person and selling them for cred is a good move.
deathPenalty: 0.01 # However they really ought to be living and intact, otherwise they're worth 100x less.
- type: Tag
tags:
- CanPilot
- FootstepSound
- DoorBumpOpener
- type: entity
parent:
- MobBloodstream
- MobRespirator
- MobAtmosStandard
- MobFlammable
- CPBaseMobSpecies
id: CPBaseMobSpeciesOrganic
save: false
abstract: true
components:
- type: Flashable
- type: Barotrauma
damage:
types:
Blunt: 0.50 #per second, scales with pressure and other constants.
Heat: 0.1
- type: PassiveDamage # Slight passive regen. Assuming one damage type, comes out to about 4 damage a minute.
allowedStates:
- Alive
damageCap: 20
damage:
types:
Heat: -0.07
groups:
Brute: -0.07
# Organs
- type: StatusEffects
allowed:
- Stun
- KnockedDown
- SlowedDown
- Stutter
- SeeingRainbows
- Electrocution
- ForcedSleep
- TemporaryBlindness
- Drunk
- SlurredSpeech
- RatvarianLanguage
- PressureImmunity
- Muted
- Pacified
- StaminaModifier
- type: Blindable
# Other
- type: Temperature
heatDamageThreshold: 325
coldDamageThreshold: 260
currentTemperature: 310.15
specificHeat: 42
coldDamage:
types:
Cold: 0.1 #per second, scales with temperature & other constants
heatDamage:
types:
Heat: 1.5 #per second, scales with temperature & other constants
- type: ThermalRegulator
metabolismHeat: 800
radiatedHeat: 100
implicitHeatRegulation: 500
sweatHeatRegulation: 2000
shiveringHeatRegulation: 2000
normalBodyTemperature: 310.15
thermalRegulationTemperatureThreshold: 25
- type: Perishable
- type: Butcherable
butcheringType: Spike # TODO human.
spawned:
- id: FoodMeat
amount: 5
- type: Respirator
damage:
types:
Asphyxiation: 1.0
damageRecovery:
types:
Asphyxiation: -1.0
- type: FireVisuals
alternateState: Standing

View File

@@ -1,6 +1,6 @@
# Anything human specific (e.g. UI, input) goes under MobHuman
- type: entity
parent: BaseMobSpeciesOrganic
parent: CPBaseMobSpeciesOrganic
id: CPBaseMobHuman
name: человеческая оболочка
abstract: true
@@ -8,15 +8,25 @@
- type: HumanoidAppearance
species: CPHuman
- type: Hunger
- type: Icon # It will not have an icon in the adminspawn menu without this. Body parts seem fine for whatever reason.
- type: Icon
sprite: _CP14/Mobs/Species/Human/parts.rsi
state: full
- type: Thirst
- type: Butcherable
butcheringType: Spike
spawned:
- id: FoodMeatHuman
amount: 5
- id: FoodMeatHuman
amount: 5
- type: Body
prototype: CPHuman
requiredLegs: 2
- type: Inventory
templateId: CPHuman
- type: entity
parent: BaseSpeciesDummy
id: CPMobHumanDummy
noSpawn: true
components:
- type: HumanoidAppearance
species: CPHuman

View File

@@ -1,5 +1,5 @@
- type: entity
parent: BaseMobSpeciesOrganic
parent: CPBaseMobSpeciesOrganic
id: CPBaseMobTiefling
name: Mr. Tiefling
abstract: true
@@ -11,10 +11,12 @@
requiredLegs: 2
- type: Hunger
- type: Icon
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: full
- type: Thirst
- type: Wagging
- type: Wagging
- type: Inventory
templateId: CPHuman
- type: entity
parent: BaseSpeciesDummy

View File

@@ -0,0 +1,123 @@
- type: inventoryTemplate
id: CPHuman
slots:
# Left hotbar
# 0, y
- name: ring1
slotTexture: ring
slotFlags: RING
uiWindowPos: 0,1
strippingWindowPos: 0,3
displayName: Ring
- name: neck
slotTexture: neck
slotFlags: NECK
uiWindowPos: 0,2
strippingWindowPos: 1,2
displayName: Neck
- name: eyes
slotTexture: eyes
slotFlags: EYES
uiWindowPos: 0,3
strippingWindowPos: 0,1
displayName: Eyes
# 1, y
- name: shoes
slotTexture: shoes
slotFlags: FEET
uiWindowPos: 1,0
strippingWindowPos: 1,5
displayName: Shoes
- name: pants
slotTexture: pants
slotFlags: PANTS
uiWindowPos: 1,1
strippingWindowPos: 1,4
displayName: Pants
- name: shirt
slotTexture: shirt
slotFlags: SHIRT
uiWindowPos: 1,2
strippingWindowPos: 1,3
displayName: Shirt
- name: head
slotTexture: head
slotFlags: HEAD
uiWindowPos: 1,3
strippingWindowPos: 1,1
displayName: Head
# 2, y
- name: gloves
slotTexture: gloves
slotFlags: GLOVES
uiWindowPos: 2,0
strippingWindowPos: 0,2
displayName: Gloves
- name: ring2
slotTexture: ring
slotFlags: RING
uiWindowPos: 2,1
strippingWindowPos: 2,3
displayName: Ring
- name: cloak
slotTexture: cloak
slotFlags: CLOAK
uiWindowPos: 2,2
strippingWindowPos: 2,2
displayName: Cloak
- name: mask
slotTexture: mask
slotFlags: MASK
uiWindowPos: 2,3
strippingWindowPos: 2,1
displayName: Mask
# Main hotbar
- name: belt1
slotTexture: belt
slotFlags: BELT
slotGroup: SecondHotbar
uiWindowPos: 0,0
strippingWindowPos: 0,4
displayName: Belt
- name: keys
slotTexture: keys
slotFlags: KEYS
slotGroup: SecondHotbar
uiWindowPos: 0,0
strippingWindowPos: 2,5
displayName: Keys
stripHidden: true
- name: back
slotTexture: back
slotFlags: BACK
slotGroup: SecondHotbar
uiWindowPos: 0,0
strippingWindowPos: 0,5
displayName: Back
# Right hand
# Left hand
- name: pocket1
slotTexture: pocket
slotFlags: POCKET
slotGroup: MainHotbar
uiWindowPos: 0,0
strippingWindowPos: 0,0
dependsOn: pants
displayName: Pocket
stripHidden: true
- name: pocket2
slotTexture: pocket
slotFlags: POCKET
slotGroup: MainHotbar
uiWindowPos: 1,0
strippingWindowPos: 1,0
dependsOn: pants
displayName: Pocket
stripHidden: true
- name: belt2
slotTexture: belt
slotFlags: BELT
slotGroup: MainHotbar
uiWindowPos: 2,0
strippingWindowPos: 2,4
displayName: Belt

View File

@@ -80,83 +80,83 @@
- type: humanoidBaseSprite
id: CPMobTieflingHead
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: head_m
- type: humanoidBaseSprite
id: CPMobTieflingHeadMale
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: head_m
- type: humanoidBaseSprite
id: CPMobTieflingHeadFemale
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: head_f
- type: humanoidBaseSprite
id: CPMobTieflingTorso
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: torso_m
- type: humanoidBaseSprite
id: CPMobTieflingTorsoMale
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: torso_m
- type: humanoidBaseSprite
id: CPMobTieflingTorsoFemale
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: torso_f
- type: humanoidBaseSprite
id: CPMobTieflingLLeg
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: l_leg
- type: humanoidBaseSprite
id: CPMobTieflingLArm
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: l_arm
- type: humanoidBaseSprite
id: CPMobTieflingLHand
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: l_hand
- type: humanoidBaseSprite
id: CPMobTieflingLFoot
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: l_foot
- type: humanoidBaseSprite
id: CPMobTieflingRLeg
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: r_leg
- type: humanoidBaseSprite
id: CPMobTieflingRArm
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: r_arm
- type: humanoidBaseSprite
id: CPMobTieflingRHand
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: r_hand
- type: humanoidBaseSprite
id: CPMobTieflingRFoot
baseSprite:
sprite: CrystallPunk/Mobs/Species/Tiefling/parts.rsi
sprite: _CP14/Mobs/Species/Tiefling/parts.rsi
state: r_foot

View File

@@ -0,0 +1,5 @@
- type: hudTheme
id: CP14DefaultTheme
name: ui-options-hud-theme-default
path: Default
order: -1

View File

@@ -0,0 +1,14 @@
- type: uiTheme
id: CP14DefaultTheme
path: /Textures//Interface/CrystallPunk/
colors:
whiteText: "#FFF5EE"
slotSelectedGold: "#e6b812"
slotColor: "#0f1215"
slotOutline: "#4a3930"
slotText: "#503b33"
nanoGold: "#A88B5E"
goodGreenFore: "#31843E"
concerningOrangeFore: "#A5762F"
dangerousRedFore: "#BB3232"
disabledFore: "#5A5A5A"

View File

@@ -1,41 +1,44 @@
- type: hudTheme
id: SS14DefaultTheme
name: ui-options-hud-theme-default
path: Default
order: -1
# Они не будут работать с новыми слотами
# А так же они не подходят под нашу атмосферу
- type: hudTheme
id: SS14PlasmafireTheme
name: ui-options-hud-theme-plasmafire
path: Plasmafire
order: 3
# - type: hudTheme
# id: SS14DefaultTheme
# name: ui-options-hud-theme-default
# path: Default
# order: -1
- type: hudTheme
id: SS14SlimecoreTheme
name: ui-options-hud-theme-slimecore
path: Slimecore
order: 2
# - type: hudTheme
# id: SS14PlasmafireTheme
# name: ui-options-hud-theme-plasmafire
# path: Plasmafire
# order: 3
- type: hudTheme
id: SS14ClockworkTheme
name: ui-options-hud-theme-clockwork
path: Clockwork
order: 4
# - type: hudTheme
# id: SS14SlimecoreTheme
# name: ui-options-hud-theme-slimecore
# path: Slimecore
# order: 2
- type: hudTheme
id: SS14RetroTheme
name: ui-options-hud-theme-retro
path: Retro
order: 6
# - type: hudTheme
# id: SS14ClockworkTheme
# name: ui-options-hud-theme-clockwork
# path: Clockwork
# order: 4
- type: hudTheme
id: SS14MinimalistTheme
name: ui-options-hud-theme-minimalist
path: Minimalist
order: 1
# - type: hudTheme
# id: SS14RetroTheme
# name: ui-options-hud-theme-retro
# path: Retro
# order: 6
- type: hudTheme
id: SS14AshenTheme
name: ui-options-hud-theme-ashen
path: Ashen
order: 5
# - type: hudTheme
# id: SS14MinimalistTheme
# name: ui-options-hud-theme-minimalist
# path: Minimalist
# order: 1
# - type: hudTheme
# id: SS14AshenTheme
# name: ui-options-hud-theme-ashen
# path: Ashen
# order: 5

View File

Before

Width:  |  Height:  |  Size: 294 B

After

Width:  |  Height:  |  Size: 294 B

View File

Before

Width:  |  Height:  |  Size: 414 B

After

Width:  |  Height:  |  Size: 414 B

View File

Before

Width:  |  Height:  |  Size: 402 B

After

Width:  |  Height:  |  Size: 402 B

View File

Before

Width:  |  Height:  |  Size: 438 B

After

Width:  |  Height:  |  Size: 438 B

View File

Before

Width:  |  Height:  |  Size: 396 B

After

Width:  |  Height:  |  Size: 396 B

View File

Before

Width:  |  Height:  |  Size: 406 B

After

Width:  |  Height:  |  Size: 406 B

View File

Before

Width:  |  Height:  |  Size: 379 B

After

Width:  |  Height:  |  Size: 379 B

View File

Before

Width:  |  Height:  |  Size: 376 B

After

Width:  |  Height:  |  Size: 376 B

View File

Before

Width:  |  Height:  |  Size: 391 B

After

Width:  |  Height:  |  Size: 391 B

View File

Before

Width:  |  Height:  |  Size: 312 B

After

Width:  |  Height:  |  Size: 312 B

View File

Before

Width:  |  Height:  |  Size: 371 B

After

Width:  |  Height:  |  Size: 371 B

View File

Before

Width:  |  Height:  |  Size: 610 B

After

Width:  |  Height:  |  Size: 610 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 B

View File

@@ -0,0 +1,110 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-NC-SA-3.0",
"copyright": "Taken from https://github.com/goonstation/goonstation at commit e77d85d9c1d93aa32da7702737ceeac2b56738ac, slightly modified by PixelTK",
"states": [
{
"name": "back",
},
{
"name": "belt"
},
{
"name": "block"
},
{
"name": "cloak"
},
{
"name": "ears"
},
{
"name": "ears_headset"
},
{
"name": "eyes"
},
{
"name": "glasses"
},
{
"name": "gloves"
},
{
"name": "hand_active"
},
{
"name": "hand_active_gold"
},
{
"name": "hand_l"
},
{
"name": "hand_l_no_letter"
},
{
"name": "hand_r"
},
{
"name": "hand_r_no_letter"
},
{
"name": "head"
},
{
"name": "id"
},
{
"name": "keys"
},
{
"name": "invtoggle"
},
{
"name": "mask"
},
{
"name": "neck"
},
{
"name": "pocket"
},
{
"name": "pants"
},
{
"name": "shoes"
},
{
"name": "ring"
},
{
"name": "suit"
},
{
"name": "suit_storage"
},
{
"name": "shirt"
},
{
"name": "uniform"
},
{
"name": "inventory"
},
{
"name": "pda"
},
{
"name": "web"
},
{
"name": "toggle"
}
]
}

View File

Before

Width:  |  Height:  |  Size: 294 B

After

Width:  |  Height:  |  Size: 294 B

View File

Before

Width:  |  Height:  |  Size: 410 B

After

Width:  |  Height:  |  Size: 410 B

View File

Before

Width:  |  Height:  |  Size: 381 B

After

Width:  |  Height:  |  Size: 381 B

View File

Before

Width:  |  Height:  |  Size: 392 B

After

Width:  |  Height:  |  Size: 392 B

View File

Before

Width:  |  Height:  |  Size: 371 B

After

Width:  |  Height:  |  Size: 371 B

View File

Before

Width:  |  Height:  |  Size: 372 B

After

Width:  |  Height:  |  Size: 372 B

View File

Before

Width:  |  Height:  |  Size: 391 B

After

Width:  |  Height:  |  Size: 391 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 B

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 278 B

After

Width:  |  Height:  |  Size: 214 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 453 B

After

Width:  |  Height:  |  Size: 273 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 458 B

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 431 B

After

Width:  |  Height:  |  Size: 249 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 267 B

After

Width:  |  Height:  |  Size: 254 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 285 B

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

After

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 322 B

After

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 B