Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SmoothSlope()

void Terraria.GameContent.Biomes.MarbleBiome.SmoothSlope ( int x,
int y )
inlineprivate

Definition at line 79 of file MarbleBiome.cs.

80 {
81 Slab slab = _slabs[x, y];
82 if (slab.IsSolid)
83 {
84 bool isSolid = _slabs[x, y - 1].IsSolid;
85 bool isSolid2 = _slabs[x, y + 1].IsSolid;
86 bool isSolid3 = _slabs[x - 1, y].IsSolid;
87 bool isSolid4 = _slabs[x + 1, y].IsSolid;
88 switch (((isSolid ? 1 : 0) << 3) | ((isSolid2 ? 1 : 0) << 2) | ((isSolid3 ? 1 : 0) << 1) | (isSolid4 ? 1 : 0))
89 {
90 case 10:
91 _slabs[x, y] = slab.WithState(SlabStates.TopLeftFilled);
92 break;
93 case 9:
94 _slabs[x, y] = slab.WithState(SlabStates.TopRightFilled);
95 break;
96 case 6:
97 _slabs[x, y] = slab.WithState(SlabStates.BottomLeftFilled);
98 break;
99 case 5:
100 _slabs[x, y] = slab.WithState(SlabStates.BottomRightFilled);
101 break;
102 case 4:
103 _slabs[x, y] = slab.WithState(SlabStates.HalfBrick);
104 break;
105 default:
106 _slabs[x, y] = slab.WithState(SlabStates.Solid);
107 break;
108 }
109 }
110 }

References Terraria.GameContent.Biomes.MarbleBiome._slabs, Terraria.GameContent.Biomes.MarbleBiome.SlabStates.BottomLeftFilled(), Terraria.GameContent.Biomes.MarbleBiome.SlabStates.BottomRightFilled(), Terraria.GameContent.Biomes.MarbleBiome.SlabStates.HalfBrick(), Terraria.GameContent.Biomes.MarbleBiome.Slab.IsSolid, Terraria.GameContent.Biomes.MarbleBiome.SlabStates.Solid(), Terraria.GameContent.Biomes.MarbleBiome.SlabStates.TopLeftFilled(), Terraria.GameContent.Biomes.MarbleBiome.SlabStates.TopRightFilled(), and Terraria.GameContent.Biomes.MarbleBiome.Slab.WithState().

Referenced by Terraria.GameContent.Biomes.MarbleBiome.Place().