void InitGame() { //add a bunch of startup logic (other classes, other components). SM_ScreenMgr_ = gameObject.AddComponent <SM_ScreenMgr>(); GPM_GamepadMgr_ = gameObject.AddComponent <GPM_GamepadMgr>(); PM_PlayerMgr_ = gameObject.AddComponent <PM_PlayerMgr>(); GSM_GameStateMgr_ = gameObject.AddComponent <GSM_GameStateMgr>(); MM_MazeMgr_ = gameObject.AddComponent <MM_MazeMgr>(); EM_EventMgr.TriggerEvent("get players"); }
//void UpdateGamepadIconsInSceneS1(string[] gamepadChanges) //prefer to add parameter suppported in event meanager void UpdateGamepadIconsInSceneS1() { //access gamepadIcons by-the-way via coupled dependency for time-being GPM_GamepadMgr gamepadMgr = gameObject.GetComponent <GPM_GamepadMgr>(); string[] coupledGamepadChanges = gamepadMgr.coupledGamepadChanges; //prefer to remove coupling dependency for (int i = 0; i < gamepadIconGos.Count && i < coupledGamepadChanges.Length; i++) { gamepadIconGos[i].GetComponent <GamepadIcon>().Connected = (coupledGamepadChanges[i].Substring(0, 1) == "+"); } }
void UpdatePlayerActiveCount() { //access gamepadIcons by-the-way via coupled dependency for time-being GPM_GamepadMgr gamepadMgr = gameObject.GetComponent <GPM_GamepadMgr>(); string[] coupledGamepadChanges = gamepadMgr.coupledGamepadChanges; //prefer to remove coupling dependency int players = 0; for (int i = 0; i < coupledGamepadChanges.Length; i++) { bool active = coupledGamepadChanges[i].Substring(0, 1) == "+"; if (active) { players++; } } coupledPlayersActive = players; }