Exemple #1
0
        public override ActorStateWorld Execute(ActorWorld actor, Vector3 mapSize)
        {
            // Debug.Log("update : StateIdle");
            ActorStateWorld next = this;


            if (!actor.IsMoving)
            {
                int dx = 0, dz = 0, rotY = 0;
                actor.GetMove(out dx, out dz, out rotY);
                actor.restrictMove(mapSize, ref dx, ref dz);

                if (dx != 0 || dz != 0 || rotY != 0)
                {
                    actor.m_trueNextRotY += rotY;
                    actor.smoothMove(dx, dz, rotY);
                }
            }

            if (actor.IsMoving)
            {
                next = new StateWorldMove();
            }

            return(next);
        }
Exemple #2
0
        //mapSizeは使わない
        public override ActorStateWorld Execute(ActorWorld actor, Vector3 mapSize)
        {
            //Debug.Log("update : StateMove");
            ActorStateWorld next = this;

            if (!actor.IsMoving)
            {
                next = new StateWorldIdle();
            }

            return(next);
        }
 public abstract ActorStateWorld Execute(ActorWorld actor, Vector3 mapSize);