Wallpaper (#424)

* wallpaper system

* fix startup ordering

* cool doAfters

* green test wallpapers

* wallpaper finite stacks

* dev update

* Update CP14ClientWallpaperSystem.cs

* fix wall rotations

* yippee

* Update battle_royale.yml

* Update test-ship.yml
This commit is contained in:
Ed
2024-08-28 17:11:32 +05:00
committed by GitHub
parent a944cd9834
commit aa5f9104df
30 changed files with 4839 additions and 3224 deletions

View File

@@ -0,0 +1,54 @@
using Content.Client.IconSmoothing;
using Content.Shared._CP14.Wallpaper;
using Robust.Client.GameObjects;
namespace Content.Client._CP14.Wallpaper;
public sealed class CP14ClientWallpaperSystem : CP14SharedWallpaperSystem
{
public override void Initialize()
{
SubscribeLocalEvent<CP14WallpaperHolderComponent, AfterAutoHandleStateEvent>(OnHandleState, after: new[] { typeof(IconSmoothSystem) });
SubscribeLocalEvent<CP14WallpaperHolderComponent, ComponentStartup>(OnStartup, after: new[] { typeof(IconSmoothSystem) });
}
private void OnStartup(Entity<CP14WallpaperHolderComponent> holder, ref ComponentStartup args)
{
if (!TryComp<SpriteComponent>(holder, out var sprite))
return;
UpdateVisuals(holder, sprite);
}
private void OnHandleState(Entity<CP14WallpaperHolderComponent> holder, ref AfterAutoHandleStateEvent args)
{
if (!TryComp<SpriteComponent>(holder, out var sprite))
return;
UpdateVisuals(holder, sprite);
}
private static void UpdateVisuals(Entity<CP14WallpaperHolderComponent> holder, SpriteComponent sprite)
{
//Remove old layers
foreach (var key in holder.Comp.RevealedLayers)
{
sprite.RemoveLayer(key);
}
holder.Comp.RevealedLayers.Clear();
//Add new layers
var counter = 0;
foreach (var wallpaper in holder.Comp.Layers)
{
var keyCode = $"wallpaper-layer-{counter}";
holder.Comp.RevealedLayers.Add(keyCode);
var index = sprite.LayerMapReserveBlank(keyCode);
sprite.LayerSetSprite(index, wallpaper);
counter++;
}
}
}

View File

@@ -0,0 +1,124 @@
using Content.Shared.DoAfter;
using Content.Shared.Interaction;
using Content.Shared.Stacks;
using Robust.Shared.Serialization;
using Robust.Shared.Utility;
namespace Content.Shared._CP14.Wallpaper;
public partial class CP14SharedWallpaperSystem : EntitySystem
{
[Dependency] private readonly SharedTransformSystem _transform = default!;
[Dependency] private readonly SharedDoAfterSystem _doAfter = default!;
[Dependency] private readonly SharedStackSystem _stack = default!;
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<CP14WallpaperHolderComponent, InteractUsingEvent>(OnInteractUsing);
SubscribeLocalEvent<CP14WallpaperHolderComponent, CP14WallpaperAddLayerDoAfterEvent>(OnAddDoAfter);
SubscribeLocalEvent<CP14WallpaperHolderComponent, CP14WallpaperRemoveLayersDoAfterEvent>(OnRemoveDoAfter);
}
private void OnRemoveDoAfter(Entity<CP14WallpaperHolderComponent> holder, ref CP14WallpaperRemoveLayersDoAfterEvent args)
{
if (args.Cancelled || args.Handled || args.Args.Target == null)
return;
holder.Comp.Layers.Clear();
Dirty(holder);
}
private void OnAddDoAfter(Entity<CP14WallpaperHolderComponent> holder, ref CP14WallpaperAddLayerDoAfterEvent args)
{
if (args.Cancelled || args.Handled || args.Args.Target == null)
return;
if (!TryComp<CP14WallpaperComponent>(args.Used, out var wallpaper))
return;
var pos1 = _transform.GetWorldPosition(args.User);
var pos2 = _transform.GetWorldPosition(holder);
var deltaX = pos2.X - pos1.X;
var deltaY = pos2.Y - pos1.Y;
string direction;
if (Math.Abs(deltaX) > Math.Abs(deltaY))
direction = deltaX > 0 ? "Right" : "Left";
else
direction = deltaY > 0 ? "Bottom" : "Top";
//TODO: is incorrectly calculated if the wall is turned the wrong way. Temporarily fixed by adding Transform noRot: true
switch (direction)
{
case "Bottom":
holder.Comp.Layers.Add(new SpriteSpecifier.Rsi(new ResPath(wallpaper.RsiPath), wallpaper.Bottom));
break;
case "Top":
holder.Comp.Layers.Add(new SpriteSpecifier.Rsi(new ResPath(wallpaper.RsiPath), wallpaper.Top));
break;
case "Left":
holder.Comp.Layers.Add(new SpriteSpecifier.Rsi(new ResPath(wallpaper.RsiPath), wallpaper.Left));
break;
case "Right":
holder.Comp.Layers.Add(new SpriteSpecifier.Rsi(new ResPath(wallpaper.RsiPath), wallpaper.Right));
break;
}
Dirty(holder);
//Remove item
if (TryComp<StackComponent>(args.Used, out var stack))
{
_stack.SetCount(args.Used.Value, stack.Count - 1, stack);
}
else
{
QueueDel(args.Used);
}
}
private void OnInteractUsing(Entity<CP14WallpaperHolderComponent> holder, ref InteractUsingEvent args)
{
if (TryComp<CP14WallpaperComponent>(args.Used, out var wallpaper))
{
var doAfterArgs = new DoAfterArgs(EntityManager, args.User, wallpaper.Delay, new CP14WallpaperAddLayerDoAfterEvent(), holder, holder, args.Used)
{
BreakOnDamage = true,
BreakOnMove = true,
MovementThreshold = 0.5f,
CancelDuplicate = false,
};
_doAfter.TryStartDoAfter(doAfterArgs);
return;
}
if (TryComp<CP14WallpaperRemoverComponent>(args.Used, out var remover))
{
var doAfterArgs = new DoAfterArgs(EntityManager, args.User, remover.Delay, new CP14WallpaperRemoveLayersDoAfterEvent(), holder, holder, args.Used)
{
BreakOnDamage = true,
BreakOnMove = true,
MovementThreshold = 0.5f,
CancelDuplicate = false,
};
_doAfter.TryStartDoAfter(doAfterArgs);
return;
}
}
}
[Serializable, NetSerializable]
public sealed partial class CP14WallpaperAddLayerDoAfterEvent : SimpleDoAfterEvent
{
}
[Serializable, NetSerializable]
public sealed partial class CP14WallpaperRemoveLayersDoAfterEvent : SimpleDoAfterEvent
{
}

