From 0604b8ec6ca8307c2ee12effa0bc710fa65bc5d8 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期三, 26 九月 2018 19:36:08 +0800
Subject: [PATCH] 3687 天赋功能
---
System/Skill/TalentModel.cs | 15 ++++++++++++---
Utility/EnumHelper.cs | 1 +
Core/GameEngine/Model/Player/PlayerDatas.cs | 3 +++
Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs | 1 +
System/Skill/TalentWin.cs | 6 ++++++
5 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs b/Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs
index c9324aa..da15ddb 100644
--- a/Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs
+++ b/Core/GameEngine/Model/Player/Character/PlayerExtersionData.cs
@@ -57,4 +57,5 @@
public int forbidenTalk;
public int NpcHurtAddPer;//瀵规�墿浼ゅ鍔犳垚 188
public int FunalHurtPer;//瀵规�墿浼ゅ鍔犳垚 189
+ public int talentPoint;//澶╄祴鐐规暟 190
}
diff --git a/Core/GameEngine/Model/Player/PlayerDatas.cs b/Core/GameEngine/Model/Player/PlayerDatas.cs
index 22981f3..8ac6e40 100644
--- a/Core/GameEngine/Model/Player/PlayerDatas.cs
+++ b/Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -737,6 +737,9 @@
case PlayerDataRefresh.CDBPlayerRefresh_ForbidenTalk:
extersion.forbidenTalk = (int)value;
break;
+ case PlayerDataRefresh.CDBPlayerRefresh_TalentPoint:
+ extersion.talentPoint = (int)value;
+ break;
}
}
diff --git a/System/Skill/TalentModel.cs b/System/Skill/TalentModel.cs
index 4044745..644b254 100644
--- a/System/Skill/TalentModel.cs
+++ b/System/Skill/TalentModel.cs
@@ -66,6 +66,7 @@
{
ParseConfig();
FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
+ PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent;
}
public void OnBeforePlayerDataInitialize()
@@ -74,6 +75,7 @@
{
talent.level = 0;
}
+ talentPoint = 0;
serverInited = false;
}
@@ -85,6 +87,7 @@
public override void UnInit()
{
FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
+ PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent;
}
private void OnFuncStateChangeEvent(int _id)
@@ -243,10 +246,16 @@
#region 鏈嶅姟绔暟鎹�
public int talentPoint { get; private set; }
- public void UpdateTalent()
+ private void PlayerDataRefreshInfoEvent(PlayerDataRefresh refreshType)
{
-
- UpdateRedpoint();
+ if (refreshType == PlayerDataRefresh.CDBPlayerRefresh_TalentPoint)
+ {
+ talentPoint = PlayerDatas.Instance.extersion.talentPoint;
+ if (talentPointUpdate != null)
+ {
+ talentPointUpdate();
+ }
+ }
}
public void UpdateTalentSkill(int _oldSkillId, int _newSkillId)
diff --git a/System/Skill/TalentWin.cs b/System/Skill/TalentWin.cs
index 6ec20eb..cd290fc 100644
--- a/System/Skill/TalentWin.cs
+++ b/System/Skill/TalentWin.cs
@@ -351,6 +351,12 @@
model.ProcessLevelUpError(error);
return;
}
+ else
+ {
+ C0304_tagCAddSkillPoint pak = new C0304_tagCAddSkillPoint();
+ pak.SkillID = (ushort)model.selectSkill;
+ GameNetSystem.Instance.SendInfo(pak);
+ }
}
}
diff --git a/Utility/EnumHelper.cs b/Utility/EnumHelper.cs
index a9107df..b3a46d6 100644
--- a/Utility/EnumHelper.cs
+++ b/Utility/EnumHelper.cs
@@ -555,6 +555,7 @@
CDBPlayerRefresh_Danjing = 187, // 涓圭簿 187
CDBPlayerRefresh_NPCHurtAddPer,//瀵规�墿浼ゅ鍔犳垚 188
FunalHurtPer = 189,// 鏈�缁堜激瀹冲姞鎴�
+ CDBPlayerRefresh_TalentPoint = 190,
};
/** 鐗╁搧鍔犳垚绫诲瀷 */
--
Gitblit v1.8.0