Ejemplo n.º 1
0
    void Update()
    {
        _playerObj.GetDirection();
        _info.UpdateInfo();

        while (Time.time >= _nextMoveTime)
        {
            _nextMoveTime = Time.time + _deltaMoveTime;

            _playerObj.Move();
            _landEnemyObj.Move();
            foreach (SeaEnemy seaEnemy in _seaEnemies)
            {
                seaEnemy.Move();
            }

            _nextLevelObj.WonLevel();
            _gameOverObj.GameIsOver();
        }

        if (Input.GetKeyDown(KeyCode.Escape))
        {
            Application.Quit();
        }
    }
Ejemplo n.º 2
0
    public void UpdateTransform(int id)
    {
        GameObject unit = GameMgr.Instance.GetObjectWithID(id);

        int dir;
        int pos_r, pos_c;

        float pos_z, pos_y, pos_x;;

        float angle;

        if (id == 1 || id == 3)   //만약 플레이어라면
        {
            PlayerCtrl playerctrl = unit.GetComponent <PlayerCtrl>();
            dir = playerctrl.GetDirection();

            pos_r = playerctrl.pos.R;
            pos_c = playerctrl.pos.C;
        }
        else     //인공지능이라면

        {
            AICtrl aictrl = unit.GetComponent <AICtrl>();
            dir = aictrl.GetDirection();

            pos_r = aictrl.pos.R;
            pos_c = aictrl.pos.C;
        }


        pos_z = 14.5f - pos_r;
        pos_x = -14.5f + pos_c;
        pos_y = 0.3f;


        switch (dir)
        {
        case 0:
            angle = 180;
            break;

        case 1:
            angle = 270;
            break;

        case 2:
            angle = 0;
            break;

        case 3:
            angle = 90;
            break;

        default:
            angle = 0;
            break;
        }

        unit.transform.position    = new Vector3(pos_x, pos_y, pos_z);
        unit.transform.eulerAngles = new Vector3(0, angle, 0);
    }