View File

@@ -0,0 +1,24 @@
namespace Content.Shared._CP14.Wallpaper;
/// <summary>
/// After a delay, it adds a new layer of wallpaper, depending on the player's relative position to the wall
/// </summary>
[RegisterComponent, Access(typeof(CP14SharedWallpaperSystem))]
public sealed partial class CP14WallpaperComponent : Component
{
[DataField]
public float Delay = 1f;
[DataField(required: true)]
public string RsiPath = default!;
[DataField]
public string Bottom = "bottom";
[DataField]
public string Top = "top";
[DataField]
public string Left = "left";
[DataField]
public string Right = "right";
}

View File

@@ -0,0 +1,19 @@
using Robust.Shared.GameStates;
using Robust.Shared.Utility;
namespace Content.Shared._CP14.Wallpaper;
/// <summary>
/// Stores all wallpapers added to the wall
/// </summary>
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(true), Access(typeof(CP14SharedWallpaperSystem))]
public sealed partial class CP14WallpaperHolderComponent : Component
{
[DataField, AutoNetworkedField]
public List<SpriteSpecifier> Layers = new();
public HashSet<string> RevealedLayers = new();
[DataField]
public int MaxLayers = 4;
}

View File

@@ -0,0 +1,11 @@
namespace Content.Shared._CP14.Wallpaper;
/// <summary>
/// After a delay, it removes all wallpaper from the entity.
/// </summary>
[RegisterComponent, Access(typeof(CP14SharedWallpaperSystem))]
public sealed partial class CP14WallpaperRemoverComponent : Component
{
[DataField]
public float Delay = 1f;
}

View File

@@ -0,0 +1,2 @@
cp14-stack-wallpaper-pink = rolls of pink wallpaper
cp14-stack-wallpaper-green = rolls of green wallpaper

View File

@@ -0,0 +1,2 @@
cp14-stack-wallpaper-pink = рулоны розовых обоев
cp14-stack-wallpaper-green = рулоны зеленых обоев

File diff suppressed because it is too large Load Diff

View File

