1
This commit is contained in:
@@ -1239,10 +1239,17 @@ public class CreateFishManager : MonoSingleton<CreateFishManager>
|
||||
if (MonsterMoveLine.dic_BezierCurveDatas.TryGetValue("鱼阵" + pathId, out var bd700))
|
||||
baseAngle = bd700.start.y > 0f ? 90f : -90f;
|
||||
|
||||
for (int i = 1; i <= 17; i++)
|
||||
// ⭐ 扇形:17 条(单数)以基准角为中心左右对称展开,总张角 150°;
|
||||
// 顺序从中间往两边:第1条在正中间(0°),之后依次 +step、-step 交替(保证左右对称)
|
||||
const int fanFishCount = 17;
|
||||
const float fanTotalAngle = 150f;
|
||||
float fanStep = fanTotalAngle / (fanFishCount - 1); // 150 / 16 = 9.375°
|
||||
|
||||
for (int i = 1; i <= fanFishCount; i++)
|
||||
{
|
||||
// 交替正负角度,形成扇形分布(从基准角向两侧±5°~±85°展开)
|
||||
float angle = i * 5f * (i % 2 == 0 ? -1f : 1f);
|
||||
// i=1→0°, 2→+9.375°, 3→-9.375°, 4→+18.75°, 5→-18.75° … 16→+75°, 17→-75°
|
||||
float mag = (i / 2) * fanStep;
|
||||
float angle = i <= 1 ? 0f : (i % 2 == 0 ? mag : -mag);
|
||||
// ⭐ 方向判断与原始flipY700一致:路线起点start.y<0的阵绕鱼头轴翻面180°
|
||||
// (鱼头方向不变,肚背朝向翻转);原始写法为 transform.Rotate(Z,180,Space.Self)
|
||||
float flipZ = (bd700 != null && bd700.start.y < 0f) ? 180f : 0f;
|
||||
@@ -1272,7 +1279,7 @@ public class CreateFishManager : MonoSingleton<CreateFishManager>
|
||||
mc.Init(pathId.ToString(), cfg.times, true, yz.arrayNumber);
|
||||
|
||||
// ⭐ 鱼阵调试日志:输出每条子鱼生成后的旋转与缩放(排查"有的正有的反")
|
||||
Debug.Log($"[鱼阵调试] 阵={yz.arrayNumber}(扇形700) pathId={pathId} 第{i}/{16}条 guid={mc.guid} " +
|
||||
Debug.Log($"[鱼阵调试] 阵={yz.arrayNumber}(扇形700) pathId={pathId} 第{i}/{fanFishCount}条 guid={mc.guid} " +
|
||||
$"rotation={fish.transform.eulerAngles.ToString("F1")} localScale={fish.transform.localScale.ToString("F3")}");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user