/// <summary> /// 初始化枪械的函数 /// 需要使用 Json 数据来进行初始化 /// </summary> private void InitGun(GameObject obj, InventoryItemController iic) { if (obj.name == "Stone Hatchet") { StoneHatchetControl gcb = obj.GetComponent <StoneHatchetControl>(); for (int i = 0; i < gunData.Count; i++) { if (gunData[i].Name == obj.name) { gcb.Id = gunData[i].Id; gcb.Damage = gunData[i].Damage; gcb.IIc = iic; gcb.MaxDurage = iic.Number * gunData[i].Durage; gcb.SignaleDurable = gunData[i].Durage; gcb.Durable = iic.Number * gunData[i].Durage; } } } else { GunControlBase gcb = obj.GetComponent <GunControlBase>(); for (int i = 0; i < gunData.Count; i++) { if (gunData[i].Name == obj.name) { gcb.Id = gunData[i].Id; gcb.Damage = gunData[i].Damage; gcb.IIc = iic; gcb.MaxDurage = iic.Number * gunData[i].Durage; gcb.SignaleDurable = gunData[i].Durage; gcb.Durable = iic.Number * gunData[i].Durage; } } } }
/// <summary> /// 角色死亡辅助函数 /// </summary> private void PlayerDeath() { if (hp <= 0 && !playerDeath) { playerDeathDelegate(); FPS.enabled = false; playerDeath = true; breathAudio.Stop(); AudioManager.Instance.PlayAudioClipByName(ClipName.PlayerDeath, m_Transform.position); GameObject.Find("Manager").GetComponent <InputManager>().enabled = false; GunControlBase currentPlayer = GameObject.Find("FPSController/PersonCamera").GetComponentInChildren <GunControlBase>(); if (currentPlayer != null) { currentPlayer.enabled = false; } InventoryPanelController.Instance.gameObject.SetActive(false); StartCoroutine("JumpScene"); } }