@@ -47,18 +47,18 @@ entities:
color: '#E0BA87FF'
- duration: 80
color: '#BFEEFFFF'
- duration: 80
- period: Night
duration: 80
color: '#385163FF'
period: Night
- duration: 80
- period: Night
duration: 80
color: '#060D12FF'
period: Night
- duration: 80
- period: Night
duration: 80
color: '#000000FF'
period: Night
- duration: 80
- period: Night
duration: 80
color: '#000000FF'
period: Night
- duration: 80
color: '#120906FF'
- uid: 2
@@ -45234,7 +45234,7 @@ entities:
- type: Transform
pos: -7.402588,-3.139393
parent: 2
- proto: CP14DungeonEntrance
- proto: CP14DungeonEntranceAutoLink
entities:
- uid: 111
components:
@@ -45252,6 +45252,73 @@ entities:
parent: 2
- type: CP14AutoLink
autoLinkKey: Test2
- proto: CP14EnergyCrystalMedium
entities:
- uid: 4137
components:
- type: Transform
pos: -5.355206,-3.3736444
parent: 2
- uid: 4170
components:
- type: Transform
pos: -5.3327107,-1.4508556
parent: 2
- uid: 4171
components:
- type: Transform
pos: -1.3509219,-2.384139
parent: 2
- uid: 4203
components:
- type: Transform
pos: 2.484643,-4.374394
parent: 2
- uid: 4205
components:
- type: Transform
pos: -5.2202306,-7.2914977
parent: 2
- uid: 4238
components:
- type: Transform
pos: 1.6185479,-7.34772
parent: 2
- uid: 4376
components:
- type: Transform
pos: 2.4958916,3.7547457
parent: 2
- uid: 4377
components:
- type: Transform
pos: -5.7601337,5.576335
parent: 2
- uid: 4378
components:
- type: Transform
pos: -9.721167,4.9129167
parent: 2
- uid: 4379
components:
- type: Transform
pos: -13.6681,3.6985235
parent: 2
- uid: 4380
components:
- type: Transform
pos: -13.173189,0.15893555
parent: 2
- uid: 4408
components:
- type: Transform
pos: -10.299928,-1.2354509
parent: 2
- uid: 4409
components:
- type: Transform
pos: 2.1696048,1.1324446
parent: 2
- proto: CP14FenceWoodHighCorner
entities:
- uid: 624
@@ -47640,214 +47707,179 @@ entities:
parent: 2
- proto: CP14WallBrownbrick
entities:
- uid: 533
- uid: 4
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 42.5,26.5
parent: 2
- uid: 673
- uid: 5
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 42.5,25.5
parent: 2
- uid: 751
- uid: 6
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,16.5
parent: 2
- uid: 752
- uid: 11
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 6.5,17.5
parent: 2
- uid: 753
- uid: 12
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 5.5,17.5
parent: 2
- uid: 754
- uid: 13
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,15.5
parent: 2
- uid: 755
- uid: 14
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,17.5
parent: 2
- uid: 756
- uid: 15
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,14.5
parent: 2
- uid: 757
- uid: 16
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,13.5
parent: 2
- uid: 758
- uid: 21
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,12.5
parent: 2
- uid: 759
- uid: 22
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,11.5
parent: 2
- uid: 760
- uid: 23
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,10.5
parent: 2
- uid: 761
- uid: 24
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 7.5,9.5
parent: 2
- uid: 762
- uid: 25
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 8.5,9.5
parent: 2
- uid: 763
- uid: 26
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 6.5,9.5
parent: 2
- uid: 870
- uid: 28
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -2.5,11.5
parent: 2
- uid: 871
- uid: 29
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -2.5,10.5
parent: 2
- uid: 874
- uid: 30
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -2.5,12.5
parent: 2
- uid: 875
- uid: 31
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -2.5,13.5
parent: 2
- uid: 876
- uid: 35
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -2.5,14.5
parent: 2
- uid: 877
- uid: 36
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -2.5,15.5
parent: 2
- uid: 879
- uid: 40
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: -1.5,17.5
parent: 2
- uid: 3966
- uid: 41
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 52.5,27.5
parent: 2
- uid: 4000
- uid: 42
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 52.5,32.5
parent: 2
- uid: 4034
- uid: 43
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 51.5,32.5
parent: 2
- uid: 4068
- uid: 44
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 50.5,32.5
parent: 2
- uid: 4102
- uid: 45
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 52.5,31.5
parent: 2
- uid: 4103
- uid: 46
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 52.5,28.5
parent: 2
- uid: 4136
- uid: 47
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 51.5,27.5
parent: 2
- uid: 4137
- uid: 57
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 52.5,30.5
parent: 2
- uid: 4170
- uid: 58
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 50.5,27.5
parent: 2
- uid: 4171
- uid: 59
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 52.5,29.5
parent: 2
- uid: 4203
- uid: 60
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 46.5,28.5
parent: 2
- uid: 4205
- uid: 61
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 49.5,27.5
parent: 2
- uid: 4238
- uid: 62
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 47.5,28.5
parent: 2
- proto: CP14WalletFilledTest
@@ -48668,142 +48700,142 @@ entities:
parent: 2
- proto: CP14WallStonebrick
entities:
- uid: 24
- uid: 63
components:
- type: Transform
pos: 4.5,5.5
parent: 2
- uid: 25
- uid: 64
components:
- type: Transform
pos: 5.5,5.5
parent: 2
- uid: 26
- uid: 65
components:
- type: Transform
pos: 6.5,5.5
parent: 2
- uid: 28
- uid: 69
components:
- type: Transform
pos: 8.5,5.5
parent: 2
- uid: 29
- uid: 70
components:
- type: Transform
pos: 9.5,5.5
parent: 2
- uid: 30
- uid: 71
components:
- type: Transform
pos: 10.5,5.5
parent: 2
- uid: 31
- uid: 72
components:
- type: Transform
pos: 10.5,4.5
parent: 2
- uid: 35
- uid: 73
components:
- type: Transform
pos: 10.5,0.5
parent: 2
- uid: 36
- uid: 74
components:
- type: Transform
pos: 10.5,-0.5
parent: 2
- uid: 40
- uid: 75
components:
- type: Transform
pos: 10.5,-4.5
parent: 2
- uid: 41
- uid: 76
components:
- type: Transform
pos: 10.5,-5.5
parent: 2
- uid: 42
- uid: 77
components:
- type: Transform
pos: 9.5,-5.5
parent: 2
- uid: 43
- uid: 78
components:
- type: Transform
pos: 8.5,-5.5
parent: 2
- uid: 44
- uid: 79
components:
- type: Transform
pos: 7.5,-5.5
parent: 2
- uid: 45
- uid: 80
components:
- type: Transform
pos: 6.5,-5.5
parent: 2
- uid: 46
- uid: 82
components:
- type: Transform
pos: 5.5,-5.5
parent: 2
- uid: 47
- uid: 83
components:
- type: Transform
pos: 4.5,-5.5
parent: 2
- uid: 94
- uid: 84
components:
- type: Transform
pos: 3.5,-2.5
parent: 2
- uid: 96
- uid: 91
components:
- type: Transform
pos: 3.5,-5.5
parent: 2
- uid: 97
- uid: 92
components:
- type: Transform
pos: 3.5,-4.5
parent: 2
- uid: 98
- uid: 93
components:
- type: Transform
pos: 3.5,-3.5
parent: 2
- uid: 99
- uid: 94
components:
- type: Transform
pos: 3.5,-1.5
parent: 2
- uid: 100
- uid: 96
components:
- type: Transform
pos: 3.5,-0.5
parent: 2
- uid: 101
- uid: 97
components:
- type: Transform
pos: 3.5,0.5
parent: 2
- uid: 102
- uid: 98
components:
- type: Transform
pos: 3.5,1.5
parent: 2
- uid: 103
- uid: 99
components:
- type: Transform
pos: 3.5,3.5
parent: 2
- uid: 104
- uid: 100
components:
- type: Transform
pos: 3.5,4.5
parent: 2
- uid: 105
- uid: 101
components:
- type: Transform
pos: 3.5,5.5
@@ -48815,206 +48847,206 @@ entities:
- type: Transform
pos: -1.5,-24.5
parent: 2
- uid: 4
- uid: 102
components:
- type: Transform
pos: -14.5,6.5
parent: 2
- uid: 5
- uid: 103
components:
- type: Transform
pos: -13.5,6.5
parent: 2
- uid: 6
- uid: 104
components:
- type: Transform
pos: -12.5,6.5
parent: 2
- uid: 11
- uid: 105
components:
- type: Transform
pos: -7.5,6.5
parent: 2
- uid: 12
components:
- type: Transform
pos: -6.5,6.5
parent: 2
- uid: 13
components:
- type: Transform
pos: -5.5,6.5
parent: 2
- uid: 14
components:
- type: Transform
pos: -4.5,6.5
parent: 2
- uid: 15
components:
- type: Transform
pos: -3.5,6.5
parent: 2
- uid: 16
components:
- type: Transform
pos: -2.5,6.5
parent: 2
- uid: 21
components:
- type: Transform
pos: 2.5,6.5
parent: 2
- uid: 22
components:
- type: Transform
pos: 3.5,6.5
parent: 2
- uid: 23
components:
- type: Transform
pos: 4.5,6.5
parent: 2
- uid: 57
components:
- type: Transform
pos: 4.5,-6.5
parent: 2
- uid: 58
components:
- type: Transform
pos: 4.5,-7.5
parent: 2
- uid: 59
components:
- type: Transform
pos: 4.5,-8.5
parent: 2
- uid: 60
components:
- type: Transform
pos: 3.5,-8.5
parent: 2
- uid: 61
components:
- type: Transform
pos: 2.5,-8.5
parent: 2
- uid: 62
components:
- type: Transform
pos: 1.5,-8.5
parent: 2
- uid: 63
components:
- type: Transform
pos: -0.5,-8.5
parent: 2
- uid: 64
components:
- type: Transform
pos: -1.5,-8.5
parent: 2
- uid: 65
components:
- type: Transform
pos: -2.5,-8.5
parent: 2
- uid: 69
components:
- type: Transform
pos: -6.5,-8.5
parent: 2
- uid: 70
components:
- type: Transform
pos: -7.5,-8.5
parent: 2
- uid: 71
components:
- type: Transform
pos: -8.5,-8.5
parent: 2
- uid: 72
components:
- type: Transform
pos: -8.5,-7.5
parent: 2
- uid: 73
components:
- type: Transform
pos: -8.5,-6.5
parent: 2
- uid: 74
components:
- type: Transform
pos: -8.5,-5.5
parent: 2
- uid: 75
components:
- type: Transform
pos: -8.5,-4.5
parent: 2
- uid: 76
components:
- type: Transform
pos: -8.5,-3.5
parent: 2
- uid: 77
components:
- type: Transform
pos: -8.5,-2.5
parent: 2
- uid: 78
components:
- type: Transform
pos: -9.5,-2.5
parent: 2
- uid: 79
components:
- type: Transform
pos: -10.5,-2.5
parent: 2
- uid: 80
components:
- type: Transform
pos: -11.5,-2.5
parent: 2
- uid: 82
components:
- type: Transform
pos: -13.5,-2.5
parent: 2
- uid: 83
components:
- type: Transform
pos: -14.5,-2.5
parent: 2
- uid: 84
components:
- type: Transform
pos: -14.5,-1.5
parent: 2
- uid: 91
components:
- type: Transform
pos: -14.5,5.5
parent: 2
- uid: 92
components:
- type: Transform
pos: -7.5,-2.5
parent: 2
- uid: 93
components:
- type: Transform
pos: -6.5,-2.5
parent: 2
- uid: 513
components:
- type: Transform
pos: 2.5,-24.5
parent: 2
- uid: 533
components:
- type: Transform
pos: -6.5,6.5
parent: 2
- uid: 673
components:
- type: Transform
pos: -5.5,6.5
parent: 2
- uid: 751
components:
- type: Transform
pos: -4.5,6.5
parent: 2
- uid: 752
components:
- type: Transform
pos: -3.5,6.5
parent: 2
- uid: 753
components:
- type: Transform
pos: -2.5,6.5
parent: 2
- uid: 754
components:
- type: Transform
pos: 2.5,6.5
parent: 2
- uid: 755
components:
- type: Transform
pos: 3.5,6.5
parent: 2
- uid: 756
components:
- type: Transform
pos: 4.5,6.5
parent: 2
- uid: 757
components:
- type: Transform
pos: 4.5,-6.5
parent: 2
- uid: 758
components:
- type: Transform
pos: 4.5,-7.5
parent: 2
- uid: 759
components:
- type: Transform
pos: 4.5,-8.5
parent: 2
- uid: 760
components:
- type: Transform
pos: 3.5,-8.5
parent: 2
- uid: 761
components:
- type: Transform
pos: 2.5,-8.5
parent: 2
- uid: 762
components:
- type: Transform
pos: 1.5,-8.5
parent: 2
- uid: 763
components:
- type: Transform
pos: -0.5,-8.5
parent: 2
- uid: 781
components:
- type: Transform
pos: -1.5,-8.5
parent: 2
- uid: 782
components:
- type: Transform
pos: -2.5,-8.5
parent: 2
- uid: 783
components:
- type: Transform
pos: -6.5,-8.5
parent: 2
- uid: 784
components:
- type: Transform
pos: -7.5,-8.5
parent: 2
- uid: 785
components:
- type: Transform
pos: -8.5,-8.5
parent: 2
- uid: 786
components:
- type: Transform
pos: -8.5,-7.5
parent: 2
- uid: 870
components:
- type: Transform
pos: -8.5,-6.5
parent: 2
- uid: 871
components:
- type: Transform
pos: -8.5,-5.5
parent: 2
- uid: 874
components:
- type: Transform
pos: -8.5,-4.5
parent: 2
- uid: 875
components:
- type: Transform
pos: -8.5,-3.5
parent: 2
- uid: 876
components:
- type: Transform
pos: -8.5,-2.5
parent: 2
- uid: 877
components:
- type: Transform
pos: -9.5,-2.5
parent: 2
- uid: 879
components:
- type: Transform
pos: -10.5,-2.5
parent: 2
- uid: 3966
components:
- type: Transform
pos: -11.5,-2.5
parent: 2
- uid: 4000
components:
- type: Transform
pos: -13.5,-2.5
parent: 2
- uid: 4034
components:
- type: Transform
pos: -14.5,-2.5
parent: 2
- uid: 4068
components:
- type: Transform
pos: -14.5,-1.5
parent: 2
- uid: 4102
components:
- type: Transform
pos: -14.5,5.5
parent: 2
- uid: 4103
components:
- type: Transform
pos: -7.5,-2.5
parent: 2
- uid: 4136
components:
- type: Transform
pos: -6.5,-2.5
parent: 2
- proto: CP14WildSage
entities:
- uid: 155

