public tower RegisterNewDisk(disk dsk) { tower twr = GetTowerById(dsk.towerID); if (twr != null) { Debug.Log("Regester new disk (" + dsk.ToString() + ") with size " + dsk.diskSize); twr.AddDisk(dsk); disks.Add(dsk); return(twr); } registerQueue.Add(dsk); Debug.Log("Can register new disk (" + dsk.ToString() + ") with size " + dsk.diskSize + " because tower with id " + dsk.towerID + " is not exists;"); return(null); }
public void Animate(string animType, disk dsk = null, tower trgt = null) { Debug.Log("Animate (" + animType + "," + dsk.ToString() + ")"); switch (animType) { case AT_SELECT_DISK: { Debug.Log("AT_SELECT_DISK"); Transform dskTrans = dsk.GetComponent <Transform>(); createTween(TW_MOVE, new Point(dskTrans.position.x, 2.1f, dskTrans.position.z), baseSpeed, dskTrans); break; } case AT_DESELECT_DISK: { Debug.Log("AT_DESELECT_DISK"); Transform dskTrans = dsk.GetComponent <Transform>(); tower twr = game.GetTowerById(dsk.towerID); createTween(TW_MOVE, new Point(dskTrans.position.x, (twr.diskCount - 1) * game.diskThickness, dskTrans.position.z), baseSpeed, dskTrans); break; } case AT_MOVE_TO_TOWER: { Debug.Log("AT_MOVE_TO_TOWER"); Transform dskTrans = dsk.GetComponent <Transform>(); createTween(TW_MOVE, new Point(trgt.GetComponent <Transform>().position.x, 2.1f, dskTrans.position.z), baseSpeed * 2, dskTrans); createTween(TW_MOVE, new Point(trgt.GetComponent <Transform>().position.x, (trgt.diskCount - 1) * game.diskThickness, dskTrans.position.z), baseSpeed * 2, dskTrans); break; } } }