Update mountain walls/alt-asteroids (#4777)
* Update mountain walls/alt-asteroids * no rot --------- Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
This commit is contained in:
parent
c0fa85de5d
commit
0dbf9647a3
|
|
@ -22,7 +22,9 @@ public sealed class TileWallsCommand : IConsoleCommand
|
|||
public string Help => $"Usage: {Command} <gridId> | {Command}";
|
||||
|
||||
public static readonly ProtoId<ContentTileDefinition> TilePrototypeId = "Plating";
|
||||
public static readonly ProtoId<ContentTileDefinition> TilePrototypeId2 = "FloorCave"; // Delta V - Add cave floor under asteroid rocks
|
||||
public static readonly ProtoId<TagPrototype> WallTag = "Wall";
|
||||
public static readonly ProtoId<TagPrototype> NaturalTag = "Natural"; // Delta V - Add cave floor under asteroid rocks
|
||||
public static readonly ProtoId<TagPrototype> DiagonalTag = "Diagonal";
|
||||
|
||||
public void Execute(IConsoleShell shell, string argStr, string[] args)
|
||||
|
|
@ -70,6 +72,8 @@ public sealed class TileWallsCommand : IConsoleCommand
|
|||
var tagSystem = _entManager.EntitySysManager.GetEntitySystem<TagSystem>();
|
||||
var underplating = _tileDefManager[TilePrototypeId];
|
||||
var underplatingTile = new Tile(underplating.TileId);
|
||||
var naturalunderplating = _tileDefManager[TilePrototypeId2]; // Delta V - Add cave floor under asteroid rocks
|
||||
var naturalunderplatingTile = new Tile(naturalunderplating.TileId); // Delta V - Add cave floor under asteroid rocks
|
||||
var changed = 0;
|
||||
var enumerator = _entManager.GetComponent<TransformComponent>(gridId.Value).ChildEnumerator;
|
||||
while (enumerator.MoveNext(out var child))
|
||||
|
|
@ -102,9 +106,17 @@ public sealed class TileWallsCommand : IConsoleCommand
|
|||
|
||||
if (tileDef.ID == TilePrototypeId)
|
||||
{
|
||||
// Delta V - Begin add natural wall tile replace
|
||||
if (tagSystem.HasTag(child, NaturalTag))
|
||||
{
|
||||
|
||||
mapSystem.SetTile(gridId.Value, grid, childTransform.Coordinates, naturalunderplatingTile);
|
||||
changed++;
|
||||
continue;
|
||||
}
|
||||
// Delta V - end add natural wall tile replace
|
||||
continue;
|
||||
}
|
||||
|
||||
mapSystem.SetTile(gridId.Value, grid, childTransform.Coordinates, underplatingTile);
|
||||
changed++;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -59,6 +59,12 @@
|
|||
layer:
|
||||
- WallLayer
|
||||
density: 2000
|
||||
# Delta V - add Tag
|
||||
- type: Tag
|
||||
tags:
|
||||
- Wall
|
||||
- Natural
|
||||
# Delta V - end tags
|
||||
|
||||
- type: entity
|
||||
abstract: true
|
||||
|
|
@ -812,6 +818,12 @@
|
|||
state: rock_north
|
||||
- map: [ "enum.EdgeLayer.West" ]
|
||||
state: rock_west
|
||||
# Delta V - add Tag
|
||||
- type: Tag
|
||||
tags:
|
||||
- Wall
|
||||
- Natural
|
||||
# Delta V - end tags
|
||||
|
||||
# Ore veins
|
||||
- type: entity
|
||||
|
|
|
|||
|
|
@ -153,3 +153,18 @@
|
|||
Blunt: 1.5
|
||||
Holy: 2.5
|
||||
Shadow: 0.7
|
||||
|
||||
- type: damageModifierSet
|
||||
id: MountainRock
|
||||
coefficients:
|
||||
Structural: 0.25
|
||||
Blunt: 0.1
|
||||
Slash: 0.05
|
||||
Piercing: 0.2
|
||||
Heat: 0.5
|
||||
flatReductions:
|
||||
Structural: 10
|
||||
Blunt: 15
|
||||
Slash: 40
|
||||
Piercing: 15
|
||||
Heat: 10
|
||||
|
|
|
|||
|
|
@ -1,20 +1,24 @@
|
|||
- type: entity
|
||||
id: AsteroidAltRock #It's 1994
|
||||
parent: BaseStructure
|
||||
id: BaseAltRock #It's 1994
|
||||
parent: BaseWall
|
||||
abstract: true
|
||||
name: asteroid rock
|
||||
suffix: Low Ore Yield
|
||||
description: A rocky asteroid.
|
||||
components:
|
||||
- type: Gatherable
|
||||
toolWhitelist:
|
||||
tags:
|
||||
- Pickaxe
|
||||
- type: Sprite
|
||||
sprite: _DV/Structures/Walls/asteroid_rock.rsi
|
||||
state: full
|
||||
- type: Icon
|
||||
sprite: _DV/Structures/Walls/asteroid_rock.rsi
|
||||
state: full
|
||||
- type: Tag
|
||||
tags:
|
||||
- Wall
|
||||
- Natural
|
||||
- type: MiningScannerViewable
|
||||
- type: Damageable
|
||||
damageContainer: Inorganic
|
||||
damageModifierSet: Metallic
|
||||
damageContainer: StructuralInorganic
|
||||
damageModifierSet: Rock
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
|
|
@ -23,15 +27,18 @@
|
|||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- type: Occluder
|
||||
- type: Airtight
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
path: /Audio/Effects/break_stone.ogg
|
||||
params:
|
||||
volume: -6
|
||||
- type: Fixtures
|
||||
fixtures:
|
||||
fix1:
|
||||
shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.5,-0.5,0.5,0.5"
|
||||
density: 100
|
||||
density: 2000
|
||||
mask:
|
||||
- FullTileMask
|
||||
layer:
|
||||
|
|
@ -39,18 +46,75 @@
|
|||
- type: IconSmooth
|
||||
key: walls
|
||||
base: rock_
|
||||
|
||||
- type: entity
|
||||
id: AsteroidAltRock
|
||||
parent: BaseAltRock
|
||||
suffix: Low Yield, Standard Value
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 0.2
|
||||
oreRarityPrototypeId: RandomOreDistributionStandard
|
||||
|
||||
- type: entity
|
||||
id: MountainRockMining
|
||||
id: AsteroidAltRockMining
|
||||
parent: AsteroidAltRock
|
||||
suffix: High Yield, Standard Value
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 0.33
|
||||
oreRarityPrototypeId: RandomOreDistributionStandard
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockOreCrab
|
||||
parent: AsteroidAltRock
|
||||
suffix: Ore Crab
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 0.33
|
||||
oreRarityPrototypeId: OreCrab
|
||||
|
||||
- type: entity
|
||||
id: MountainRock
|
||||
parent: BaseAltRock
|
||||
name: mountain rock
|
||||
suffix: Low Yield/Higher Value Ore
|
||||
description: A craggy mountain wall.
|
||||
suffix: Un-mineable
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _DV/Structures/Walls/mountain_rock.rsi
|
||||
state: full
|
||||
drawdepth: Walls
|
||||
- type: Icon
|
||||
sprite: _DV/Structures/Walls/mountain_rock.rsi
|
||||
state: full
|
||||
- type: Damageable
|
||||
damageContainer: StructuralInorganic
|
||||
damageModifierSet: MountainRock
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 1500
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
path: /Audio/Effects/break_stone.ogg
|
||||
params:
|
||||
volume: -6
|
||||
|
||||
- type: entity
|
||||
id: MountainRockMining
|
||||
parent: MountainRock
|
||||
suffix: Low Yield, High Value
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _DV/Structures/Walls/mountain_rock_ore.rsi
|
||||
state: full
|
||||
drawdepth: Walls
|
||||
- type: Icon
|
||||
sprite: _DV/Structures/Walls/mountain_rock_ore.rsi
|
||||
state: full
|
||||
- type: Destructible
|
||||
|
|
@ -61,70 +125,14 @@
|
|||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
path: /Audio/Effects/break_stone.ogg
|
||||
params:
|
||||
volume: -6
|
||||
- type: Damageable
|
||||
damageContainer: StructuralInorganic
|
||||
damageModifierSet: Rock
|
||||
- type: OreVein
|
||||
oreChance: 0.20
|
||||
oreRarityPrototypeId: RandomOreDistributionHigh
|
||||
|
||||
- type: entity
|
||||
id: MountainRock
|
||||
parent: BaseStructure
|
||||
name: mountain rock
|
||||
suffix: Un-mineable
|
||||
description: A craggy mountain wall. It is too hard to mine.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: _DV/Structures/Walls/mountain_rock.rsi
|
||||
state: full
|
||||
- type: Damageable
|
||||
damageContainer: Inorganic
|
||||
damageModifierSet: StrongMetallic
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 1500
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- type: Occluder
|
||||
- type: Airtight
|
||||
- type: Fixtures
|
||||
fixtures:
|
||||
fix1:
|
||||
shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.5,-0.5,0.5,0.5"
|
||||
density: 100
|
||||
mask:
|
||||
- FullTileMask
|
||||
layer:
|
||||
- WallLayer
|
||||
- type: IconSmooth
|
||||
key: walls
|
||||
base: rock_
|
||||
|
||||
- type: entity
|
||||
id: AsteroidAltRockMining
|
||||
parent: AsteroidAltRock
|
||||
name: asteroid rock
|
||||
suffix: Higher Ore Yield
|
||||
description: A rocky asteroid.
|
||||
components:
|
||||
- type: Gatherable
|
||||
toolWhitelist:
|
||||
tags:
|
||||
- Pickaxe
|
||||
- type: OreVein
|
||||
oreChance: 0.33
|
||||
oreRarityPrototypeId: RandomOreDistributionStandard
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockOreCrab
|
||||
parent: AsteroidAltRock
|
||||
name: asteroid rock
|
||||
suffix: Ore Crab
|
||||
description: A rocky asteroid.
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 0.33
|
||||
oreRarityPrototypeId: OreCrab
|
||||
|
|
|
|||
|
|
@ -141,6 +141,9 @@
|
|||
- type: Tag
|
||||
id: MothroachHide
|
||||
|
||||
- type: Tag
|
||||
id: Natural
|
||||
|
||||
- type: Tag
|
||||
id: NormalityCrystal
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue