public void Init() { GameLog.Debug("---------------------------LuaManager:Init--------------------------------------------"); _lua = new LuaState(); initLuaBinder = new Thread(StartLuaBinder); initLuaBinder.Start(); }
public static void Execute(object obj, ElapsedEventArgs args) { GameLog.Debug("Job starting"); try { // FIXME: make this more efficient / don't break our own conventions foreach (var connection in GlobalConnectionManifest.WorldClients) { var client = connection.Value; var connectionId = connection.Key; if (client.IsIdle()) { User user; if (Game.World.WorldData.TryGetValueByIndex(connectionId, out user)) { user.Motion(16, 120); // send snore effect } else { GameLog.WarningFormat( "Connection id {0} marked as idle but no corresponding user found...?", connectionId); } } } GameLog.Debug("Job complete"); } catch (Exception e) { Game.ReportException(e); GameLog.Error("Exception occured in job:", e); } }
public static void Execute(object obj, ElapsedEventArgs args) { GameLog.Debug("Job starting"); try { foreach (var connection in GlobalConnectionManifest.WorldClients) { var client = connection.Value; var connectionId = connection.Key; User user; if (Game.World.WorldData.TryGetValueByIndex(connectionId, out user)) { if (client.IsHeartbeatExpired()) { GameLog.InfoFormat("{0} (connection id {1}: heartbeat expired, disconnecting", user.Name, connectionId); GlobalConnectionManifest.DeregisterClient(client); World.ControlMessageQueue.Add(new HybrasylControlMessage(ControlOpcodes.CleanupUser, CleanupType.ByConnectionId, connectionId)); } } } } catch (Exception e) { Game.ReportException(e); GameLog.ErrorFormat("Exception occurred in job:", e); } }
private void AppendExtensionComponents() { var stage = new Stage(this, ConfigurationStore); _stage = stage; Components.Add(stage); var pluginManager = (ArcaeaSimPluginManager)PluginManager; var instantiatedIDList = new List <string>(); foreach (var factoryID in pluginManager.InstancingFactoryIDs) { var factory = pluginManager.GetPluginByID <IBaseGameComponentFactory>(factoryID); var component = factory?.CreateComponent(this, stage); if (component != null) { stage.Components.Add(component); instantiatedIDList.Add(factoryID); } } if (instantiatedIDList.Count > 0) { GameLog.Debug("Instantiated component factories: {0}", string.Join(", ", instantiatedIDList)); } else { GameLog.Debug("No component factory instantiated."); } }
public virtual void OnAppPause() { GameLog.Debug("OnAppPause"); UserPrefs.SetDateTime("AppSession.StartTime", this.StartTime); this.PauseTime = DateTime.UtcNow; UserPrefs.SetDateTime("AppSession.PauseTime", this.PauseTime); }
public static void Execute(object obj, ElapsedEventArgs args) { GameLog.Debug("Status tick job starting"); foreach (var connectionId in GlobalConnectionManifest.WorldClients.Keys) { User user; if (Game.World.WorldData.TryGetValueByIndex(connectionId, out user)) { if (user.ActiveStatusCount > 0 && user.Condition.Alive) { World.ControlMessageQueue.Add(new HybrasylControlMessage(ControlOpcodes.StatusTick, user.Id)); } } } foreach (var wobj in Game.World.ActiveStatuses) { if (wobj is Creature creature) { if (creature.Condition.Alive) { World.ControlMessageQueue.Add(new HybrasylControlMessage(ControlOpcodes.StatusTick, wobj.Id)); } else { Game.World.ActiveStatuses.Remove(wobj); } } } GameLog.Debug("Status tick job ending"); }
public void OnTestAsyncEvent(object[] param) { string test = param[0].ToString(); GameLog.Debug("<color=#00ff11>---------------------------OnTestAsyncEvent:{0}------------------------------</color>", test); EventManager.UnRegisterEvent(DataEvent.TestAsyncEvent, OnTestAsyncEvent); }
void Tick(uint uDeltaTimeMS) { a += 1; GameLog.Debug("<color=#9900ff>----------------------CurFrame = {0}---------------</color>", a); //GameLog.Debug("***************uDeltaTimeMS = {0}", uDeltaTimeMS); EventManager.Tick(uDeltaTimeMS); MainProcedure.Instance.Tick(uDeltaTimeMS); }
public override void OnEnter(BaseState <SceneAction> previousState, object data) { GameLog.Debug(Tag + " OnEnter"); if (this.BaseSceneController != null) { this.BaseSceneController.OnEnter(); } }
public override void OnExit(BaseState <SceneAction> nextState, object data) { GameLog.Debug(Tag + " OnExit"); if (this.BaseSceneController != null) { this.BaseSceneController.OnExit(nextState == null); } }
public override void ShowTo(User invoker, VisibleObject invokee) { var dialogPacket = base.GenerateBasePacket(invoker, invokee); invoker.Enqueue(dialogPacket); GameLog.Debug("Sending packet to {Invoker}", invoker.Name); RunCallback(invoker, invokee); }
// Use this for initialization void Start() { GameLog.Debug("***************GameManager:Start**************************************"); //Test--------------------------- EventManager.RegisterEvent(DataEvent.TestEvent, OnTestEvent); EventManager.RegisterEvent(DataEvent.TestAsyncEvent, OnTestAsyncEvent); //Test--------------------------- }
void Awake() { GameLog.Debug(Tag + " Awake"); if (Main.Instance != null) { Main.Instance.SceneStateManager.TestState.BaseSceneController = this; } }
public void LoadGameInitConfig() { if (_gameInitConfig_Finish) { return; } GameLog.Debug("------------GameConfigManager:LoadGameInitConfig----------"); ResourceManager.Instance.LoadGameInitConfig(); _gameInitConfig_Finish = true; }
private static void InitLua() { if (_gameLua_Finish) { return; } GameLog.Debug("------------GameConfigManager:InitLua----------"); LuaManager.Instance.Start(); _gameLua_Finish = true; EventManager.SendEvent(DataEvent.FinishLoadGameConfig); }
public void InitLoginScene() { if (IsStartLoadLoginScene) { return; } GameLog.Debug("--------------------ScenesManager:InitLoginScene-----------------LoginSceneId = {0}", LoginSceneId); IsStartLoadLoginScene = true; LoadLoginSceneFinish();//临时测试流程 }
public void Tick(uint uDeltaTimeMS) { switch (_CurLogicType) { case LogicType.Init: GameLog.Debug("--------------------MainProcedure:Tick----------Init----"); SwitchProcedure(LogicType.Config); break; case LogicType.Config: GameLog.Debug("--------------------MainProcedure:Tick----------Config----"); GameConfigManager.Instance.LoadGameInitConfig(); LuaManager.Instance.Init(); SwitchProcedure(LogicType.DownLoad); break; case LogicType.DownLoad: GameLog.Debug("--------------------MainProcedure:Tick----------DownLoad----"); //TODO SwitchProcedure(LogicType.GameInit); break; case LogicType.GameInit: GameLog.Debug("--------------------MainProcedure:Tick----------GameInit----"); GameConfigManager.Tick(uDeltaTimeMS); ScenesManager.Instance.InitLoginScene(); GameConfigManager.Instance.GameConfigInit(); if (_finishLoadGameConfig && _finishLoadLoginScenes) { SwitchProcedure(LogicType.Login); } break; case LogicType.Login: GameLog.Debug("--------------------MainProcedure:Tick----------Login----"); //Test---------------------------- EventManager.SendEvent(DataEvent.TestEvent, "Hello Event!"); EventManager.SendEventAsync(DataEvent.TestAsyncEvent, "Hello AsyncEvent!"); //Test---------------------------- SwitchProcedure(LogicType.Game); break; case LogicType.Game: GameLog.Debug("--------------------MainProcedure:Tick----------Game----"); //Test---------------------------- EventManager.SendEvent(DataEvent.TestEvent, "Hello Event2!"); //不会再执行~已被UnRegister了 EventManager.SendEvent(DataEvent.TestAsyncEvent, "Hello AsyncEvent2!"); //Test---------------------------- break; } }
public static void Execute(object obj, ElapsedEventArgs args) { GameLog.Debug("Status tick job starting"); foreach (var connectionId in GlobalConnectionManifest.WorldClients.Keys) { User user; if (World.ActiveUsers.TryGetValue(connectionId, out user)) { World.ControlMessageQueue.Add(new HybrasylControlMessage(ControlOpcodes.StatusTick, user.Name)); } } GameLog.Debug("Status tick job ending"); }
public void Init() { GameLog.Debug("---------------------------------------MainProcedure:Init---------------------------------------"); _CurLogicType = LogicType.Init; GameLog.Debug("------------MainProcedure:Init----------Application.dataPath = {0}", Application.dataPath); GameLog.Debug("------------MainProcedure:Init----------Application.streamingAssetsPath = {0}", Application.streamingAssetsPath); GameLog.Debug("------------MainProcedure:Init----------Application.persistentDataPath = {0}", Application.persistentDataPath); GameLog.Debug("------------MainProcedure:Init----------Application.temporaryCachePath = {0}", Application.temporaryCachePath); EventManager.RegisterEvent(DataEvent.FinishLoadGameConfig, OnFinishLoadGameConfig); EventManager.RegisterEvent(DataEvent.FinishLoadLoginScenes, OnFinishLoadLoginScenes); }
/// <summary> /// Remove all statuses from a user. /// </summary> public void RemoveAllStatuses() { lock (_currentStatuses) { foreach (var status in _currentStatuses.Values) { _removeStatus(status, false); } _currentStatuses.Clear(); GameLog.Debug($"Current status count is {_currentStatuses.Count}"); } }
public static void OnFxcxPostProcessBuild(BuildTarget target, string pathToBuiltProject) { if (BuildTarget.Android == target) { GameLog.Debug("<color=#aa0099>--------------FXCX_PostProcess:OnFxcxPostProcessBuild----Target = Android---------</color>"); GameLog.Debug("<color=#aa0099>--------------FXCX_PostProcess:OnFxcxPostProcessBuild----pathToBuiltProject = " + pathToBuiltProject + "---------</color>"); //PostProcessAndroidBuild(pathToBuiltProject); } else if (BuildTarget.iOS == target) { GameLog.Debug("<color=#aa0099>--------------FXCX_PostProcess:OnFxcxPostProcessBuild----Target = iOS---------</color>"); GameLog.Debug("<color=#aa0099>--------------FXCX_PostProcess:OnFxcxPostProcessBuild----pathToBuiltProject = " + pathToBuiltProject + "---------</color>"); } }
private void StartLuaBinder() { GameLog.Debug("==============================StartLuaBinder"); //var startBinderTime = Time.realtimeSinceStartup;//get_realtimeSinceStartup can only be called from the main thread. DateTime startBinderTime = System.DateTime.Now; LuaBinder.Bind(_lua); //var endtBinderTime = Time.realtimeSinceStartup; DateTime endtBinderTime = System.DateTime.Now; TimeSpan delta = endtBinderTime - startBinderTime; GameLog.Debug("==============================LuaBinderTimeCost = {0}", delta.TotalMilliseconds.ToString()); _binderFinish = true; }
public virtual void OnAppResume() { GameLog.Debug("OnAppResume"); DateTime utcNow = DateTime.UtcNow; if (this.PauseTime > utcNow) { return; } if (utcNow > this.PauseTime + AppSession.SessionResetPauseDuration) { this.CreateNewSession(this.PauseTime); this.FireNewSessionEvent(); } }
public static void Execute(object obj, ElapsedEventArgs args) { GameLog.Debug("MerchantInventoryRefresh Job starting"); try { foreach (Merchant merchant in Game.World.Objects.Values.Where(x => x is Merchant)) { merchant.RestockInventory(); } } catch (Exception e) { Game.ReportException(e); GameLog.Error("Exception occured in MerchantInventoryRefresh job:", e); } }
public byte[] LoadDataBytesByPath(string path) { path = HandleFilePath(path); byte[] byteArr = null; #if UNITY_EDITOR GameLog.Debug("ResourceBase:LoadDataBytesByPath----fullpath = {0}", path); byteArr = System.IO.File.ReadAllBytes(path); if (byteArr == null) { GameLog.Error("ERROR!!!----ResourceBase:LoadDataBytesByPath----path = {0}", path); return(byteArr); } #elif UNITY_ANDROID #elif UNITY_IPHONE #endif return(byteArr); }
public static void Execute(object obj, ElapsedEventArgs args) { try { GameLog.Debug("Job starting"); foreach (var client in GlobalConnectionManifest.WorldClients.Values) { client.SendTickHeartbeat(); } GameLog.Debug("Job complete"); } catch (Exception e) { Game.ReportException(e); GameLog.Error("Exception occured in job:", e); } }
public static void Execute(object obj, ElapsedEventArgs args) { try { GameLog.Debug("Job starting"); var now = DateTime.Now.Ticks; foreach (var client in GlobalConnectionManifest.WorldClients.Values) { client.CheckIdle(); } GameLog.Debug("Job complete"); } catch (Exception e) { GameLog.Error("Exception occured in job:", e); } }
private void LoadGameTable() { if (_gameTable_Finish) { return; } GameLog.Debug("------------GameConfigManager:LoadGameTable----------"); TableManager.Instance.Init(); //Test Only4TestVO dataVO = (Only4TestVO)TableManager.Instance.GetTableData("Only4Test", 1); GameLog.Debug("-----------GameConfigManager:LoadGameTable-----Only4Test Value = {0}", dataVO.Name); //Test end //TODO----- _gameTable_Finish = true; }
public void Start() { if (!_binderFinish || _hasFinish) { GameLog.Error("ERROR!!!---------------LuaManager:Start-----------------------(!_binderFinish || _hasFinish)"); return; } GameLog.Debug("-----------LuaManager:Start-----------------------LuaInit!!!!!"); var startLuaStartTime = Time.realtimeSinceStartup; _lua.Start(); var endLuaStartTime = Time.realtimeSinceStartup; GameLog.Debug("==============================LuaStartTimeCost = {0}", (endLuaStartTime - startLuaStartTime).ToString()); var startLuaDoFileTime = Time.realtimeSinceStartup; try { _lua.DoFile(LuaRoot); } catch (Exception e) { GameLog.Error("ERROR!!!==============================Lua Init Fail!!!!"); GameLog.Error(e.Message); } var endLuaDoFileTime = Time.realtimeSinceStartup; GameLog.Debug("==============================LuaDoFileTimeCost = {0}", (endLuaDoFileTime - startLuaDoFileTime).ToString()); var startLuaProjectTime = Time.realtimeSinceStartup; var luaStartFunc = _lua.GetFunction("Start"); if (luaStartFunc != null) { luaStartFunc.Call(); } var finishStartLuaProjectTime = Time.realtimeSinceStartup; GameLog.Debug("==============================LuaCallFuncTimeCost = {0}", (finishStartLuaProjectTime - startLuaProjectTime).ToString()); //TODO LuaEventManager Finish(); }
//这里处理一些在各个场景都要用到的事件,如 弹出警告框,货币更新等 public override void OnAction(SceneAction gameAction, object data) { //GameLog.Debug("current State : " + Tag + " OnAction " + gameAction); SceneStateManager mgr = this.SceneStateManager as SceneStateManager; switch (gameAction) { case SceneAction.Tips: break; case SceneAction.BackButton: this.ChangeState(mgr.InitialState); break; default: GameLog.Debug(Tag + ":" + gameAction + " No Match"); break; } }