From 1a92edebafd2e87f327ccb303ca59addc5c43713 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 26 十二月 2018 20:12:34 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(增加荣誉货币类型18及使用效果;增加荣誉商店支持按赛季重置物品购买次数;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py | 13 +++++++++++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_GiveMoney.py | 2 +-
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py | 2 ++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py | 6 ++++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossRealmPK.py | 1 +
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetMoney.py | 2 +-
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py | 9 +++++++++
ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py | 6 ++++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py | 4 ++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 5 +++--
10 files changed, 40 insertions(+), 10 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
index 0e9d3b5..0ea5429 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -779,7 +779,8 @@
CDBPlayerRefresh_SoulDust, # 魂尘 196
CDBPlayerRefresh_SoulSplinters, # 聚魂碎片 197
CDBPlayerRefresh_SoulCore, # 核心环 198
-) = range(146, 199)
+CDBPlayerRefresh_Honor, # 荣誉 199
+) = range(146, 200)
TYPE_Price_Gold_Paper_Money = 5 # 金钱类型,(先用礼券,再用金子)
TYPE_Price_Family_Contribution = 6 # 战盟贡献度(活跃度转换得来)
@@ -789,6 +790,7 @@
TYPE_Price_FamilyActivity = 15 # 仙盟活跃令
TYPE_Price_FBHelpPoint = 16 # 副本助战积分, 废弃
TYPE_Price_XianyuanCoin = 17 # 仙缘币
+TYPE_Price_Honor = 18 # 荣誉
TYPE_Price_Rune = 23 # 符印精华点
TYPE_Price_RuneSplinters = 24 # 符印碎片
TYPE_Price_TreasureScore = 25 # 寻宝积分
@@ -804,7 +806,6 @@
TYPE_Price_HighLadder_Currency = 102 # 天梯竞技场积分
TYPE_Price_HighLadder_Signet = 103 # 物品兑换(圣光晶石)
TYPE_Price_GongXun = 105 # 功勋点
-TYPE_Price_Honor = 108 # 荣誉商店积分
TYPE_Price_ArrestPoint = 110 # 悬赏积分
# 物品兑换
@@ -827,6 +828,7 @@
TYPE_Price_SoulDust:CDBPlayerRefresh_SoulDust,
TYPE_Price_SoulSplinters:CDBPlayerRefresh_SoulSplinters,
TYPE_Price_SoulCore:CDBPlayerRefresh_SoulCore,
+ TYPE_Price_Honor:CDBPlayerRefresh_Honor,
}
# 高效战斗状态
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index f6021ab..a74a434 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -265,9 +265,10 @@
Def_ItemID_SoulDust = 700 # 直接给魂尘
Def_ItemID_SoulSplinters = 701 # 直接给聚魂碎片
Def_ItemID_SoulCore = 702 # 直接给核心环
+Def_ItemID_Honor = 2141 # 直接给荣誉
Def_TransformItemIDList = [Def_ItemID_FamilyContribution, Def_ItemID_FamilyActive, Def_ItemID_SP, Def_ItemID_GoldPaper,
Def_ItemID_RealmPoint, Def_ItemID_SilverMoney, Def_ItemID_BossReborn, Def_ItemID_Ysog,
- Def_ItemID_SoulDust, Def_ItemID_SoulSplinters, Def_ItemID_SoulCore]
+ Def_ItemID_SoulDust, Def_ItemID_SoulSplinters, Def_ItemID_SoulCore, Def_ItemID_Honor]
#---------------------------------------------------------------------
#写死的物品类型都放这边
Def_ItemType_All = -1 #所有类型
@@ -435,9 +436,9 @@
Def_Effect_ItemGiveSoulDust = 239 # 使用道具给予魂尘
Def_Effect_ItemGiveSoulSplinters = 240 # 使用道具给予聚魂碎片
Def_Effect_ItemGiveSoulCore = 241 #使用道具给予核心环
+Def_Effect_ItemGiveHonor = 242 #使用道具给予荣誉
#----以下未使用或代码依然存在的---
Def_Effect_ItemGiveGongXun = 1920 #使用道具给予功勋
-Def_Effect_ItemGiveHonorPoint = 1922 #使用道具给予荣誉积分
Def_Effect_ItemGiveRuneJH = 1925 #使用道具给予符印精华
Def_Effect_ItemGiveRuneSplinters = 1926 #使用道具给予符印碎片
Def_Effect_SuiteMark = 2838 #用于标示套装装备,过滤等使用
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py
index b14d26d..de88f3a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py
@@ -242,8 +242,14 @@
__ResetShopItemBuyCount(curPlayer, [refreshType])
return
+def ShopItemOnCrossPKSeasonChange(curPlayer):
+ ## 按跨服PK赛季重置
+ refreshType = 8
+ __ResetShopItemBuyCount(curPlayer, [refreshType])
+ return
+
def __ResetShopItemBuyCount(curPlayer, onEventTypeList):
- #重置商店物品购买次数 1:周一0点刷新 2:周一5点刷新 3:每日0点刷新 4:每日5点刷新 5每月0点 6每月5点
+ #重置商店物品购买次数 1:周一0点刷新 2:周一5点刷新 3:每日0点刷新 4:每日5点刷新 5每月0点 6每月5点 7每3天5点 8每赛季
syncIndexList = []
ipyDataMgr = IpyGameDataPY.IPY_Data()
for i in xrange(ipyDataMgr.GetStoreCount()):
@@ -377,7 +383,10 @@
# @param tick 时间戳
# @return 返回值真, 逻辑运行成功
def BuyItem(curPlayer, tick):
-
+
+ if GameWorld.IsCrossServer():
+ return
+
buyItemList = IPY_GameWorld.IPY_CBuyItemList()
itemIndex = buyItemList.GetBuyItemIndex()
if itemIndex < 0:
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py
index d0d1454..1c1c849 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py
@@ -48,6 +48,15 @@
GameWorld.DebugAnswer(curPlayer, '该物品不存在 = %s' % (itemID))
return
packCount = itemData.GetPackCount()
+ if itemID in ChConfig.Def_TransformItemIDList:
+ curItem = ItemControler.GetOutPutItemObj(itemID)
+ ItemControler.SetItemCount(curItem, count, curPlayer.GetPlayerID(), curPlayer.GetAccID(),
+ curPlayer.GetPlayerName())
+ PlayerItemControler = ItemControler.PlayerItemControler(curPlayer)
+ if not PlayerItemControler.PutInItem(IPY_GameWorld.rptItem, curItem, event=[ChConfig.ItemGive_GMMake, False, {"CMD":"MakeItemCount"}]):
+ GameWorld.DebugAnswer(curPlayer, "放入物品失败!")
+ return
+
if packCount > 1:
__DoGMGivePlayerItem(curPlayer, itemID, count, runeLV)
else:
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetMoney.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetMoney.py
index e723ba3..016aee6 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetMoney.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetMoney.py
@@ -34,7 +34,7 @@
#参数不正确
GameWorld.DebugAnswer(curPlayer, Lang.GBText("参数不正确"))
GameWorld.DebugAnswer(curPlayer, "1-仙玉;2-绑玉;3-铜钱;6-战盟贡献度;10-战盟仓库积分;13-境界修行点;14-符印融合石;15-仙盟活跃令")
- GameWorld.DebugAnswer(curPlayer, "16-助战积分;23-符印精华;24-符印碎片;25-寻宝积分;26-集市额度;27-丹精;28-魂尘;")
+ GameWorld.DebugAnswer(curPlayer, "16-助战积分;18-荣誉;23-符印精华;24-符印碎片;25-寻宝积分;26-集市额度;27-丹精;28-魂尘;")
GameWorld.DebugAnswer(curPlayer, "29-聚魂碎片;30-核心环")
return
#钱币类型
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossRealmPK.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossRealmPK.py
index 44efd77..ee411d7 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossRealmPK.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossRealmPK.py
@@ -99,6 +99,7 @@
PlayerControl.PlayerLeaveFB(curPlayer)
return
+ PlayerControl.SetSight(curPlayer, ChConfig.Def_PlayerSight_Default * 2)
# 非战斗阶段,通知动态障碍点
if fbStep < FB_State_Fight:
FBCommon.SyncDynamicBarrierState(IpyGameDataPY.GetFuncEvalCfg("CrossRealmPKFB", 2), 1, curPlayer) # 准备期间有动态障碍点
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
index bc231f1..41447ca 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -1091,6 +1091,8 @@
PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_SoulSplinters, itemCount)
elif itemID == ChConfig.Def_ItemID_SoulCore:
PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_SoulCore, itemCount)
+ elif itemID == ChConfig.Def_ItemID_Honor:
+ PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_Honor, itemCount)
return True
## 放入物品
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_GiveMoney.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_GiveMoney.py
index 167ab84..fffb44a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_GiveMoney.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_GiveMoney.py
@@ -133,7 +133,7 @@
return IPY_GameWorld.TYPE_Price_Gold_Money
elif curEffID == ChConfig.Def_Effect_GivePlayerSilverPaper:
return IPY_GameWorld.TYPE_Price_Silver_Paper
- elif curEffID == ChConfig.Def_Effect_ItemGiveHonorPoint:
+ elif curEffID == ChConfig.Def_Effect_ItemGiveHonor:
return ShareDefine.TYPE_Price_Honor
elif curEffID == ChConfig.Def_Effect_ItemGiveRuneJH:
return ShareDefine.TYPE_Price_Rune
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
index f1b09e7..a4ca269 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
@@ -21,6 +21,7 @@
import IpyGameDataPY
import ChPyNetSendPack
import CrossRealmPlayer
+import FunctionNPCCommon
import DataRecordPack
import IPY_GameWorld
import ItemControler
@@ -173,6 +174,9 @@
SyncCrossRealmPKPlayerInfo(curPlayer)
SyncCrossRealmPKAwardState(curPlayer)
+
+ # 重置商店物品
+ FunctionNPCCommon.ShopItemOnCrossPKSeasonChange(curPlayer)
return True
#// C1 01 跨服PK匹配 #tagCMCrossRealmPKMatch
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
index 0e9d3b5..0ea5429 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -779,7 +779,8 @@
CDBPlayerRefresh_SoulDust, # 魂尘 196
CDBPlayerRefresh_SoulSplinters, # 聚魂碎片 197
CDBPlayerRefresh_SoulCore, # 核心环 198
-) = range(146, 199)
+CDBPlayerRefresh_Honor, # 荣誉 199
+) = range(146, 200)
TYPE_Price_Gold_Paper_Money = 5 # 金钱类型,(先用礼券,再用金子)
TYPE_Price_Family_Contribution = 6 # 战盟贡献度(活跃度转换得来)
@@ -789,6 +790,7 @@
TYPE_Price_FamilyActivity = 15 # 仙盟活跃令
TYPE_Price_FBHelpPoint = 16 # 副本助战积分, 废弃
TYPE_Price_XianyuanCoin = 17 # 仙缘币
+TYPE_Price_Honor = 18 # 荣誉
TYPE_Price_Rune = 23 # 符印精华点
TYPE_Price_RuneSplinters = 24 # 符印碎片
TYPE_Price_TreasureScore = 25 # 寻宝积分
@@ -804,7 +806,6 @@
TYPE_Price_HighLadder_Currency = 102 # 天梯竞技场积分
TYPE_Price_HighLadder_Signet = 103 # 物品兑换(圣光晶石)
TYPE_Price_GongXun = 105 # 功勋点
-TYPE_Price_Honor = 108 # 荣誉商店积分
TYPE_Price_ArrestPoint = 110 # 悬赏积分
# 物品兑换
@@ -827,6 +828,7 @@
TYPE_Price_SoulDust:CDBPlayerRefresh_SoulDust,
TYPE_Price_SoulSplinters:CDBPlayerRefresh_SoulSplinters,
TYPE_Price_SoulCore:CDBPlayerRefresh_SoulCore,
+ TYPE_Price_Honor:CDBPlayerRefresh_Honor,
}
# 高效战斗状态
--
Gitblit v1.8.0