void Start() { //yield return new WaitForSeconds(0.3f); //显示所有主角的属性数据 PlayerKernalDataProxy.GetInstance().DisplayAllOriValues(); PlayerExternalDataProxy.GetInstance().DisplayAllOriginalData(); }
//增加最大魔法数值(应用场景:等级提升) 参数是增量数值 public void IncreaseMaxMagic(float increaseMagic) { if (increaseMagic > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxMagic(increaseMagic); } }
//增加最大攻击数值(应用场景:等级提升) 参数是增量数值 public void IncreaseMaxATK(float increaseAttack) { if (increaseAttack > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxATK(increaseAttack); } }
public int Diamods; //钻石 /// <summary> /// 初始化模型层 /// </summary> private void Start() { PlayerKernalDataProxy playerKernalData = new PlayerKernalDataProxy(Health, Magic, Attack, Defence, Dexterity, MaxHealth, MaxMagic, MaxAttack, MaxDefence, MaxDexterity, AttackByProp, DefenceByProp, DexterityByProp); PlayerExtenalDataProxy playerExtenalData = new PlayerExtenalDataProxy(Experience, LevelExperience, KillNumber, Level, Gold, Diamods); }
//增加最大敏捷度数值(应用场景:等级提升) 参数是增量数值 public void IncreaseMaxDexterity(float increaseDexterity) { if (increaseDexterity > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxDexterity(increaseDexterity); } }
//增加最大防御数值(应用场景:等级提升) 参数是增量数值 public void IncreaseMaxDefence(float increaseDefence) { if (increaseDefence > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxDefence(increaseDefence); } }
/// <summary> /// 减少生命数值 /// </summary> /// <param name="enemyAttackValue">敌人攻击数值</param> public void DecreaseHealthValues(float enemyAttackValue) { if (enemyAttackValue > 0) { PlayerKernalDataProxy.GetInstance().DecreaseHealthValues(enemyAttackValue); } }
/// <summary> /// 增加最大暴击率数值(当角色升级时) /// </summary> /// <param name="value"></param> public void IncreaseMaxCritChance(float value) { if (value > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxCritChance(value); } }
public void IncreaseHealthValues(float healthValue) { if (healthValue > 0) { PlayerKernalDataProxy.GetInstance().IncreaseHealthValues(healthValue); } }
} //Shoot()_End //碰撞检测 private void CheckCollider() { //利用盒子碰撞得到碰撞信息 m_HitDetect = Physics.BoxCast(m_Collider.bounds.center, m_BoxSize, transform.forward, out m_Hit, transform.rotation, m_MaxDistance); if (m_HitDetect) { if (GoTarget != null) { if (m_Hit.transform.tag == "Player") { isMove = false; Destroy(this.gameObject, 20); if (m_IsSimple) { PlayerKernalDataProxy.GetInstance().DecreaseHealthValues(UnityHelper.GetInstance().RandomNum(6, 10)); //主角伤害处理 transform.parent = GoTarget.transform; m_IsSimple = false; } } if (m_Hit.transform.tag == "Ground") { isMove = false; Destroy(this.gameObject); } Debug.Log(m_Hit.transform.tag); } } }
/// <summary> /// 增加最大敏捷度 /// </summary> /// <param name="increaseDEX"></param> public void IncreaseMaxDEX(float increaseDEX) { if (increaseDEX > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxDEX(increaseDEX); } }
//增加最大生命数值(应用场景:等级提升) 参数是增量数值 public void IncreaseMaxHealth(float increaseHealth) { if (increaseHealth > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMaxHealth(increaseHealth); } }
//增加魔法值 典型的应用场景是吃魔法包 public void IncreaseMagicValues(float magicValue) { if (magicValue > 0) { PlayerKernalDataProxy.GetInstance().IncreaseMagicValues(magicValue); } }
private void Start() { PlayerKernalDataProxy playerkernalDataObj = new PlayerKernalDataProxy(100, 100, 10, 5, 45, 100, 100, 10, 5, 50, 0, 0, 0); //初期値表せる PlayerKernalDataProxy.GetInstance().DisplayALLOriginalValues(); }
/// <summary> /// 升级奖励:属性提升10%,状态全满 /// </summary> public void UpgradeOperation() { PlayerKernalDataProxy.GetInstance().MaxDefence += PlayerKernalDataProxy.GetInstance().MaxDefence / 10; PlayerKernalDataProxy.GetInstance().MaxHealth += PlayerKernalDataProxy.GetInstance().MaxHealth / 10; PlayerKernalDataProxy.GetInstance().MaxMagic += PlayerKernalDataProxy.GetInstance().MaxMagic / 10; PlayerKernalDataProxy.GetInstance().MaxAttack += PlayerKernalDataProxy.GetInstance().MaxAttack / 10; PlayerKernalDataProxy.GetInstance().MaxDexterity += PlayerKernalDataProxy.GetInstance().MaxDexterity / 10; PlayerKernalDataProxy.GetInstance().Health = PlayerKernalDataProxy.GetInstance().MaxHealth; PlayerKernalDataProxy.GetInstance().Magic = PlayerKernalDataProxy.GetInstance().MaxMagic; }
IEnumerator Start() { yield return(new WaitForSeconds(0.3f)); /*PlayerKernalDataProxy playerKernalData = * new PlayerKernalDataProxy(100, 100, 100, 20, 5, 100, 100, 1000, 1000, 20, 0, 0, 0); * PlayerExtenalDataProxy playerExtenalData = new PlayerExtenalDataProxy(0,200,2,1,200,200);*/ PlayerKernalDataProxy.GetInstance().DiaplayAllOriginaValues(); PlayerExtenalDataProxy.GetInstance().DisplayAllOriginalValues(); }
//public int Diamonds = 0; void Awake() { Instance = this; //初始化模型层的数据 PlayerKernalDataProxy playerKernalData = new PlayerKernalDataProxy(PlayerCurrentHP, PlayerCurrentMP, PlayerCurrentAttack, PlayerCurrentDefence, PlayerCurrentDexterity, PlayerCurrentCritChance, PlayerMaxHP, PlayerMaxMP, PlayerMaxAttack, PlayerMaxDexterity, PlayerMaxDefence, PlayerMaxCritChance, AttackByProp, DefenceByProp, DexterityByProp, CritChanceByProp); PlayerExternalDataProxy playerExternalData = new PlayerExternalDataProxy(Exp, Level, Gold); PlayerPackageDataProxy playerPackageDataProxy = new PlayerPackageDataProxy(LittleBlueBottleNum, BigBlueBottleNum, LittleRedBottleNum, BigRedBottleNum); }
/// <summary> /// 装备戒指道具 /// </summary> /// <param name="go"></param> private void OnRingClick(GameObject go) { if (go != null) { ReplaceEquitment(wristTransform); //Debug.Log(item.Value); //装备后的操作 PlayerKernalDataProxy.GetInstance().IncreaseMaxDexterity(item.Value); PlayerKernalDataProxy.GetInstance().UpdateDexterityValue(); } }
/// <summary> /// 装备上衣道具 /// </summary> /// <param name="go"></param> private void OnClothClick(GameObject go) { if (go != null) { ReplaceEquitment(clothTransform); //Debug.Log(item.Value); //装备后的操作 PlayerKernalDataProxy.GetInstance().IncreaseMaxDefence(item.Value); PlayerKernalDataProxy.GetInstance().UpdateDefenceValue(); } //if_end }//OnClothClick_end
}//OnClothClick_end /// <summary> /// 装备武器道具1 /// </summary> /// <param name="go"></param> private void OnWeapon1Click(GameObject go) { if (go != null) { ReplaceEquitment(swordTransform); //Debug.Log(item.Value); //装备后的操作 GlobalParameterManager.currentSword = CurrentSword.Fire; //显示火剑 //PlayerKernalDataProxy.GetInstance().IncreaseMaxATK(item.Value); PlayerKernalDataProxy.GetInstance().IncreaseATKByProp(item.Value); PlayerKernalDataProxy.GetInstance().UpdateATKValue(); } }
//装备武器道具2 private void OnWeapon2Click(GameObject go) { if (go != null) { ReplaceEquitment(swordTransform); //装备后的操作 GlobalParameterManager.currentSword = CurrentSword.Potion; //设置当前装备了毒剑,显示主角身上的毒剑 //PlayerKernalDataProxy.GetInstance().IncreaseMaxATK(item.Value); PlayerKernalDataProxy.GetInstance().IncreaseATKByProp(item.Value); PlayerKernalDataProxy.GetInstance().UpdateATKValue(); } }
IEnumerator Start() { yield return new WaitForSeconds(WAIT_FOR_SECONDS_ON_START); //显示初始值 PlayerKernalDataProxy.GetInstance().DisplayerAllOriginalValues(); PlayerExternalDataProxy.GetInstance().DisplayAllOriginalValues(); //玩家的姓名 if (!string.IsNullOrEmpty(GlobalParaMgr.PlayerName)) { TxtPlayerName.text = GlobalParaMgr.PlayerName; TxtPlayerNameByDetailPanel.text = GlobalParaMgr.PlayerName; } }
private void OnWeapon3Click(GameObject go) { if (go != null) { //ReplaceEquitment(swordTransform); this.transform.SetParent(swordTransform); this.transform.position=Vector3.zero; //装备后的操作 GlobalParameterManager.currentSword = CurrentSword.Thunder; //PlayerKernalDataProxy.GetInstance().IncreaseMaxATK(item.Value); PlayerKernalDataProxy.GetInstance().IncreaseATKByProp(item.Value); PlayerKernalDataProxy.GetInstance().UpdateATKValue(); } }
public PlayerKernalDataProxy(int IntHealth, int IntMagic, int IntAttack, int IntDefence, int IntDexterity, int IntMaxHealth, int IntMaxMagic, int IntMaxAttack, int IntMaxDefence, int IntMaxDexterity, int IntAttackByProp, int IntDefenceByProp, int IntDexterityByProp) : base(IntHealth, IntMagic, IntAttack, IntDefence, IntDexterity, IntMaxHealth, IntMaxMagic, IntMaxAttack, IntMaxDefence, IntMaxDexterity, IntAttackByProp, IntDefenceByProp, IntDexterityByProp) { if (_Instance == null) { _Instance = this; } else { return; } }
/// <summary> /// 使用大红瓶 /// </summary> /// <param name="go"></param> private void OnBigRedBottleClick(GameObject go) { if (go != null) { if (PlayerPackageDataProxy.GetInstance().GetCurrentBigRedNum() >= 1) { PlayerKernalDataProxy.GetInstance().IncreaseHealthValues(item.Value); PlayerPackageDataProxy.GetInstance().DecreaseBigRedNum(1); } else { //全部消耗完毕后将物体移出小方格并且隐藏 this.transform.SetParent(recoverItem); this.gameObject.SetActive(false); } } }
/// <summary> /// 使用小蓝瓶 /// </summary> /// <param name="go"></param> private void OnLittleBlueBottleClick(GameObject go) { if (go != null) { if (PlayerPackageDataProxy.GetInstance().GetCurrentLittleBlueNum() >= 1) { //Debug.Log("消耗小蓝瓶"); PlayerPackageDataProxy.GetInstance().DecreaseLittleBlueNum(1); PlayerKernalDataProxy.GetInstance().IncreaseMagicValues(item.Value); } else { //全部消耗完毕后将物体移出小方格并且隐藏 this.transform.SetParent(recoverItem); this.gameObject.SetActive(false); } } }
/// <summary> /// 得到当前最大的暴击率 /// </summary> /// <returns></returns> public float GetMaxCritChance() { return(PlayerKernalDataProxy.GetInstance().GetMaxCritChance()); }
/// <summary> /// 得到当前的暴击率 /// </summary> /// <returns>当前暴击率</returns> public float GetCurrentCritChange() { return(PlayerKernalDataProxy.GetInstance().GetCurrentCritChange()); }
public void UpdateCritChanceValue(float equitmentValue = 0) { PlayerKernalDataProxy.GetInstance().UpdateCritChanceValue(equitmentValue); }
//得到增加的最大敏捷度数值 public float GetMaxDexterity() { return(PlayerKernalDataProxy.GetInstance().GetMaxDexterity()); }