Beispiel #1
0
 private void SyncPosition()
 {
     if (UnitInfo.AgentStatus == AgentStatus.Move)
     {
         string     json     = JsonUtility.ToJson(UnitInfo);
         JSONObject moveData = new JSONObject(json);
         FixedMove.StartMove(moveData);
     }
     else
     {
         FixedMove.Stop();
     }
 }
Beispiel #2
0
        public void Dead()
        {
            Debugger.Log(AgentID + ": dead called from animation");
            unitSubject.Remove(observer);
            deathEvents?.Invoke(this);
            deathEvents = null;


            FixedMove.Stop();
            NavAgent?.Stop();
            Unbinding();
            unitSubject.Remove(observer);
            unitSubject.ObserverPooling.Release(observer);
        }
Beispiel #3
0
    //Use weapon
    void checkAction()
    {
        if (Input.GetKeyUp(KeyCode.A))
        {
            GameObject b;

            AudioSource.PlayClipAtPoint(SFXSword, Camera.main.transform.position);

            switch (weapon)
            {
            case WEAPON.BOOMERANG: b = Instantiate(boomerang, transform.position, transform.rotation) as GameObject;
                break;

            case WEAPON.SWORD: b = Instantiate(sword, transform.position, transform.rotation) as GameObject;
                break;

            default:
                b = Instantiate(boomerang, transform.position, transform.rotation) as GameObject;
                break;
            }

            FixedMove fm = b.GetComponent("FixedMove") as FixedMove;
            fm.movementDirection = lookingTo;

            switch (lookingTo)
            {
            case MOVEMENTDIRECTION.UP:
                b.transform.position += new Vector3(0, 0.2f, 0);
                break;

            case MOVEMENTDIRECTION.DOWN:
                b.transform.position += new Vector3(0.3f, -0.7f, 0);
                b.transform.Rotate(0, 0, 180);
                break;

            case MOVEMENTDIRECTION.LEFT:
                b.transform.position += new Vector3(-0.2f, -0.4f, 0);
                b.transform.Rotate(0, 0, 90);
                break;

            case MOVEMENTDIRECTION.RIGHT:
                b.transform.position += new Vector3(0.4f, -0.1f, 0);
                break;
            }
        }
    }