private void UpdateDrawing() { if (_actions.Get(EControllerBtns.Sure).WasPressed) { GameEventCenter.Send(GameEvent.UI_NextChat); } }
public void OnDestroy() { _cardList.Clear(); _currCard?.OnDestroy(); _currCard = null; GameEventCenter.RemoveListener(GameEvent.OnPlayerDead, OnPlayerDead); }
// Update is called once per frame void Update() { //Debug.Log("XXXX"); //if (ScoreManager.score == goalScore) if (timerStatus) { timer += Time.deltaTime; } if (Input.GetKeyDown(KeyCode.X)) { Debug.Log("QQQQQ"); timeEnd = Mathf.FloorToInt(Time.time); time.text = "花費時間" + (timeEnd - timeStart); transform.GetComponent <Canvas>().transform.GetChild(0).gameObject.SetActive(true); } if (Input.GetKeyDown(KeyCode.W)) { GameEventCenter.DispatchEvent("TimerStart"); //ScoreManager.gameStatus++; } if (Input.GetKeyDown(KeyCode.Q)) { //timeEnd = Mathf.FloorToInt(Time.time); GameEventCenter.DispatchEvent("TimerStop"); Debug.Log("timer:" + timeEnd); } }
private void Drop() { if (!mCurrentInteractable) { return; } /*mCurrentInteractable.transform.position = originPosition; * mCurrentInteractable.transform.rotation = originRotation;*/ if (mCurrentInteractable.gameObject.name == "panObject(Clone)") { GameEventCenter.DispatchEvent("SpawnPan"); } else if (mCurrentInteractable.gameObject.name == "dishObject(Clone)") { GameEventCenter.DispatchEvent("SpawnDish"); } GameEventCenter.DispatchEvent("MotionSuccess", 0); Destroy(mCurrentInteractable.gameObject); mContactInteractables = new List <Interactable>(); //GameEventCenter.DispatchEvent("InitStatus"); mJoint.connectedBody = null; mCurrentInteractable.mActiveHand = null; mCurrentInteractable = null; }
private void OnDead() { if (IsDead) { return; } IsDead = true; //音效 Sound.PlayUiAudioOneShot(Deploy.deadSound); //特效 EffectFactory.PlayEffectOnce(Deploy.deadEffect, transform.position); //播放shader特效 StageCamera2D.Instance.PlayDeadEffect(transform.position); //销毁僚机 SupportMgr.Clear(); //销毁自己 Destroy(gameObject); //发事件 GameEventCenter.Send(GameEvent.OnPlayerDead); //销毁子弹 BulletExplosion.Create(transform.position, 0.3f); }
protected override void OnLoadFinish() { base.OnLoadFinish(); _bind = GetComponent <UIDrawingChatComponent>(); GameEventCenter.AddListener(GameEvent.UI_NextChat, OnClickNext); DialogMgr.InDrawingDialog = true; }
void Awake() { gameStatus = -1; transform.GetComponent <Canvas>().transform.GetChild(0).gameObject.SetActive(false); //goalScore = GameDataManager.FlowData.GameData.dishCount; if (GameDataManager.FlowData.GameData.hand == "right") { hand.text = "操作手:右手"; } else { hand.text = "操作手:左手"; } angle.text = "角度:" + GameDataManager.FlowData.GameData.angle; dish.text = "盤數:" + GameDataManager.FlowData.GameData.dishCount; quit.onClick.AddListener(QuitButton); GameEventCenter.AddEvent("TimerStart", TimerStart); GameEventCenter.AddEvent("TimerStop", TimerStop); GameEventCenter.AddEvent("GetScore", GetScore); GameEventCenter.AddEvent <int>("MotionSuccess", MotionSuccess); // timeStart = Mathf.FloorToInt(Time.time); }
private static IEnumerator LoadImpl(StageDeploy deploy, Action <StageBase> finishAction) { StageBase gameScene = null; yield return(UnloadCurrentScene()); var sceneName = Path.GetFileNameWithoutExtension(deploy.resource); #if UNITY_EDITOR yield return(SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive)); #else yield return(ResourceMgr.LoadScene(deploy.resource, LoadSceneMode.Additive)); #endif CurrentSceneName = sceneName; SceneManager.SetActiveScene(SceneManager.GetSceneByName(sceneName)); GameEventCenter.Send(GameEvent.OnSceneChange); //挂脚本 var typeScene = GetSceneType(deploy.levelClass); var sceneObject = new GameObject("GameScene"); var scene = sceneObject.AddComponent(typeScene) as StageBase; scene.Deploy = deploy; yield return(scene.Init()); finishAction?.Invoke(gameScene); }
void OnGUI() { if (GUI.Button(new Rect(100, 100, 200, 200), "button")) { GameEventCenter.SendEvent(GameEvent.TestEvent); } }
// Start is called before the first frame update public override IEnumerator TaskInit() { spawnPoint = GameObject.Find("SpawnDish"); dish = GameEntityManager.Instance.GetCurrentSceneRes <MainSceneRes>().Dish.gameObject; GameEventCenter.AddEvent("SpawnDish", SpawnDish); yield return(null); }
private void UpdateMenu() { if (_actions.Get(EControllerBtns.Up).WasPressed) { GameEventCenter.Send(GameEvent.UI_Up); } if (_actions.Get(EControllerBtns.Down).WasPressed) { GameEventCenter.Send(GameEvent.UI_Down); } if (_actions.Get(EControllerBtns.Left).WasPressed) { GameEventCenter.Send(GameEvent.UI_Left); } if (_actions.Get(EControllerBtns.Right).WasPressed) { GameEventCenter.Send(GameEvent.UI_Right); } if (_actions.Get(EControllerBtns.Sure).WasPressed) { GameEventCenter.Send(GameEvent.UI_Sure); } if (_actions.Get(EControllerBtns.Cancel).WasPressed) { GameEventCenter.Send(GameEvent.UI_Back); } }
/// <summary> /// 遊戲運行 /// </summary> /// <returns></returns> private IEnumerator Process() { yield return(new WaitForSeconds(5)); GameEventCenter.DispatchEvent("BuildStart"); yield return(null); BuildingCube = GameObject.FindWithTag("MainCubic"); while (!IsFinshed) { // 下面這行是避免CheckIfSame回傳False時進入無限迴圈 yield return(new WaitUntil(() => TargetCube.transform.childCount != BuildingCube.transform.childCount)); // 等到玩家拼出同樣數量的小方塊時才判斷 yield return(new WaitUntil(() => TargetCube.transform.childCount == BuildingCube.transform.childCount)); IsFinshed = CheckIfSame(); } Debug.Log("win"); StopCoroutine(timer); // 結束後關閉VRTK_ControllerEvents,讓玩家無法再進行操作 foreach (VRTK_ControllerEvents events in FindObjectsOfType <VRTK_ControllerEvents>()) { events.enabled = false; } EditUI.ShowResult(); GameAudioManager.instance.PlaySound(FinishSound); yield return(new WaitForSeconds(FinishSound.length)); SceneManager.LoadScene("MainUI"); }
// Start is called before the first frame update public override IEnumerator TaskInit() { Debug.Log("spawn pan 12345"); spawnPoint = GameObject.Find("SpawnPan"); pan = GameEntityManager.Instance.GetCurrentSceneRes <MainSceneRes>().Pan.gameObject; GameEventCenter.AddEvent("SpawnPan", SpawnPan); yield return(null); }
private void OnTriggerEnter(Collider other) { if (other.tag == "Enemy") { other.gameObject.GetComponent <GameEntityBase>().EntityDestroy(); GameEventCenter.DispatchEvent("AddScore"); } }
// Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.W)) { Debug.Log("test0"); GameEventCenter.DispatchEvent("ScoreInit"); } }
// Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.P)) { //this.GetComponent<AudioSource>().clip = get; GameEventCenter.DispatchEvent("PlayMusic"); } }
// Start is called before the first frame update void Start() { Debug.Log("test data:" + data.hand); GameEventCenter.AddEvent("GameInit", GameInit); GameEventCenter.AddEvent("ScoreGet", ScoreGet); GameEventCenter.AddEvent("InitStatus", InitStatus); GameEventCenter.AddEvent("NextStatus", NextStatus); GameEventCenter.AddEvent("RedoStatus", RedoStatus); }
private IEnumerator DoBossDead() { //对话配置 var dialogDeploy = DialogMgr.GetBossDialog(StageMgr.MainPlayer.Deploy.id, Deploy.id, false); //隐藏血条 SetHpHudActive(false); //bossMark隐藏 UIBattle.SetBossMarkActive(false); yield return(new WaitForSeconds(0.3f)); //震屏 if (StageCamera2D.Instance) { StageCamera2D.Instance.Shake(0.7f, 1.2f); } if (StageCamera3D.Instance) { StageCamera3D.Instance.Shake(0.7f, 1.2f); } Sound.PlayUiAudioOneShot(105); //播放shader特效 StageCamera2D.Instance.PlayDeadEffect(transform.position); //隐藏renderer MainRenderer.enabled = false; if (_bossCircle) { _bossCircle.SetActiveSafe(false); } yield return(new WaitForSeconds(0.7f)); //尝试显示对话 if (dialogDeploy != null) { var list = DialogMgr.GetDrawList(dialogDeploy.dialogId); UIDrawingChat.Show(list, null, () => { GameEventCenter.Send(GameEvent.OnEnemyDie); }); } else { GameEventCenter.Send(GameEvent.OnEnemyDie); } yield return(new WaitForSeconds(0.3f)); Destroy(gameObject); }
// Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.Q)) { // this.GetComponent<AudioSource>().clip = clip; // this.GetComponent<AudioSource>().Play(); GameEventCenter.DispatchEvent("BGMFinish"); } }
/// <summary> /// 初始化 /// </summary> public void GameApplicationInit() { _isOnApplicationQuit = false; GameEventCenter.EventCenterInit(); _gameManagers = FindObjectsOfType <MonoBehaviour>().OfType <IGameManager>().ToList().OrderBy(m => m.Weight).ToList(); _gameManagers.ForEach(p => { p.ManagerInit(); }); }
void CameraCorrection(Vector3 v) { GameEventCenter.DispatchEvent("MotionSuccess", 0); Debug.Log("hand height:" + v.y); correctionValueY = v.y - transform.position.y; correctionValueX = v.x - transform.position.x; correctionValueZ = v.z - transform.position.z; camaraRig.transform.position = new Vector3(camaraRig.transform.position.x - correctionValueX, camaraRig.transform.position.y - correctionValueY, camaraRig.transform.position.z - correctionValueZ / 2); hasCorrection = true; }
public void OnTriggerEnter(Collider other) { GameEventCenter.DispatchEvent("MotionSuccess", 3); if (other.name == "dishObject(Clone)") { targetObj = other.gameObject; } time = 0.0f; }
public static void RegisterWidget(string path, int showCode, int hideCode) { GameEventCenter gameEventCenter = GameEventCenter.GetInstance(); gameEventCenter.RegisterEvent(showCode, delegate(GameEvent evt) { Show(path); }); gameEventCenter.RegisterEvent(hideCode, delegate(GameEvent evt) { Hide(path); }); }
protected virtual void OnDead() { //特效 EffectFactory.PlayEffectOnce(Deploy.deadEffect, transform.position); Sound.PlayUiAudioOneShot(104); GameEventCenter.Send(GameEvent.OnEnemyDie); Destroy(gameObject); }
private void PickUpStatusControl(Interactable interactable) { if (interactable.gameObject.name == "panObject(Clone)") { GameEventCenter.DispatchEvent("MotionSuccess", 1); } else if (interactable.gameObject.name == "dishObject(Clone)") { GameEventCenter.DispatchEvent("MotionSuccess", 2); } }
private void OnTriggerExit(Collider other) { if (other.name == "dishObject(Clone)") { dish = null; inDishArea = false; if (ScoreManager.gameStatus == 3) { GameEventCenter.DispatchEvent("RedoStatus"); } } }
private void OnTriggerStay(Collider other) { if (other.gameObject.name == "CheckArea") { if (transform.GetChild(1).gameObject.activeSelf) { GameEventCenter.DispatchEvent("GetScore"); transform.GetChild(1).gameObject.SetActive(false); GameEventCenter.DispatchEvent("MotionSuccess", 5); GameEventCenter.DispatchEvent("PlayMusic"); } } }
private void OnTriggerEnter(Collider other) { Debug.Log("PAN MANAGER name:" + other); if (other.name == "dishObject(Clone)") { Debug.Log("PAN MANAGER enter!!"); dish = other.gameObject; inDishArea = true; if (ScoreManager.gameStatus == 2) { GameEventCenter.DispatchEvent("NextStatus"); } } }
// Update is called once per frame void Update() { /*if (!controlEnable) * return;*/ // Debug.Log("mPose.transform.eulerAngles:"+ mPose.transform.eulerAngles); // Debug.Log("pan.transform.eulerAngles:" + pan.transform.eulerAngles.x); if (!Correction.hasCorrection) { if (ViveInput.GetPress(HandRole.RightHand, ControllerButton.Menu)) { timer += Time.deltaTime; if (timer >= 2.0f) { //GameEntityManager.Instance.GetCurrentSceneRes<MainSceneRes>().mainSceneUI.SetUIActive(0, false); //GameEventCenter.DispatchEvent<Vector3>(EventName.EnableCameraRig, this.transform.position); GameEventCenter.DispatchEvent("CameraCorrection", transform.position); Correction.hasCorrection = true; } } if (ViveInput.GetPress(HandRole.LeftHand, ControllerButton.Menu)) { timer += Time.deltaTime; if (timer >= 3.0f) { //GameEntityManager.Instance.GetCurrentSceneRes<MainSceneRes>().mainSceneUI.SetUIActive(0, false); //GameEventCenter.DispatchEvent<Vector3>(EventName.EnableCameraRig, this.transform.position); Correction.hasCorrection = true; } } return; } if (mGrabAction.GetStateDown(mPose.inputSource)) { Debug.Log(mPose.inputSource + " down "); Pickup(); } if (mGrabAction.GetStateUp(mPose.inputSource)) { Debug.Log(mPose.inputSource + " up "); Drop(); if (ScoreManager.gameStatus == 5) { GameEventCenter.DispatchEvent("InitStatus"); } } }
private static void HrefUIEvent(string key) { int num = int.Parse(key); if (num <= 0) { var errmsg = string.Format("can't find the UI widget by event code {0}", num); new Exception(errmsg); } else { GameEventCenter.getEventCenter().DispatchEvent(new GameEvent(num)); } }