Пример #1
0
 public void move()
 {
     if (isFinished)
     {
         isFinished = false;
         Debug.Log(count);
         int[] fromCount = firstScene.fromCoast.GetobjectsNumber();
         priestNum = fromCount[0];
         devilNum  = fromCount[1];
         BoatCoast = firstScene.boat.get_State();
         if (count == 0)
         {
             nextState = getNext();
             if ((int)nextState >= 3)
             {
                 num = 2;
             }
             else if ((int)nextState > 0)
             {
                 num = 1;
             }
             else
             {
                 num = 0;
             }
             count++;
         }
         Debug.Log("next state is " + nextState);
         DoAction();
     }
 }
Пример #2
0
    private Boataction getNext()
    {
        Boataction next = Boataction.empty;

        if (BoatCoast == 1)
        {
            if (devilNum == 3 && priestNum == 3)//3P3DB
            {
                next = Boataction.PD;
            }
            else if (devilNum == 2 && priestNum == 3)//3P2DB
            {
                next = Boataction.DD;
            }
            else if (devilNum == 1 && priestNum == 3)//3P1DB
            {
                next = Boataction.PP;
            }
            else if (devilNum == 2 && priestNum == 2)//2P2DB
            {
                next = Boataction.PP;
            }
            else if (devilNum == 3 && priestNum == 0)//3DB
            {
                next = Boataction.DD;
            }
            else if (devilNum == 1 && priestNum == 1)//1P1DB
            {
                next = Boataction.PD;
            }
            else if (devilNum == 2 && priestNum == 0)//2DB
            {
                next = Boataction.D;
            }
            else if (devilNum == 1 && priestNum == 2)//2P1DB
            {
                next = Boataction.P;
            }
            else if (devilNum == 2 && priestNum == 1)//1P2DB
            {
                next = Boataction.P;
            }
            else if (devilNum == 1 && priestNum == 0)//1DB
            {
                next = Boataction.D;
            }
            else if (devilNum == 3 && priestNum == 2)//2P3DB
            {
                next = Boataction.D;
            }
            else
            {
                next = Boataction.empty;
            }
        }
        else
        {
            if (devilNum == 2 && priestNum == 2)//2P2D
            {
                next = Boataction.empty;
            }
            else if (devilNum == 1 && priestNum == 3)//3P1D
            {
                next = Boataction.empty;
            }
            else if (devilNum == 2 && priestNum == 3)//3P2D
            {
                next = Boataction.D;
            }
            else if (devilNum == 0 && priestNum == 3)//3P
            {
                next = Boataction.empty;
            }
            else if (devilNum == 1 && priestNum == 1)//1P1D
            {
                next = Boataction.D;
            }
            else if (devilNum == 2 && priestNum == 0)//2D
            {
                next = Boataction.D;
            }
            else if (devilNum == 1 && priestNum == 0)//1D
            {
                next = Boataction.empty;
            }
            else
            {
                next = Boataction.empty;
            }
        }
        return(next);
    }