diff --git a/DungeonShooting_Godot/prefab/ui/TileSetEditorTerrain.tscn b/DungeonShooting_Godot/prefab/ui/TileSetEditorTerrain.tscn
index 044a624..3b026ea 100644
--- a/DungeonShooting_Godot/prefab/ui/TileSetEditorTerrain.tscn
+++ b/DungeonShooting_Godot/prefab/ui/TileSetEditorTerrain.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=11 format=3 uid="uid://dfqb73y4br8yd"]
+[gd_scene load_steps=10 format=3 uid="uid://dfqb73y4br8yd"]
[ext_resource type="Script" path="res://src/game/ui/tileSetEditorTerrain/TileSetEditorTerrainPanel.cs" id="1_6jjk7"]
[ext_resource type="Script" path="res://src/game/ui/tileSetEditorTerrain/left/TileEditArea.cs" id="2_ynf0r"]
@@ -6,8 +6,7 @@
[ext_resource type="Script" path="res://src/game/ui/tileSetEditorTerrain/left/TerrainCellDragHandler.cs" id="3_ssd86"]
[ext_resource type="Script" path="res://src/game/ui/tileSetEditorTerrain/right/TileEditTerrain.cs" id="5_0x7yx"]
[ext_resource type="Texture2D" uid="uid://d2wslibovwv7w" path="res://resource/sprite/ui/commonIcon/CenterTool.png" id="5_08bc4"]
-[ext_resource type="Texture2D" uid="uid://18dira1me63t" path="res://resource/sprite/map/PreviewMap.png" id="5_m0oxr"]
-[ext_resource type="Texture2D" uid="uid://bqdrgtiyilkma" path="res://resource/sprite/map/PreviewMapShadow.png" id="7_68ntx"]
+[ext_resource type="Texture2D" uid="uid://cvjj6jnmxgprw" path="res://resource/sprite/map/TerrainMask.png" id="7_g8dxk"]
[ext_resource type="Script" path="res://src/game/ui/tileSetEditorTerrain/right/TerrainBrush.cs" id="7_lmu64"]
[ext_resource type="Script" path="res://src/game/ui/tileSetEditorTerrain/right/TerrainCellDropHandler.cs" id="8_7xxcq"]
@@ -19,7 +18,6 @@
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_6jjk7")
-Layer = null
[node name="HSplitContainer" type="HSplitContainer" parent="."]
layout_mode = 1
@@ -139,27 +137,41 @@
color = Color(0.496094, 0.496094, 0.496094, 1)
script = ExtResource("5_0x7yx")
-[node name="TileTexture" type="TextureRect" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg"]
-self_modulate = Color(1, 1, 1, 0.470588)
+[node name="TerrainRoot" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
-offset_left = -237.0
-offset_top = -270.0
-offset_right = -77.0
-offset_bottom = -94.0
+offset_left = -291.0
+offset_top = -92.0
+offset_right = -99.0
+offset_bottom = -28.0
grow_horizontal = 2
grow_vertical = 2
scale = Vector2(3, 3)
mouse_filter = 2
-texture = ExtResource("5_m0oxr")
-stretch_mode = 2
-[node name="TileShadow" type="TextureRect" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TileTexture"]
-modulate = Color(0.498039, 0.498039, 0.498039, 1)
+[node name="CellRoot" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TerrainRoot"]
+layout_mode = 3
+anchors_preset = 0
+offset_right = 1.0
+offset_bottom = 1.0
+mouse_filter = 2
+
+[node name="RightCell" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TerrainRoot/CellRoot"]
+anchors_preset = 0
+offset_right = 16.0
+offset_bottom = 16.0
+mouse_filter = 1
+script = ExtResource("8_7xxcq")
+
+[node name="CellTexture" type="Sprite2D" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TerrainRoot/CellRoot/RightCell"]
+centered = false
+
+[node name="TerrainTexture" type="TextureRect" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TerrainRoot"]
+self_modulate = Color(1, 1, 1, 0.27451)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
@@ -167,31 +179,16 @@
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
-texture = ExtResource("7_68ntx")
-stretch_mode = 2
+texture = ExtResource("7_g8dxk")
-[node name="CellRoot" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TileTexture"]
-layout_mode = 3
-anchors_preset = 0
-offset_right = 1.0
-offset_bottom = 1.0
-mouse_filter = 2
-
-[node name="RightCell" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TileTexture/CellRoot"]
-anchors_preset = 0
-offset_right = 16.0
-offset_bottom = 16.0
-mouse_filter = 1
-script = ExtResource("8_7xxcq")
-
-[node name="CellTexture" type="Sprite2D" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TileTexture/CellRoot/RightCell"]
-centered = false
-
-[node name="Brush" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TileTexture"]
+[node name="Brush" type="Control" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg/TerrainRoot"]
layout_mode = 1
-anchors_preset = 0
-offset_right = 1.0
-offset_bottom = 1.0
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+mouse_filter = 2
script = ExtResource("7_lmu64")
[node name="Grid" type="ColorRect" parent="HSplitContainer/LeftBottom2/MarginContainer/LeftBottomBg"]
diff --git a/DungeonShooting_Godot/resource/sprite/map/TerrainMask.png b/DungeonShooting_Godot/resource/sprite/map/TerrainMask.png
new file mode 100644
index 0000000..426bb52
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/map/TerrainMask.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/map/TerrainMask.png.import b/DungeonShooting_Godot/resource/sprite/map/TerrainMask.png.import
new file mode 100644
index 0000000..2a98c8b
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/map/TerrainMask.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cvjj6jnmxgprw"
+path="res://.godot/imported/TerrainMask.png-15fc73cf90f6ff1547134db4982b53af.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/map/TerrainMask.png"
+dest_files=["res://.godot/imported/TerrainMask.png-15fc73cf90f6ff1547134db4982b53af.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/tileSprite/TerrainMask.png b/DungeonShooting_Godot/resource/tileSprite/TerrainMask.png
deleted file mode 100644
index 426bb52..0000000
--- a/DungeonShooting_Godot/resource/tileSprite/TerrainMask.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/tileSprite/TerrainMask.png.import b/DungeonShooting_Godot/resource/tileSprite/TerrainMask.png.import
deleted file mode 100644
index 215529c..0000000
--- a/DungeonShooting_Godot/resource/tileSprite/TerrainMask.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://cvjj6jnmxgprw"
-path="res://.godot/imported/TerrainMask.png-6b1c9d08c7552e585c640baff529bbff.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/tileSprite/TerrainMask.png"
-dest_files=["res://.godot/imported/TerrainMask.png-6b1c9d08c7552e585c640baff529bbff.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrain.cs b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrain.cs
index 7fbba3f..ce24c4f 100644
--- a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrain.cs
+++ b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrain.cs
@@ -216,7 +216,7 @@
}
///
- /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.CellRoot.RightCell.CellTexture
+ /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.CellRoot.RightCell.CellTexture
///
public class CellTexture : UiNode
{
@@ -225,12 +225,12 @@
}
///
- /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.CellRoot.RightCell
+ /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.CellRoot.RightCell
///
public class RightCell : UiNode
{
///
- /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.CellRoot.CellTexture
+ /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.CellRoot.CellTexture
///
public CellTexture L_CellTexture
{
@@ -247,12 +247,12 @@
}
///
- /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.CellRoot
+ /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.CellRoot
///
public class CellRoot_1 : UiNode
{
///
- /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.RightCell
+ /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.RightCell
///
public RightCell L_RightCell
{
@@ -269,16 +269,16 @@
}
///
- /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.TileShadow
+ /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.TerrainTexture
///
- public class TileShadow : UiNode
+ public class TerrainTexture : UiNode
{
- public TileShadow(TileSetEditorTerrainPanel uiPanel, Godot.TextureRect node) : base(uiPanel, node) { }
- public override TileShadow Clone() => new (UiPanel, (Godot.TextureRect)Instance.Duplicate());
+ public TerrainTexture(TileSetEditorTerrainPanel uiPanel, Godot.TextureRect node) : base(uiPanel, node) { }
+ public override TerrainTexture Clone() => new (UiPanel, (Godot.TextureRect)Instance.Duplicate());
}
///
- /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.Brush
+ /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.Brush
///
public class Brush : UiNode
{
@@ -287,9 +287,9 @@
}
///
- /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture
+ /// 类型: , 路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot
///
- public class TileTexture_1 : UiNode
+ public class TerrainRoot : UiNode
{
///
/// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.CellRoot
@@ -305,17 +305,17 @@
private CellRoot_1 _L_CellRoot;
///
- /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileShadow
+ /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainTexture
///
- public TileShadow L_TileShadow
+ public TerrainTexture L_TerrainTexture
{
get
{
- if (_L_TileShadow == null) _L_TileShadow = new TileShadow(UiPanel, Instance.GetNode("TileShadow"));
- return _L_TileShadow;
+ if (_L_TerrainTexture == null) _L_TerrainTexture = new TerrainTexture(UiPanel, Instance.GetNode("TerrainTexture"));
+ return _L_TerrainTexture;
}
}
- private TileShadow _L_TileShadow;
+ private TerrainTexture _L_TerrainTexture;
///
/// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.Brush
@@ -330,8 +330,8 @@
}
private Brush _L_Brush;
- public TileTexture_1(TileSetEditorTerrainPanel uiPanel, Godot.TextureRect node) : base(uiPanel, node) { }
- public override TileTexture_1 Clone() => new (UiPanel, (Godot.TextureRect)Instance.Duplicate());
+ public TerrainRoot(TileSetEditorTerrainPanel uiPanel, Godot.Control node) : base(uiPanel, node) { }
+ public override TerrainRoot Clone() => new (UiPanel, (Godot.Control)Instance.Duplicate());
}
///
@@ -358,17 +358,17 @@
public class LeftBottomBg : UiNode
{
///
- /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.TileTexture
+ /// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.TerrainRoot
///
- public TileTexture_1 L_TileTexture
+ public TerrainRoot L_TerrainRoot
{
get
{
- if (_L_TileTexture == null) _L_TileTexture = new TileTexture_1(UiPanel, Instance.GetNode("TileTexture"));
- return _L_TileTexture;
+ if (_L_TerrainRoot == null) _L_TerrainRoot = new TerrainRoot(UiPanel, Instance.GetNode("TerrainRoot"));
+ return _L_TerrainRoot;
}
}
- private TileTexture_1 _L_TileTexture;
+ private TerrainRoot _L_TerrainRoot;
///
/// 使用 Instance 属性获取当前节点实例对象, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.Grid
@@ -491,6 +491,11 @@
public MaskBrush S_MaskBrush => L_HSplitContainer.L_LeftBottom.L_MarginContainer.L_LeftBg.L_TileTexture.L_MaskBrush;
///
+ /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom.MarginContainer.LeftBg.TileTexture
+ ///
+ public TileTexture S_TileTexture => L_HSplitContainer.L_LeftBottom.L_MarginContainer.L_LeftBg.L_TileTexture;
+
+ ///
/// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom.MarginContainer.LeftBg
///
public LeftBg S_LeftBg => L_HSplitContainer.L_LeftBottom.L_MarginContainer.L_LeftBg;
@@ -501,24 +506,29 @@
public LeftBottom S_LeftBottom => L_HSplitContainer.L_LeftBottom;
///
- /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.CellRoot.RightCell.CellTexture
+ /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.CellRoot.RightCell.CellTexture
///
- public CellTexture S_CellTexture => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TileTexture.L_CellRoot.L_RightCell.L_CellTexture;
+ public CellTexture S_CellTexture => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TerrainRoot.L_CellRoot.L_RightCell.L_CellTexture;
///
- /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.CellRoot.RightCell
+ /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.CellRoot.RightCell
///
- public RightCell S_RightCell => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TileTexture.L_CellRoot.L_RightCell;
+ public RightCell S_RightCell => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TerrainRoot.L_CellRoot.L_RightCell;
///
- /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.TileShadow
+ /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.TerrainTexture
///
- public TileShadow S_TileShadow => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TileTexture.L_TileShadow;
+ public TerrainTexture S_TerrainTexture => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TerrainRoot.L_TerrainTexture;
///
- /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TileTexture.Brush
+ /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot.Brush
///
- public Brush S_Brush => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TileTexture.L_Brush;
+ public Brush S_Brush => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TerrainRoot.L_Brush;
+
+ ///
+ /// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg.TerrainRoot
+ ///
+ public TerrainRoot S_TerrainRoot => L_HSplitContainer.L_LeftBottom2.L_MarginContainer.L_LeftBottomBg.L_TerrainRoot;
///
/// 场景中唯一名称的节点, 节点类型: , 节点路径: TileSetEditorTerrain.HSplitContainer.LeftBottom2.MarginContainer.LeftBottomBg
diff --git a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrainPanel.cs b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrainPanel.cs
index 4e3cffa..70c6c43 100644
--- a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrainPanel.cs
+++ b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/TileSetEditorTerrainPanel.cs
@@ -31,16 +31,16 @@
_leftGrid.SetCellOffset(Vector2I.Zero);
var sRightCell = S_RightCell;
- var tileShadowSize = S_TileShadow.Instance.Texture.GetSize().AsVector2I();
- tileShadowSize = tileShadowSize / GameConfig.TileCellSize - new Vector2I(2, 2);
- Debug.Log("tileShadowSize: " + tileShadowSize);
- sRightCell.Instance.Position = GameConfig.TileCellSizeVector2I;
+ var terrainSize = S_TerrainRoot.Instance.Size.AsVector2I();
+ terrainSize = terrainSize / GameConfig.TileCellSize;
+ Debug.Log("terrainSize: " + terrainSize);
+ sRightCell.Instance.Position = Vector2.Zero;
_rightGrid = CreateUiGrid(sRightCell);
_rightGrid.SetCellOffset(Vector2I.Zero);
- _rightGrid.SetColumns(tileShadowSize.X);
- for (var y = 0; y < tileShadowSize.Y; y++)
+ _rightGrid.SetColumns(terrainSize.X);
+ for (var y = 0; y < terrainSize.Y; y++)
{
- for (var x = 0; x < tileShadowSize.X; x++)
+ for (var x = 0; x < terrainSize.X; x++)
{
_rightGrid.Add(false);
}
@@ -87,6 +87,5 @@
{
S_LeftBg.Instance.Color = EditorPanel.BgColor;
S_LeftBottomBg.Instance.Color = EditorPanel.BgColor;
- S_TileShadow.Instance.Modulate = EditorPanel.BgColor;
}
}
diff --git a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/left/TerrainCellDragHandler.cs b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/left/TerrainCellDragHandler.cs
index fc0c25a..43873e6 100644
--- a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/left/TerrainCellDragHandler.cs
+++ b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/left/TerrainCellDragHandler.cs
@@ -51,7 +51,7 @@
var control = new Control();
control.AddChild(sprite);
control.ZIndex = 10;
- control.Scale = _panel.S_LeftBottomBg.L_TileTexture.Instance.Scale;
+ control.Scale = _panel.S_LeftBottomBg.L_TerrainRoot.Instance.Scale;
SetDragPreview(control);
return _rect2I;
}
diff --git a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TerrainBrush.cs b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TerrainBrush.cs
index 52ba052..586560d 100644
--- a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TerrainBrush.cs
+++ b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TerrainBrush.cs
@@ -4,7 +4,7 @@
public partial class TerrainBrush : Control
{
- public TextureRect TileTexture { get; set; }
+ public Control TerrainRoot { get; set; }
public override void _Process(double delta)
@@ -16,17 +16,17 @@
{
//绘制区域
DrawRect(
- new Rect2(GameConfig.TileCellSizeVector2I,
- TileTexture.Texture.GetSize() - GameConfig.TileCellSizeVector2I * 2), new Color(1, 1, 0, 0.5f), false,
- 2f / TileTexture.Scale.X);
+ new Rect2(Vector2.Zero, TerrainRoot.Size.AsVector2I()), new Color(1, 1, 0, 0.5f), false,
+ 2f / TerrainRoot.Scale.X
+ );
//绘制鼠标悬停区域
- if (TileTexture.IsMouseInRect(GameConfig.TileCellSize))
+ if (TerrainRoot.IsMouseInRect())
{
- var pos = Utils.GetMouseCellPosition(TileTexture) * GameConfig.TileCellSize;
+ var pos = Utils.GetMouseCellPosition(TerrainRoot) * GameConfig.TileCellSize;
DrawRect(
new Rect2(pos,GameConfig.TileCellSizeVector2I),
- Colors.Green, false, 3f / TileTexture.Scale.X
+ Colors.Green, false, 3f / TerrainRoot.Scale.X
);
}
}
diff --git a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TileEditTerrain.cs b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TileEditTerrain.cs
index e05df44..e4b5d2a 100644
--- a/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TileEditTerrain.cs
+++ b/DungeonShooting_Godot/src/game/ui/tileSetEditorTerrain/right/TileEditTerrain.cs
@@ -7,9 +7,9 @@
public override void SetUiNode(IUiNode uiNode)
{
base.SetUiNode(uiNode);
- var tileTexture = UiNode.L_TileTexture;
+ var tileTexture = UiNode.L_TerrainRoot;
InitNode(tileTexture.Instance, UiNode.L_Grid.Instance);
- tileTexture.L_Brush.Instance.TileTexture = tileTexture.Instance;
+ tileTexture.L_Brush.Instance.TerrainRoot = tileTexture.Instance;
//聚焦按钮点击
UiNode.L_FocusBtn.Instance.Pressed += OnFocusClick;
@@ -19,7 +19,7 @@
{
var flag = UiNode.UiPanel.IsDraggingCell;
UiNode.L_Grid.Instance.Visible = flag;
- UiNode.L_TileTexture.L_Brush.Instance.Visible = flag;
+ UiNode.L_TerrainRoot.L_Brush.Instance.Visible = flag;
}
///
@@ -34,8 +34,8 @@
//聚焦按钮点击
private void OnFocusClick()
{
- var texture = UiNode.L_TileTexture.Instance.Texture;
- Utils.DoFocusNode(ContainerRoot, Size, texture != null ? texture.GetSize() : Vector2.Zero);
+ var root = UiNode.L_TerrainRoot.Instance;
+ Utils.DoFocusNode(ContainerRoot, Size, root.Size);
RefreshGridTrans();
}
}
\ No newline at end of file