private void FreshUI() { GameDataModuel dataModuel = GameStart.GetInstance().DataModuel; FreshHeart(dataModuel.m_heart); FreshNum(dataModuel.m_hitCount); }
public override void EnterState() { GameEventModuel eventModuel = GameStart.GetInstance().EventModuel; eventModuel.RegisterEventListener(GameEventID.Reset_Game_State, HandleResetStateEvent); eventModuel.RegisterEventListener(GameEventID.ENTITY_HIT_BALL, HandleEntityHitBall); GameObject ball = GameObject.Find("Ball"); if (ball != null) { m_ball = CommonFunc.AddSingleComponent <Ball>(ball); m_ball.Reset(); } GameObject chracter = GameObject.Find("Character"); if (chracter != null) { m_entityInstance = chracter.GetComponent <EntityInstance>(); Vector4 moveRange = new Vector4(-1.73f, -0.81f, 3.15f, -5.4f); m_entityInstance.SetMoveRange(moveRange); } GameObject ai = GameObject.Find("AI"); if (ai != null) { m_aiInstance = ai.GetComponent <EntityInstance>(); Vector4 moveRange = new Vector4(-2.09f, 9.3f, 2.61f, 4.61f); m_aiInstance.SetMoveRange(moveRange); ai.AddComponent <AIStateController>(); } GameDataModuel dataModuel = GameStart.GetInstance().DataModuel; dataModuel.SetGameData(3, 0); m_ui = GameObject.FindObjectOfType <GameTestStateUI>(); if (m_ui != null) { m_ui.Init(); } }
private void OnCollisionEnter2D(Collision2D other) { if (other != null) { if (other.gameObject.layer == LayerMask.NameToLayer("Wall")) { ContactPoint2D contactPoint = other.contacts[0]; Vector3 newDir = Vector3.Reflect(m_dir, contactPoint.normal); newDir.z = 0f; //Quaternion rotation = Quaternion.FromToRotation(m_dir, newDir); //transform.rotation = rotation; if (m_rigidBody != null) { m_rigidBody.velocity = newDir.normalized * m_speed; } m_dir = newDir; } else if (other.gameObject.layer == LayerMask.NameToLayer("Boundary")) { GameDataModuel dataModuel = GameStart.GetInstance().DataModuel; if (gameObject.transform.localPosition.y > 0) { dataModuel.AddHeart(); } else { dataModuel.ReduceHeart(); } GameEventModuel eventModuel = GameStart.GetInstance().EventModuel; if (eventModuel != null) { eventModuel.SendEvent(GameEventID.Reset_Game_State, true, 0f); } } } }
private void HandleResetStateEvent(GameEvent eve) { if (m_aiInstance != null) { m_aiInstance.ResetStartPosition(); AIStateController stateController = m_aiInstance.GetComponent <AIStateController>(); if (stateController != null) { stateController.SwitchState(EAIStateType.Idle); } } GameDataModuel dataModuel = GameStart.GetInstance().DataModuel; if (dataModuel.m_heart <= 0) { if (SwitchStateAction != null) { SwitchStateAction(EGameStateType.GameTestState); } GameStart.GetInstance().LogModuel.Log(ELogType.Error, "You Died!!"); return; } if (m_ball != null) { m_ball.Reset(); } if (m_entityInstance != null) { m_entityInstance.ResetStartPosition(); } }
private void HandleEntityHitBall(GameEvent eve) { GameDataModuel dataModuel = GameStart.GetInstance().DataModuel; dataModuel.AddHitCount(); }