public void DoAction(float posx, float posy, float duration, int action, int effect, float dir) { UnitFSM.Blackboard b = fsm.blackboard; b.action = action; b.effect = effect; b.elapsedTime = 0; b.duration = duration; transform.rotation = Quaternion.Euler(0, dir, 0); fsm.Transition(UnitFSM.State.ID.Action); Debug.LogFormat("{0} DoAction {1}", gameObject.name, action); }
public void DoAction(int action, int effect, float duration, float dir) { UnitFSM.Blackboard b = fsm.blackboard; b.elapsedTime = 0; b.duration = duration; fsm.Transition(UnitFSM.State.ID.Action); MsgDoAction_S2C msg = new MsgDoAction_S2C(); msg.id = id; msg.posx = position.x; msg.posy = position.y; msg.duration = duration; msg.dir = dir; msg.action = action; msg.effect = effect; m_game.Broadcast(msg); }