From 7cba58919fe80b1a03a8b26c2244aabbcd0a4a1c Mon Sep 17 00:00:00 2001 From: Joywayer Date: Mon, 27 Jul 2026 13:17:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(editor):=20=E6=95=8C=E4=BA=BA/Boss=20?= =?UTF-8?q?=E6=94=BE=E7=BD=AE=E8=84=9A=E6=89=8B=E6=9E=B6=E7=BB=91=E5=AE=9A?= =?UTF-8?q?=20EnemyBase.=5FbodyCollider(=E8=BA=AB=E4=BD=93=E5=87=A0?= =?UTF-8?q?=E4=BD=95=E5=94=AF=E4=B8=80=E6=9D=83=E5=A8=81)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scripts/Editor/Scene/SceneObjectPlacerTool.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Assets/_Game/Scripts/Editor/Scene/SceneObjectPlacerTool.cs b/Assets/_Game/Scripts/Editor/Scene/SceneObjectPlacerTool.cs index b1ee920c..2218f9da 100644 --- a/Assets/_Game/Scripts/Editor/Scene/SceneObjectPlacerTool.cs +++ b/Assets/_Game/Scripts/Editor/Scene/SceneObjectPlacerTool.cs @@ -317,6 +317,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_movement", movement, report); AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); @@ -369,7 +370,7 @@ namespace BaseGames.Editor rb.interpolation = RigidbodyInterpolation2D.Interpolate; Vector2 size = SpriteSizeOr(defaultSprite, new Vector2(1.5f, 2.5f)); - CreateBodyCollider(go, bodyCollider, size); + Collider2D body = CreateBodyCollider(go, bodyCollider, size); GetOrAddComponent(go); SpriteRenderer sr = SetupSpriteRenderer(go); if (defaultSprite != null) sr.sprite = defaultSprite; @@ -383,6 +384,7 @@ namespace BaseGames.Editor // References AssignReference(bossBase, "_stats", bossStats, report); + AssignReference(bossBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) // DamageSourceSO Object dmgSrc = FindFirstAsset("CMB_DS_BossBody", "CMB_DS_EnemyBody", "DS_BossBody"); @@ -466,6 +468,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_movement", movement, report); AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); AssignAsset(enemyStats, "_onDifficultyChanged", report, false, "EVT_DifficultyChanged"); @@ -569,6 +572,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_movement", movement, report); AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); AssignAsset(enemyStats, "_onDifficultyChanged", report, false, "EVT_DifficultyChanged"); @@ -660,6 +664,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_movement", movement, report); AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); AssignAsset(enemyStats, "_onDifficultyChanged", report, false, "EVT_DifficultyChanged"); @@ -777,6 +782,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_feedback", feedback, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); AssignAsset(enemyStats, "_onDifficultyChanged", report, false, "EVT_DifficultyChanged"); @@ -890,6 +896,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_movement", movement, report); AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); AssignAsset(enemyStats, "_onDifficultyChanged", report, false, "EVT_DifficultyChanged"); @@ -999,6 +1006,7 @@ namespace BaseGames.Editor AssignReference(enemyBase, "_movement", movement, report); AssignReference(enemyBase, "_animancer", animancer, report); AssignReference(enemyBase, "_hurtBox", hurtBox, report); + AssignReference(enemyBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignAsset(enemyBase, "_onEnemyDied", report, false, "EVT_EnemyDied"); AssignAsset(enemyBase, "_onPlayerSpawned", report, false, "EVT_PlayerSpawned"); AssignAsset(enemyStats, "_onDifficultyChanged", report, false, "EVT_DifficultyChanged"); @@ -1108,6 +1116,7 @@ namespace BaseGames.Editor AssignReference(bossBase, "_animancer", animancer, report); AssignReference(bossBase, "_feedback", feedback, report); AssignReference(bossBase, "_hurtBox", hurtBox, report); + AssignReference(bossBase, "_bodyCollider", body, report); // 身体几何唯一权威(EnemyBase.Body) AssignReference(skillExec, "_animancer", animancer, report); // 浮空 / 击落 / 弹体发射点接线(计划)