static void Postfix(DiveReelNode __instance) { if (__instance.destroySelf && __instance.selfScale < 0.0001f) { Object.Destroy(__instance.gameObject); } }
static void removeDiveReelNode(DiveReel reel, DiveReelNode node) { #if GAME_SN reel.nodes.Remove(node.gameObject); #elif GAME_BZ reel.nodes.Remove(node); #endif node.DestroySelf(0.1f); recalcNodes(reel); }
static void recalcNodes(DiveReel reel) { reel.nodePositions.Clear(); Transform prevTransform = reel.transform; foreach (var nodeObj in reel.nodes) { DiveReelNode node = nodeObj.GetComponent <DiveReelNode>(); reel.nodePositions.Add(node.transform.position); if (!node.firstArrow) { node.previousArrowPos = prevTransform; } prevTransform = node.transform; reel.lastNodeTransform = node.transform; } }