Ejemplo n.º 1
0
    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);
    }
Ejemplo n.º 2
0
    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;
        }
        }
    }