View File

@@ -15,6 +15,7 @@ entities:
name: Map Entity
- type: Transform
- type: Map
mapPaused: True
- type: PhysicsMap
- type: GridTree
- type: MovedGrids
@@ -17607,178 +17608,6 @@ entities:
- type: Transform
pos: 23.5,19.5
parent: 2
- proto: CP14CaveStoneWall
entities:
- uid: 1589
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -11.5,-11.5
parent: 2
- uid: 1590
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -10.5,-11.5
parent: 2
- uid: 1591
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -9.5,-12.5
parent: 2
- uid: 1592
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -8.5,-12.5
parent: 2
- uid: 1593
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -7.5,-12.5
parent: 2
- uid: 1600
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -12.5,-11.5
parent: 2
- uid: 1601
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -12.5,-10.5
parent: 2
- uid: 1613
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -13.5,-9.5
parent: 2
- uid: 1625
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -10.5,-12.5
parent: 2
- uid: 1626
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -13.5,-8.5
parent: 2
- uid: 1638
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -13.5,-7.5
parent: 2
- uid: 1642
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -6.5,-11.5
parent: 2
- uid: 1650
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -13.5,-6.5
parent: 2
- uid: 1660
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -7.5,-13.5
parent: 2
- uid: 1661
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -13.5,-5.5
parent: 2
- uid: 1664
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -12.5,-9.5
parent: 2
- uid: 1665
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -12.5,-8.5
parent: 2
- uid: 1672
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -6.5,-12.5
parent: 2
- uid: 1675
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -11.5,-3.5
parent: 2
- uid: 1676
components:
- type: Transform
rot: 3.141592653589793 rad
pos: -7.5,-3.5
parent: 2
- uid: 3421
components:
- type: Transform
pos: 45.5,32.5
parent: 2
- uid: 3430
components:
- type: Transform
pos: 51.5,28.5
parent: 2
- uid: 3431
components:
- type: Transform
pos: 51.5,31.5
parent: 2
- uid: 3432
components:
- type: Transform
pos: 50.5,32.5
parent: 2
- uid: 3433
components:
- type: Transform
pos: 51.5,32.5
parent: 2
- uid: 3434
components:
- type: Transform
pos: 48.5,32.5
parent: 2
- uid: 3435
components:
- type: Transform
pos: 46.5,32.5
parent: 2
- uid: 3439
components:
- type: Transform
pos: 45.5,31.5
parent: 2
- uid: 3440
components:
- type: Transform
pos: 44.5,31.5
parent: 2
- uid: 3441
components:
- type: Transform
pos: 44.5,32.5
parent: 2
- proto: CP14CrystalRubiesBig
entities:
- uid: 3544
@@ -17837,7 +17666,7 @@ entities:
rot: 3.141592653589793 rad
pos: -11.306581,-8.269847
parent: 2
- proto: CP14DungeonExit
- proto: CP14DungeonExitAutoLink
entities:
- uid: 1005
components:
@@ -18162,14 +17991,6 @@ entities:
- type: Transform
pos: 4.5,0.5
parent: 2
- proto: CP14GatherableFlyAgaric
entities:
- uid: 857
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 4.5,-4.5
parent: 2
- proto: CP14GatherableFlyAgaric
entities:
- uid: 834
@@ -18178,6 +17999,12 @@ entities:
rot: 3.141592653589793 rad
pos: 6.5,-2.5
parent: 2
- uid: 857
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 4.5,-4.5
parent: 2
- proto: CP14OldLantern
entities:
- uid: 950
@@ -18194,22 +18021,22 @@ entities:
parent: 2
- proto: CP14WallBrownbrick
entities:
- uid: 3599
- uid: 1802
components:
- type: Transform
pos: 43.5,29.5
parent: 2
- uid: 3674
- uid: 1815
components:
- type: Transform
pos: 50.5,28.5
parent: 2
- uid: 3687
- uid: 1828
components:
- type: Transform
pos: 49.5,32.5
parent: 2
- uid: 3688
- uid: 1851
components:
- type: Transform
pos: 51.5,29.5
@@ -18360,99 +18187,251 @@ entities:
rot: 1.5707963267948966 rad
pos: 3.5,-5.5
parent: 2
- proto: CP14WallStonebrick
- proto: CP14WallStone
entities:
- uid: 982
components:
- type: Transform
pos: 7.5,0.5
pos: -11.5,-11.5
parent: 2
- uid: 983
components:
- type: Transform
pos: 8.5,0.5
pos: -10.5,-11.5
parent: 2
- uid: 984
components:
- type: Transform
pos: 8.5,-0.5
pos: -9.5,-12.5
parent: 2
- uid: 985
components:
- type: Transform
pos: 8.5,-1.5
pos: -8.5,-12.5
parent: 2
- uid: 986
components:
- type: Transform
pos: 8.5,-2.5
pos: -7.5,-12.5
parent: 2
- uid: 987
components:
- type: Transform
pos: 8.5,-3.5
pos: -12.5,-11.5
parent: 2
- uid: 1589
components:
- type: Transform
pos: -12.5,-10.5
parent: 2
- uid: 1590
components:
- type: Transform
pos: -13.5,-9.5
parent: 2
- uid: 1591
components:
- type: Transform
pos: -10.5,-12.5
parent: 2
- uid: 1592
components:
- type: Transform
pos: -13.5,-8.5
parent: 2
- uid: 1593
components:
- type: Transform
pos: -13.5,-7.5
parent: 2
- uid: 1600
components:
- type: Transform
pos: -6.5,-11.5
parent: 2
- uid: 1601
components:
- type: Transform
pos: -13.5,-6.5
parent: 2
- uid: 1613
components:
- type: Transform
pos: -7.5,-13.5
parent: 2
- uid: 1625
components:
- type: Transform
pos: -13.5,-5.5
parent: 2
- uid: 1626
components:
- type: Transform
pos: -12.5,-9.5
parent: 2
- uid: 1638
components:
- type: Transform
pos: -12.5,-8.5
parent: 2
- uid: 1642
components:
- type: Transform
pos: -6.5,-12.5
parent: 2
- uid: 1650
components:
- type: Transform
pos: -11.5,-3.5
parent: 2
- uid: 1660
components:
- type: Transform
pos: -7.5,-3.5
parent: 2
- uid: 1661
components:
- type: Transform
pos: 45.5,32.5
parent: 2
- uid: 1664
components:
- type: Transform
pos: 51.5,28.5
parent: 2
- uid: 1665
components:
- type: Transform
pos: 51.5,31.5
parent: 2
- uid: 1672
components:
- type: Transform
pos: 50.5,32.5
parent: 2
- uid: 1675
components:
- type: Transform
pos: 51.5,32.5
parent: 2
- uid: 1676
components:
- type: Transform
pos: 48.5,32.5
parent: 2
- uid: 1789
components:
- type: Transform
pos: 2.5,-1.5
pos: 46.5,32.5
parent: 2
- uid: 1790
components:
- type: Transform
pos: 2.5,-2.5
pos: 45.5,31.5
parent: 2
- uid: 1791
components:
- type: Transform
pos: 2.5,-3.5
pos: 44.5,31.5
parent: 2
- uid: 1792
components:
- type: Transform
pos: 2.5,-4.5
parent: 2
- uid: 1802
components:
- type: Transform
pos: 2.5,-0.5
parent: 2
- uid: 1815
components:
- type: Transform
pos: 2.5,0.5
parent: 2
- uid: 1828
components:
- type: Transform
pos: 3.5,0.5
parent: 2
- uid: 1851
components:
- type: Transform
pos: 5.5,7.5
pos: 44.5,32.5
parent: 2
- proto: CP14WallStonebrick
entities:
- uid: 1852
components:
- type: Transform
pos: 5.5,-6.5
pos: 7.5,0.5
parent: 2
- uid: 1866
components:
- type: Transform
pos: 2.5,-5.5
pos: 8.5,0.5
parent: 2
- uid: 1867
components:
- type: Transform
pos: 2.5,-6.5
pos: 8.5,-0.5
parent: 2
- uid: 1868
components:
- type: Transform
pos: 3.5,-6.5
pos: 8.5,-1.5
parent: 2
- uid: 1869
components:
- type: Transform
pos: 8.5,-2.5
parent: 2
- uid: 3421
components:
- type: Transform
pos: 8.5,-3.5
parent: 2
- uid: 3430
components:
- type: Transform
pos: 2.5,-1.5
parent: 2
- uid: 3431
components:
- type: Transform
pos: 2.5,-2.5
parent: 2
- uid: 3432
components:
- type: Transform
pos: 2.5,-3.5
parent: 2
- uid: 3433
components:
- type: Transform
pos: 2.5,-4.5
parent: 2
- uid: 3434
components:
- type: Transform
pos: 2.5,-0.5
parent: 2
- uid: 3435
components:
- type: Transform
pos: 2.5,0.5
parent: 2
- uid: 3439
components:
- type: Transform
pos: 3.5,0.5
parent: 2
- uid: 3440
components:
- type: Transform
pos: 5.5,7.5
parent: 2
- uid: 3441
components:
- type: Transform
pos: 5.5,-6.5
parent: 2
- uid: 3599
components:
- type: Transform
pos: 2.5,-5.5
parent: 2
- uid: 3674
components:
- type: Transform
pos: 2.5,-6.5
parent: 2
- uid: 3687
components:
- type: Transform
pos: 3.5,-6.5
parent: 2
- uid: 3688
components:
- type: Transform
pos: 4.5,-6.5

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -77,6 +77,7 @@
- type: Utensil
types:
- Knife
- type: CP14WallpaperRemover
- type: entity
id: CP14BaseWeaponDestructible

