111
This commit is contained in:
120
Plugins/Anton/antontownmainparty_info.nut
Normal file
120
Plugins/Anton/antontownmainparty_info.nut
Normal file
@@ -0,0 +1,120 @@
|
||||
/*
|
||||
文件名:antontownmainparty_info.nut
|
||||
路径:Plugins/Anton/antontownmainparty_info.nut
|
||||
创建日期:2022-09-04 20:09
|
||||
文件用途:城镇中打开安图恩攻坚队面板攻坚队信息部分
|
||||
*/
|
||||
|
||||
class AntonTownControlInfo_C extends BasicsDrawTool {
|
||||
X = 424;
|
||||
Y = 28;
|
||||
UserUiMap = null; //小队成员UI Map
|
||||
UserInfoMap = null; //小队成员Info Map
|
||||
MySelfMap = null; //自己
|
||||
|
||||
CaptainControl = false; //攻坚队长主控
|
||||
|
||||
function RedAntonPlayerInfo(chunk) {
|
||||
//Sout("收到包: %L", chunk);
|
||||
local RootTab = getroottable();
|
||||
BasicsDrawTool.InitClass("AntonTownUserJson"); //自动判断清空
|
||||
local JsonObj = Json_STL("AntonTownUserJsonBuffer");
|
||||
RootTab.rawset("AntonTownUserJson", JsonObj);
|
||||
RootTab["AntonTownUserJson"].Parse(chunk, 0, false);
|
||||
|
||||
//判断是否是攻坚队长主控
|
||||
RootTab["ANTONTOWNCONTROLINFO"].CaptainControl = RootTab["AntonTownUserJson"].Get("CaptainBool");
|
||||
//清空自己的信息
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap = {};
|
||||
//写入自己的信息
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PartyID", RootTab["AntonTownUserJson"].Get("myself->PartyID"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PartyCaptain", RootTab["AntonTownUserJson"].Get("myself->PartyCaptain"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PlayerGrowTypeJob", RootTab["AntonTownUserJson"].Get("myself->PlayerGrowTypeJob"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PlayerSession", RootTab["AntonTownUserJson"].Get("myself->PlayerSession"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PlayerLevel", RootTab["AntonTownUserJson"].Get("myself->PlayerLevel"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PlayerJob", RootTab["AntonTownUserJson"].Get("myself->PlayerJob"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("PlayerName", RootTab["AntonTownUserJson"].Get("myself->PlayerName"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("CaptainBool", RootTab["AntonTownUserJson"].Get("myself->CaptainBool"));
|
||||
RootTab["ANTONTOWNCONTROLINFO"].MySelfMap.rawset("isPrepare", RootTab["AntonTownUserJson"].Get("myself->isPrepare"));
|
||||
|
||||
//清空小队成员数组
|
||||
RootTab["ANTONTOWNCONTROLINFO"].UserInfoMap = [];
|
||||
//写入小队成员信息
|
||||
for (local i = 0; i < 20; i++) {
|
||||
local gPartyID = RootTab["AntonTownUserJson"].Get("result->" + i + "->PartyID"); //得到队伍ID
|
||||
if (gPartyID == true || gPartyID == false) break; //如果读不到说明读完了 直接走
|
||||
local gPartyCaptain = RootTab["AntonTownUserJson"].Get("result->" + i + "->PartyCaptain"); //得到是否为小队队长
|
||||
local gPlayerGrowTypeJob = RootTab["AntonTownUserJson"].Get("result->" + i + "->PlayerGrowTypeJob"); //得到转职职业(String)
|
||||
local gPlayerSession = RootTab["AntonTownUserJson"].Get("result->" + i + "->PlayerSession"); //得到世界编号
|
||||
local gPlayerLevel = RootTab["AntonTownUserJson"].Get("result->" + i + "->PlayerLevel"); //得到等级
|
||||
local gPlayerJob = RootTab["AntonTownUserJson"].Get("result->" + i + "->PlayerJob"); //得到基础职业
|
||||
local gPlayerJobEx = RootTab["AntonTownUserJson"].Get("result->" + i + "->PlayerJobEx"); //得到基础职业
|
||||
local gPlayerName = RootTab["AntonTownUserJson"].Get("result->" + i + "->PlayerName"); //得到玩家名字
|
||||
local gCaptainBool = RootTab["AntonTownUserJson"].Get("result->" + i + "->CaptainBool"); //得到是否为攻坚队队长
|
||||
local gMaterial = RootTab["AntonTownUserJson"].Get("result->" + i + "->isPrepare"); //得到是否拥有材料
|
||||
local gCID = RootTab["AntonTownUserJson"].Get("result->" + i + "->CID"); //得到是否拥有材料
|
||||
|
||||
local PlayerTab = {
|
||||
PartyID = gPartyID,
|
||||
PartyCaptain = gPartyCaptain,
|
||||
PlayerGrowTypeJob = gPlayerGrowTypeJob,
|
||||
PlayerSession = gPlayerSession,
|
||||
PlayerLevel = gPlayerLevel,
|
||||
PlayerJob = gPlayerJob,
|
||||
PlayerJobEx = gPlayerJobEx,
|
||||
PlayerName = gPlayerName,
|
||||
CaptainBool = gCaptainBool,
|
||||
Material = gMaterial,
|
||||
CID = gCID,
|
||||
}
|
||||
RootTab["ANTONTOWNCONTROLINFO"].UserInfoMap.append(PlayerTab); //PlayerInfoTable丢进数组
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
constructor() {
|
||||
UserUiMap = []; //小队成员UI Map
|
||||
UserInfoMap = []; //小队成员Info Map
|
||||
MySelfMap = {}; //自己
|
||||
|
||||
print("AntonTownControl_C ClassObject Succes");
|
||||
Pack_Control.rawset(1002, RedAntonPlayerInfo);
|
||||
Pack_Control.rawset(1012, RedAntonPlayerInfo);
|
||||
UserUiMap.resize(20);
|
||||
}
|
||||
|
||||
function DrawPartyInfo(obj) {
|
||||
for (local i = 0; i < UserInfoMap.len(); ++i) {
|
||||
if (!UserUiMap[i]) UserUiMap[i] = AntonUserControl_C("AntonUserPlayer" + i, 308 + ((i % 2) * 223), 97 + ((i / 2) * 42), CaptainControl); //如果用户Map没有被实例化则实例化他
|
||||
|
||||
UserUiMap[i].SetPlayerInfo(UserInfoMap[i]);
|
||||
|
||||
UserUiMap[i].Run(obj);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function Show(obj) {
|
||||
//如果有攻坚队的具体信息才绘制
|
||||
if (UserInfoMap.len() > 0) {
|
||||
DrawPartyInfo(obj);
|
||||
}
|
||||
}
|
||||
|
||||
function Run(obj) {
|
||||
Show(obj);
|
||||
}
|
||||
}
|
||||
|
||||
local RootTab = getroottable();
|
||||
RootTab.rawdelete("ANTONTOWNCONTROLINFO");
|
||||
|
||||
function AntonTownMainControl_PartyInfo(obj) {
|
||||
local RootTab = getroottable();
|
||||
if (RootTab.rawin("ANTONTOWNCONTROLINFO") == false) {
|
||||
local ANTONTOWNCONTROLINFOOBJ = AntonTownControlInfo_C();
|
||||
RootTab.rawset("ANTONTOWNCONTROLINFO", ANTONTOWNCONTROLINFOOBJ);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user