void MoveTail() { Node previousNode = null; for (int i = 0; i < tail.Count; i++) { TailNode p = tail[i]; availableNodes.Add(p.node); if (i == 0) { previousNode = p.node; p.node = playerNode; } else { Node prev = p.node; p.node = previousNode; previousNode = prev; } availableNodes.Remove(p.node); PlacePlayerObject(p.obj, p.node.worldPosition); } }
TailNode CreateTailNode(int x, int y) { TailNode s = new TailNode(); s.node = GetNode(x, y); s.obj = new GameObject("tail"); s.obj.transform.parent = tailParent.transform; s.obj.transform.position = s.node.worldPosition; s.obj.transform.localScale = Vector3.one * .95f; SpriteRenderer r = s.obj.AddComponent <SpriteRenderer>(); r.sprite = CreateSprite(playerColor); r.sortingOrder = 1; return(s); }