View File

@@ -0,0 +1,54 @@
- type: entity
id: CP14BaseWallpaper
abstract: true
parent: BaseItem
description: Thin paper wallpaper. You can glue them on the walls from different sides, or peel them off with any sharp object.
components:
- type: Item
size: Normal
- type: Sprite
sprite: _CP14/Structures/Wallpaper/icons.rsi
- type: entity
id: CP14WallpaperPink1
parent: CP14BaseWallpaper
name: pink wallpaper
suffix: 1
components:
- type: Sprite
state: pink
- type: CP14Wallpaper
rsiPath: _CP14/Structures/Wallpaper/wallpaper_pink.rsi
- type: Stack
stackType: CP14WallpaperPink
count: 1
- type: entity
id: CP14WallpaperPink30
parent: CP14WallpaperPink1
suffix: 30
components:
- type: Stack
count: 30
- type: entity
id: CP14WallpaperGreen1
parent: CP14BaseWallpaper
name: green wallpaper
suffix: 1
components:
- type: Sprite
state: green
- type: CP14Wallpaper
rsiPath: _CP14/Structures/Wallpaper/wallpaper_green.rsi
- type: Stack
stackType: CP14WallpaperGreen
count: 1
- type: entity
id: CP14WallpaperGreen30
parent: CP14WallpaperGreen1
suffix: 30
components:
- type: Stack
count: 30

