Files
Main/Assets/GameAssets/Resources/Lua/Logic/CrossFuDi/CrossFuDiResultData.lua
2025-01-25 04:38:09 +08:00

97 lines
2.6 KiB
Lua

------------------------------------------------
-- 作者: 王圣
-- 日期: 2021-02-01
-- 文件: CrossFuDiResultData.lua
-- 模块: CrossFuDiResultData
-- 描述: 跨服福地结算数据
------------------------------------------------
-- 引用
local CrossFuDiResultData = {
FirstData = nil,
RewardItem = nil,
}
function CrossFuDiResultData:New(id)
local _m = Utils.DeepCopy(self)
_m.Id = id
return _m
end
function CrossFuDiResultData:SetFirstData(msg)
if msg == nil then
return
end
local _facade = msg.first.facade
local _name = msg.first.name
local _occ = msg.first.career
local _firstData = {
Name = _name,
Occ = _occ,
VisInfo = nil
}
_firstData.VisInfo = PlayerVisualInfo:New()
_firstData.VisInfo:ParseByLua(_facade, 0)
self.FirstData = _firstData
end
function CrossFuDiResultData:GetFirstData()
return self.FirstData
end
--设置奖励道具
function CrossFuDiResultData:SetFinalItemData(id)
local _cfg = DataConfig.DataCrossFudiHoldReward[id]
if _cfg == nil then
return
end
local _isFind = false
local _index = 3
local _rankId = 999
local _playerId = GameCenter.GameSceneSystem:GetLocalPlayerID()
local _occ = GameCenter.GameSceneSystem:GetLocalPlayer().IntOcc
--获取当前福地的积分排行
local _cityData = GameCenter.CrossFuDiSystem:GetEnterCityData()
if _cityData ~= nil then
local _rankList = _cityData:GetPersonScoreRankDatas()
if _rankList ~= nil then
for i = 1, #_rankList do
local _rank = _rankList[i]
if _playerId == _rank.PlayerId then
_isFind = true
_rankId = _rank.Rank
break
end
end
end
end
local _list = Utils.SplitStr(_cfg.Rank, ';')
if _isFind then
for i = 1, #_list do
local _values = Utils.SplitNumber(_list[i], '_')
local _min = _values[1]
local _max = _values[2]
if _rankId >= _min and _rankId <= _max then
_index = i
break
end
end
end
if _occ == 0 then
_list = Utils.SplitStr(_cfg.Reward0, ';')
else
_list = Utils.SplitStr(_cfg.Reward1, ';')
end
if _list ~= nil and _index <= #_list then
local _itemStr = _list[_index]
local _itemData = Utils.SplitNumber(_itemStr, '_')
self.RewardItem = {Id = _itemData[1], Num = _itemData[2], true}
end
end
--获取奖励道具
function CrossFuDiResultData:GetFinalItemData()
return self.RewardItem
end
return CrossFuDiResultData