public void OnSiteManagerEngine(object sender, StateMsg <bool> msg) { _Logger.Trace("Procesando {0}: {1}", EventTopicNames.SiteManagerEngine, msg); _StateManager.Radio.SiteManager = msg.State; //_StateManager.SiteManager = msg.State; }
public override void onMessage(Movable obj, StateMsg <Movable> msg) { MovableMsg type = (MovableMsg)msg.type; switch (type) { case MovableMsg.breakKinematic: obj.getSM().changeState(NormalState.Instance()); break; case MovableMsg.moveLeft: obj.doMoveLeft(); break; case MovableMsg.moveRight: obj.doMoveRight(); break; case MovableMsg.moveUp: obj.doMoveUp(); break; case MovableMsg.stopMove: obj.doStopMove(); break; case MovableMsg.wait: obj.doWait(); break; } }
public override void onMessage(AIMoveController obj, StateMsg <AIMoveController> msg) { AIMsg type = (AIMsg)msg.type; switch (type) { case AIMsg.reFindPath: case AIMsg.moveTimeIsOver: obj.getSM().changeState(AIFindingPathState.Instance()); break; case AIMsg.catchPlayer: obj.getSM().changeState(AICatchPlayerState.Instance()); break; case AIMsg.catchByTrap: obj.getSM().changeState(AICatchByTrapState.Instance()); break; case AIMsg.waitForSomebody: AIMoveController ai = (AIMoveController)msg.sender; obj.setWaitThisAI(ai); obj.getSM().changeState(AIWaitState.Instance()); break; } }
public void OnHoldTlfCallEngine(object sender, StateMsg <bool> msg) { _Logger.Trace("Procesando {0}: {1}", EventTopicNames.HoldTlfCallEngine, msg); // JCAM: 03/01/2017 // Por aquí pasa cuando, habiendo actividad en telefonía se hace PTT // o LC y la telefonía viene por altavoz // Debe aparcar las conversaciones establecidas y las aparcadas dejarlas aparcadas // Si la primera que encuentra está en estado de Hold o RemoteHold no aparcaría // la que está en conversación. Es por eso que se elimina de la búsqueda // las posiciones en estado de Hold o RemoteHold if (msg.State) { int id = _StateManager.Tlf.GetFirstInState(TlfState.Set, TlfState.Conf, TlfState.Out); //, TlfState.RemoteHold, TlfState.Hold); if (id >= 0) { //Aparco las conversaciones establecidas y las salientes (en diferido) _EngineCmdManager.SetHold(id, msg.State, true); } } else { _EngineCmdManager.SetHold(-1, msg.State, true); } }
void ClientUpdate() { if (m_ClientSession.GetRecvedData(m_ClientRecvedData)) { while (m_ClientRecvedData.Count != 0) { var data = m_ClientRecvedData.Dequeue(); StateMsg msg = new StateMsg(); msg.Unserialize(data); if (msg.TimeStamp > m_LastTimeStamp) { m_TargetPos = msg.TargetPosition; m_TargetRot = msg.TargetOrientation; m_StartPos = ClientObjectTF.position; m_StartRot = ClientObjectTF.rotation; m_TotalTime = (m_TotalTime - m_SimTime) + msg.TimeStamp - m_LastTimeStamp; if (m_TotalTime > 1f) { m_TotalTime = msg.TimeStamp - m_LastTimeStamp; } m_SimTime = 0; m_LastTimeStamp = msg.TimeStamp; } } } if (m_TotalTime < Mathf.Epsilon) { return; } m_SimTime += Time.deltaTime; float ratio = Mathf.Clamp01(m_SimTime / m_TotalTime); ClientObjectTF.position = Vector3.Lerp(m_StartPos, m_TargetPos, ratio); ClientObjectTF.rotation = Quaternion.Slerp(m_StartRot, m_TargetRot, ratio); }
public void SendMessage(StateMsg newMsg) { bool shouldBeLost = false; if (LostRate != 0.0f) { float rand = Random.Range(0.0f, 1.0f); if (rand <= LostRate) { shouldBeLost = true; } } if (!shouldBeLost) { if (DelaySec == 0.0f) { Dispatch(newMsg); } else { m_MsgList.Add(new Msg(newMsg, Time.realtimeSinceStartup + DelaySec)); } } }
public override void onMessage(Movable obj, StateMsg <Movable> msg) { MovableMsg type = (MovableMsg)msg.type; switch (type) { case MovableMsg.onLabber: obj.getSM().changeState(OnLabberState.Instance()); break; case MovableMsg.toNormal: obj.getSM().changeState(NormalState.Instance()); break; case MovableMsg.moveDown: //降落 if (!obj.downTileIsBlock()) { obj.setFallTargetY(true); obj.getSM().changeState(FallToTargetState.Instance()); } break; case MovableMsg.moveLeft: obj.doMoveLeft(); obj.adjustWhenMoveOnRope(); break; case MovableMsg.moveRight: obj.doMoveRight(); obj.adjustWhenMoveOnRope(); break; case MovableMsg.stopMove: obj.doStopMove(); break; case MovableMsg.wait: obj.doWait(); break; case MovableMsg.moveUp: //通知發訊者此動作無效 if (msg.sender != null) { //從繩子移到JumpPoint會發動fall to rope,這時目標就停留在JumpPoint // //--J // -- if (Movable.Debug_do_moveUp) { obj.printDebugMsg("[注意!]do MoveUp on rope"); } AIMoveController ai = msg.sender.myAI; ai.getSM().handleMessage(new StateMsg <AIMoveController>((int)AIMsg.reFindPath, null)); } break; } }
public void SetSiteChanged(StateMsg <string> msg) { // 0: Alias // 1: Frequency // 2: resultado string[] changeSiteRsp = msg.State.Split(','); for (int i = 0; i < Radio.NumDestinations; i++) { if (ChangingSite(i)) { if (changeSiteRsp[2].ToUpper() == "TRUE") { _Dst[i].Reset(_Dst[i].TempAlias); } else { _Dst[i].TempAlias = _Dst[i].Alias; } } else if (_Dst[i].Frecuency == changeSiteRsp[1]) { if (changeSiteRsp[2].ToUpper() == "TRUE") { _Dst[i].Reset(changeSiteRsp[0]); } else { _Dst[i].TempAlias = _Dst[i].Alias; } } } General.SafeLaunchEvent(SiteChanged, this, msg); }
void Dispatch(StateMsg sMsg) { Receiver.SetLastKnownTranslation(sMsg.Pos); Receiver.SetLastKnownVelocity(sMsg.Vel); Receiver.SetLastKnownAcceleration(sMsg.Acc); Receiver.SetLastKnownRotation(sMsg.Rot); Receiver.SetLastKnownAngularVelocity(sMsg.AngVel); }
public void Reset(StateMsg <string> msg) { if (_To != msg.State) { _To = msg.State; StateDescription = _To.Length > 0 ? Resources.IntrudeToDescription + " " + _To : ""; General.SafeLaunchEvent(TlfIntrudeToChanged, this); } }
public void Reset(StateMsg <string> msg) { if (_By != msg.State) { _By = msg.State; StateDescription = _By.Length > 0 ? Resources.InterruptedByDescription + " " + _By : ""; General.SafeLaunchEvent(TlfInterruptedByChanged, this); } }
public override void onMessage(Brick obj, StateMsg <Brick> msg) { BrickMsg type = (BrickMsg)msg.type; switch (type) { case BrickMsg.becomeTrap: obj.getSM().changeState(BrickFadeOutState.Instance()); break; } }
public override void onMessage(Brick obj, StateMsg <Brick> msg) { BrickMsg type = (BrickMsg)msg.type; switch (type) { case BrickMsg.fadeInOk: obj.getSM().changeState(BrickNormalState.Instance()); break; } }
public override void onMessage(AIMoveController obj, StateMsg <AIMoveController> msg) { AIMsg type = (AIMsg)msg.type; switch (type) { case AIMsg.moveTimeIsOver: obj.getSM().changeState(AIFindingPathState.Instance()); break; } }
public override void onMessage(AIMoveController obj, StateMsg <AIMoveController> msg) { AIMsg type = (AIMsg)msg.type; switch (type) { case AIMsg.moveFromTrap: obj.getSM().changeState(AIMoveFromTrapState.Instance()); break; } }
public void SiteChanged(object sender, StateMsg <string> msg) { int absPageBegin = _urrRdPageButton.Page * _NumPositionsByPage; for (int i = 0; i < _NumPositionsByPage; i++) { UrrRdButton bt = _RdButtons[i]; RdDst dst = _StateManager.Radio[i + absPageBegin]; Reset(bt, dst); } }
public void NextState(StateMsg msg) { switch(msg) { case StateMsg.yes: _automat.state = new Remember(_automat); break; case StateMsg.no: _automat.state = new DontRemember(_automat); break; } }
public void OnHangToneStateEngine(object sender, StateMsg <bool> msg) { _Logger.Trace("Procesando {0}: {1}", EventTopicNames.HangToneStateEngine, msg); _StateManager.Tlf.HangTone.Reset(msg); if (!msg.State) { // Cuando se quita el tono de colgado quitamos también (si lo hay) // el mensaje de "Intervenido por:" _StateManager.Tlf.InterruptedBy.Reset(); } }
public void IntrudeToStateEngine(object sender, StateMsg <string> msg) { _Logger.Trace("Procesando {0}: {1}", EventTopicNames.IntrudeToStateEngine, msg); if (msg != null) { _StateManager.Tlf.InterruptedBy.Reset(msg); } else { _StateManager.Tlf.InterruptedBy.Reset(); } }
public void NextState(StateMsg msg) { switch (msg) { case StateMsg.yes: WordEngine.Know(_automat.word); break; case StateMsg.no: WordEngine.DontKnow(_automat.word); break; } _automat.state = new SelectWord(_automat); }
public void NextState(StateMsg msg) { switch (msg) { case StateMsg.yes: PhraseEngine.Know(_automat.phrase); break; case StateMsg.no: PhraseEngine.DontKnow(_automat.phrase); break; } _automat.state = new SelectPhrase(_automat); }
public override void onMessage(Movable obj, StateMsg <Movable> msg) { MovableMsg type = (MovableMsg)msg.type; switch (type) { case MovableMsg.jumpFromRope: obj.getSM().changeState(OnAirState.Instance()); break; case MovableMsg.fallToAlignRopeFinish: obj.getSM().changeState(OnRopeState.Instance()); break; } }
public override void onMessage(AIMoveController obj, StateMsg <AIMoveController> msg) { AIMsg type = (AIMsg)msg.type; switch (type) { case AIMsg.reFindPath: obj.movable.getSM().handleMessage(new StateMsg <Movable>((int)MovableMsg.breakKinematic, null)); obj.getSM().changeState(AIFindingPathState.Instance()); break; case AIMsg.catchPlayer: obj.getSM().changeState(AICatchPlayerState.Instance()); break; } }
public void OnSelCalResponse(object sender, StateMsg <string> msg) { if (msg.State != string.Empty) { _TBDisplayMessages.Text = (msg.State != "Error") ? Resources.SendingTonesSelCal : Resources.ErrorSelCal; switch (Memory++ % 3) { case 0: _BtMem1.Text = _TBDisplayCode.Text; _BtMem1.Enabled = true; break; case 1: _BtMem2.Text = _TBDisplayCode.Text; _BtMem2.Enabled = true; break; case 2: _BtMem3.Text = _TBDisplayCode.Text; _BtMem3.Enabled = true; break; } Reset = true; tableLayoutPanel2.Enabled = _CodePanelEnabled; // Prepara restauracion equipo SELCAL try { if (msg.State != "Error") { _CmdManager.RdPrepareSelCal(false, ""); } } catch (Exception ex) { _TBDisplayMessages.Text = Resources.ErrorSelCal; _Logger.Error("ERROR envío comando SelCal", ex); return; } _TBDisplayMessages.Text = (msg.State != "Error") ? msg.State : Resources.ErrorSelCal; } }
public void OnHfGlobalStatus(object sender, StateMsg <string> msg) { if (msg.State != _HfGlobalStatus) { _HfGlobalStatus = msg.State; _RdPageBT.Page = _StateManager.Radio.Page; int absPageBegin = _RdPageBT.Page * _NumPositionsByPage; for (int i = 0; i < _NumPositionsByPage; i++) { RdButton bt = _RdButtons[i]; RdDst dst = _StateManager.Radio[i + absPageBegin]; UpdateTx(bt, dst); } } }
public override void onMessage(AIMoveController obj, StateMsg <AIMoveController> msg) { AIMsg type = (AIMsg)msg.type; switch (type) { case AIMsg.findPathOk: obj.getSM().changeState(AIMoveState.Instance()); break; case AIMsg.catchByTrap: obj.getSM().changeState(AICatchByTrapState.Instance()); break; case AIMsg.catchPlayer: obj.getSM().changeState(AICatchPlayerState.Instance()); break; } }
void ServerUpdate() { if (m_HasClientConnected == false) { if (m_ServerSession.GetRecvedData(m_ServerRecvedData)) { while (m_ServerRecvedData.Count != 0) { m_HasClientConnected = true; m_ServerRecvedData.Dequeue(); } } } else { Vector3 toTarget = m_ServerTargetPos - m_ServerPos; if (toTarget.sqrMagnitude < 0.5f) { m_ServerTargetPos = new Vector3(Random.Range(-10, 10), 0, Random.Range(-10, 10)); } else { toTarget.Normalize(); m_ServerPos += 6 * Time.deltaTime * toTarget; m_ServerRot = Quaternion.LookRotation(toTarget); } if (Time.time > m_NextSyncTime) { StateMsg msg = new StateMsg(); msg.TargetPosition = m_ServerPos; msg.TargetOrientation = m_ServerRot; msg.TimeStamp = Time.time; m_ServerSession.Send(msg.Serialize()); m_NextSyncTime = Time.time + 0.2f; } ServerObjectTF.position = m_ServerPos; ServerObjectTF.rotation = m_ServerRot; } }
public override void onMessage(Movable obj, StateMsg <Movable> msg) { MovableMsg type = (MovableMsg)msg.type; switch (type) { case MovableMsg.onRope: obj.getSM().changeState(OnRopeState.Instance()); break; case MovableMsg.onLabber: obj.getSM().changeState(OnLabberState.Instance()); break; case MovableMsg.landing: obj.getSM().changeState(NormalState.Instance()); break; case MovableMsg.toKinematic: obj.getSM().changeState(KinematicState.Instance()); break; } }
public void handleMessage(StateMsg <T> msg) { current.onMessage(obj, msg); }
public void NextState(StateMsg msg) { WordEngine.DontKnow(_automat.word); _automat.state = new SelectWord(_automat); }
public void NextState(StateMsg msg) { state.NextState(msg); }
public PhraseState NextState(StateMsg msg) { _phraseAutomat.NextState(msg); return GetState(); }
public void NextState(StateMsg msg) { PhraseEngine.DontKnow(_automat.phrase); _automat.state = new SelectPhrase(_automat); }
public WordState NextState(StateMsg msg) { _wordAutomat.NextState(msg); return GetState(); }
public static string GetMessageType() { return(StateMsg.GetMessageType()); }
public void Reset(StateMsg <FunctionState> msg) { State = msg.State; }
public void Reset(StateMsg <bool> msg) { On = msg.State; }
public void NextState(StateMsg msg) { throw new NotImplementedException(); }
public virtual void onMessage(T obj, StateMsg <T> msg) { }