Esempio n. 1
0
    public void ComputeNextMove(ChaseMode mode)
    {
        Vector2 target;

        if (Spawned)
        {
            Move();

            switch (mode)
            {
            case ChaseMode.Chase:
                target = ComputeTarget(type);
                break;

            case ChaseMode.Scatter:
                target = ScatterTarget(type);
                break;

            case ChaseMode.Frighten:
                target = ScatterTarget(type);
                break;

            default:
                target = position;
                break;
            }

            currentDir = (MoveDir)GetTurnClosestToTarget(position, target, GetOpenTiles(position));

            //Debug
            Debug.DrawLine(transform.localPosition, Misc.ConvertToMatrixCoordinates(target), GetComponent <Renderer>().material.color, FindObjectOfType <GameManager>().timeTillUpdate, false);
        }
    }
Esempio n. 2
0
    public void DoDfsClick()
    {
        PacmanBehavior pacmanBehavior = GetPacmanBehavior();

        if (pacmanBehavior != null)
        {
            pacmanBehavior.DoDFS();
        }
    }
Esempio n. 3
0
    public PacmanBehavior GetPacmanBehavior()
    {
        GameObject     pacmanGameObject = GameObject.Find("PacmanTile");
        PacmanBehavior pacmanBehavior   = null;

        if (pacmanGameObject != null)
        {
            pacmanBehavior = pacmanGameObject.GetComponent <PacmanBehavior> ();
        }
        return(pacmanBehavior);
    }
Esempio n. 4
0
    void InitPacman()
    {
        //Instantiating pacman's object
        pacman      = Instantiate(pacman, levels[defaultSpawn].transform);
        pacman.name = "Pacman";
        pacman.transform.localPosition = new Vector3(pacman.transform.localPosition.x, pacman.transform.localPosition.y, pacman.transform.localPosition.z - 1);

        //Init pacman spawn coordinates
        pacman.level = levels[defaultSpawn];
        pacman.score = score;
        pacman.Spawn();
    }