View File

@@ -9,6 +9,8 @@
snap:
- Wall
components:
- type: Transform
noRot: true
- type: Sprite
drawdepth: Mobs
- type: SpriteFade
@@ -167,6 +169,7 @@
- type: Construction
graph: CP14WallWood
node: WallWooden
- type: CP14WallpaperHolder
- type: entity
id: CP14WallCardboard
@@ -206,3 +209,4 @@
sprite: _CP14/Structures/Walls/cyan_wall.rsi
- type: IconSmooth
base: wall
- type: CP14WallpaperHolder

View File

@@ -0,0 +1,13 @@
- type: stack
id: CP14WallpaperPink
name: cp14-stack-wallpaper-pink
spawn: CP14WallpaperPink1
icon: { sprite: _CP14/Structures/Wallpaper/icons.rsi, state: pink }
maxCount: 30
- type: stack
id: CP14WallpaperGreen
name: cp14-stack-wallpaper-green
spawn: CP14WallpaperGreen1
icon: { sprite: _CP14/Structures/Wallpaper/icons.rsi, state: green }
maxCount: 30

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 B

View File

@@ -0,0 +1,17 @@
{
"version": 1,
"license": "All rights reserved for the CrystallPunk14 project only",
"copyright": "Created by TheShuEd (Github/discord) for CrystallPunk",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "pink"
},
{
"name": "green"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 380 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 544 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 B

View File

@@ -0,0 +1,27 @@
{
"version": 1,
"license": "All rights reserved for the CrystallPunk14 project only",
"copyright": "Created by TheShuEd (Github/discord) for CrystallPunk",
"size": {
"x": 32,
"y": 64
},
"states": [
{
"name": "bottom",
"directions": 4
},
{
"name": "top",
"directions": 4
},
{
"name": "left",
"directions": 4
},
{
"name": "right",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 532 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 549 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 554 B

View File

@@ -0,0 +1,27 @@
{
"version": 1,
"license": "All rights reserved for the CrystallPunk14 project only",
"copyright": "Created by TheShuEd (Github/discord) for CrystallPunk",
"size": {
"x": 32,
"y": 64
},
"states": [
{
"name": "bottom",
"directions": 4
},
{
"name": "top",
"directions": 4
},
{
"name": "left",
"directions": 4
},
{
"name": "right",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 555 B