From 7861ed60360fbaef23a564c1cd46f1a202772a13 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 27 九月 2023 02:56:30 +0800
Subject: [PATCH] 9949 【BT0.1】【主干】天星塔修改(全服奖励修改)

---
 ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo     |    0 
 ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.h   |   26 ++++++++++++++++++++++++++
 ServerPack/MapServerPack/HB2_ActionMap/SkyTowerInfo.h             |   10 +++++++++-
 ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.des |    1 +
 4 files changed, 36 insertions(+), 1 deletions(-)

diff --git a/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo b/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo
diff --git a/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.des b/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.des
new file mode 100644
index 0000000..fb32e81
--- /dev/null
+++ b/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.des
@@ -0,0 +1 @@
+A9 AD 通知天星塔全服奖励通关玩家信息 #tagGCSkyTowerPassPlayerInfo
diff --git a/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.h b/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.h
new file mode 100644
index 0000000..4683406
--- /dev/null
+++ b/ServerPack/GameServerPack/HA9_Function/SkyTowerPassPlayerInfo.h
@@ -0,0 +1,26 @@
+// A9 AD 通知天星塔全服奖励通关玩家信息 #tagGCSkyTowerPassPlayerInfo
+
+struct	tagGCSkyTowerPassPlayer
+{
+	DWORD		PlayerID;
+	char		PlayerName[33];
+	BYTE		Job;
+	WORD		LV;		//等级
+	WORD		RealmLV;		//境界
+};
+
+struct	tagGCSkyTowerPassFloor
+{
+	DWORD		FloorID;	// 层ID
+	BYTE		PassPlayerCount;	// 通关记录玩家数
+	DWORD		PassPlayerIDList[PassPlayerCount];	// 通关记录玩家ID列表 [第1个通过玩家ID, 第2个, ...]
+};
+
+struct	tagGCSkyTowerPassPlayerInfo
+{
+	tagHead		Head;
+	WORD		FloorCount;
+	tagGCSkyTowerPassFloor	PassFloorList[FloorCount];	// 通关塔层信息列表
+	WORD		PlayerCount;
+	tagGCSkyTowerPassPlayer	PassPlayerList[PlayerCount];	// 通关玩家信息列表
+};
diff --git a/ServerPack/MapServerPack/HB2_ActionMap/SkyTowerInfo.h b/ServerPack/MapServerPack/HB2_ActionMap/SkyTowerInfo.h
index 9574b98..903c817 100644
--- a/ServerPack/MapServerPack/HB2_ActionMap/SkyTowerInfo.h
+++ b/ServerPack/MapServerPack/HB2_ActionMap/SkyTowerInfo.h
@@ -1,7 +1,15 @@
 // B2 13 天星塔通关层数 #tagMCSkyTowerInfo
+
+struct    tagMCSkyTowerServerReward
+{
+	DWORD		Floor;	// 全服奖励层ID
+	DWORD		ServerRewardRecord;	//该层全服领奖记录,按所需人数作为二进制位进行位运算判断是否已领取
+};
+
 struct    tagMCSkyTowerInfo
 {
 	tagHead		 Head;
 	DWORD		Floor;	// 已通关层
-	DWORD		ServerRewardRecord;	//全服挑战层领奖记录,按奖励记录二进制位存储是否已领取
+	WORD		ServerRewardCount;
+	tagMCSkyTowerServerReward	ServerRewardList[ServerRewardCount];	// 全服奖励领取记录列表,下发的层记录替换更新即可,领奖记录没有变化时服务端不会下发
 };

--
Gitblit v1.8.0