public void Init(float animalAnimationSpeed, float animalMoveSpeed, int idxInTeam, float animalAcceleration, float rotateSpeed) { this.animalAnimationSpeed = animalAnimationSpeed; this.moveSpeed = animalMoveSpeed * 0.001f; this.moveSpeedBak = this.moveSpeed; this.animalAccelerationMS = animalAcceleration * 0.001f; this.rotateSpeedMS = rotateSpeed * 0.001f; this.idxInTeam = idxInTeam; isMoving = false; isPassedRoad = false; isArrivedNextRoadPos = false; arrivedLastPos = false; isRotateback = false; isRotateForward = false; rotateAngle = 0f; waitFrameCount = 0; //var a = roadModel.animalRoadSegment[roadModel.animalRoadSegment.Count - 1]; //var b = roadModel.crossRoadRectArea[roadModel.animalRoadSegment.Count - 1].height; //Debug.LogError(a + b * Vector3.forward + Vector3.forward * standardAnimalBoxSize.z); if (fsm == null) { fsm = new FSMCrossRoadAnimal(this); fsm.AddState(new StateCrossRoadAnimalIdle((int)FSMCrossRoadAnimalState.Idle, fsm)); fsm.AddState(new StateCrossRoadAnimalCrossRoad((int)FSMCrossRoadAnimalState.CrossRoad, fsm)); fsm.AddState(new StateCrossRoadRunToEndPoint((int)FSMCrossRoadAnimalState.RunToEndPoint, fsm)); } fsm.GotoState((int)FSMCrossRoadAnimalState.Idle); fsm.Run(); DebugFile.GetInstance().MarkGameObject(mainGameObject, "Animal-{0}", idxInTeam); }
// Start is called before the first frame update void Start() { idle = new State("Idle"); idle.OnEnter += (IState state) => { Debug.Log("进入Idle状态"); }; move = new State("Move"); move.OnUpdate += (float deltaTime) => { transform.position += transform.forward * speed; }; idle2Move = new Transition(idle, move); idle2Move.OnCheck += () => { return(isMove); }; idle.AddTransition(idle2Move); move2idle = new Transition(move, idle); move2idle.OnCheck += () => { return(!isMove); }; move.AddTransition(move2idle); fSMMachine = new FSMMachine("Root", idle); fSMMachine.AddState(move); }
public override void OnInitialize(IResourceLoader loader, params object[] pars) { TurnAgent agent = pars[0] as TurnAgent; m_TurnFSM = new FSMMachine(); m_TurnFSM.AddState(new SLGTransitionTurn(agent)); m_TurnFSM.AddState(new SLGPlayerTurn(agent)); m_TurnFSM.AddState(new SLGOppositeTurn(agent)); }
void Start() { machine = new FSMMachineTest(); state1 = new FSMState1("state1", machine); state2 = new FSMState2("state2", machine); machine.AddState(state1); machine.AddState(state2); machine.GotoState("state1"); }
public StateVisitorGotoStartOfExitGateEntryPath(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { extendPathList = new List <Vector3>(); if (extendOffset == Vector3.zero) { extendOffset.x -= Config.globalConfig.getInstace().ZooPartResLen; } }
public override void OnRecovery() { base.OnRecovery(); this.Deactive(); this.followPath.Release(); followPath = null; fsmMachine.Release(); this.fsmMachine = null; }
// Use this for initialization void Start() { fSMMachine = new FSMMachine <StateExample>("Example"); fSMMachine.DefaultState = StateExample.LightOffOn; fSMMachine.AddStatus(StateExample.LightOffOn, new LightingSwitchOffState()); fSMMachine.AddStatus(StateExample.LightColorSwitch, new LightingColorChangeState(Color.red)); fSMMachine.Run(); StartCoroutine(ChangeState()); }
public override void OnRecovery() { base.OnRecovery(); this.Deactive(); this.followPath.Release(); followPath = null; fsmMachine.Release(); this.fsmMachine = null; shuttleVisitorList.Clear(); }
public void Launch() { m_ResLoader = new ResourceLoader(); m_UIManager = CreateSystem <UIManager>(); m_InputSystem = InputSystem.Instance; m_SceneFSM = new FSMMachine(); m_SceneFSM.AddState(new StartScene()); m_SceneFSM.AddState(new FightingScene()); m_SceneFSM.SetDefaultState(SceneDefines.SCENE_START); GameCamera.Instance.Camera = Camera.main; }
void Start() { _fsm = new FSMMachine(); IdleState idle = new IdleState(); SelectState selecting = new SelectState(); ViewState viewing = new ViewState(); UploadState uploading = new UploadState(); _fsm.AddState(idle); _fsm.AddState(selecting); _fsm.AddState(viewing); _fsm.AddState(uploading); _fsm.initialCurrentState = idle; }
public override void OnRecovery() { base.OnRecovery(); this.Deactive(); this.followPath.Release(); followPath = null; fsmMachine.Release(); this.fsmMachine = null; animWeight.Clear(); anim.Release(); anim = null; groundParkingGroupID = Const.Invalid_Int; groundParkingIdx = Const.Invalid_Int; }
public StateLoadOrgScene(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateCrossRoadRunToEndPoint(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorLeaveNonLittleZoo(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorStayFirstPosInEntryQueue(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
///// <summary> ///// 所有动物实体列表(按照顺序排队) ///// </summary> //public static List<EntityCrossRoadAnimal> entityCrossRoadAnimalList; public StateLoadAnimal(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorGotoExitGateEntryQueue(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public FSMState(int code, object param, FSMMachine machine) { this.code = code; this.param = param; this.machine = machine; }
public FSMState(int code, object param, FSMMachine machine) { this.code = code; this.param = param; this.machine = machine; }
public StateVisitorStayVisitSeat(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorLeaveZooEntryQueueFull(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorGotoGroundParking(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateLoadAnimalInLittleZooForGame(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorEnterLittleZooApply(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
//bool isToStateShuttleGotoCalcPath = false; public StateShuttleGobackDynamicPath(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateUpdate(string stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateLogin(string stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorChoseLittleZoo(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateVisitorLeaveFromZooEntry(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public FSMState1(string stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }
public StateCrossRoadAnimalIdle(int stateName, FSMMachine fsmCtr) : base(stateName, fsmCtr) { }