【十五日登陆】

dev_chengFeng
ZhangBiao 2021-04-01 16:04:13 +08:00
parent c1276ff0c4
commit e86078ce69
9 changed files with 7607 additions and 92 deletions

View File

@ -1127,6 +1127,7 @@ ActivityTypeDef = {
NiuZhuan = 61,--牛转乾坤
NiuQi = 62,--牛气冲天
FuXingGaoZhao = 63,--福星高照
FifteenDayGift = 64,--十五日登陆
--主题活动
ShengXingYouLi=50,--升星有礼(指定猎妖师进阶)

View File

@ -138,7 +138,7 @@ function this.InitActivityServerData(msg, isUpdate)
this.CheckMoneyProgress(v)
this.mission[v.activityId] = v
-- LogYellow("刷新活动数据activityId" .. v.activityId .. " value" .. v.value)
LogYellow("刷新活动数据activityId" .. v.activityId .. " value" .. v.value)
for n, m in ipairs(v.mission) do
--LogGreen(" 刷新活动数据missionId" .. m.missionId .. " state" .. m.state .. " progress" .. m.progress)
if (v.activityId == ActivityTypeDef.OnlineGift) then

View File

@ -1,7 +1,54 @@
FifteenDayGiftManager = {}
local this = FifteenDayGiftManager
local Data
function this.Initialize()
this.configData = {}
end
function this.InitRewardData()
local ActData = ActivityGiftManager.GetActivityTypeInfo(ActivityTypeDef.FifteenDayGift)
if not ActData then return end
if #this.configData == 0 then
LogPink("把奖励表信息存入this.configData")
this.configData = ConfigManager.GetAllConfigsDataByKey(ConfigName.ActivityRewardConfig,"ActivityId",ActData.activityId)
end
--赋值
Data = {}
Data.activityId = ActData.activityId
Data.ActState = ActData.value
Data.startTime = ActData.startTime
if not Data.rewards then
LogPink("!!!!!!!!!!!")
Data.rewards = {}
for key, value in pairs(this.configData) do
local sData = {}
sData.Id = value.Id
sData.Reward = {value.Reward[1][1],value.Reward[1][2]}
sData.Sort = value.Sort
sData.missionId = 0
sData.State = 0
sData.Progress = 0
Data.rewards[key] = sData
end
end
table.sort(ActData.mission, function(a, b)
return a.missionId < b.missionId
end)
for key, value in pairs(ActData.mission) do
if Data.rewards[key] then
LogGreen("key:"..tostring(key).." "..tostring(value.missionId).." "..tostring(value.state).." "..tostring(value.progress))
Data.rewards[key].missionId = value.missionId
Data.rewards[key].State = value.state
Data.rewards[key].Progress = value.progress
end
end
end
function this.GetData()
this.InitRewardData()
return Data
end
return FifteenDayGiftManager

View File

@ -2,20 +2,46 @@ require("Base/BasePanel")
local FifteenDayGift = Inherit(BasePanel)
local this = FifteenDayGift
local sortingOrder = 0
local Data
local itemConfig = ConfigManager.GetConfig(ConfigName.ItemConfig)
local itemList = {}
local canGetList = {}
local angle = {
[1] = Quaternion.Euler(Vector3.New(0, 0, 0)),
[2] = Quaternion.Euler(Vector3.New(0, 90, 0)),
}
--初始化组件(用于子类重写)
function FifteenDayGift:InitComponent()
self.backBtn = Util.GetGameObject(self.gameObject,"btnBack")
self.backBtn2 = Util.GetGameObject(self.gameObject,"btnBack2")
self.backBtn1 = Util.GetGameObject(self.gameObject,"Content/btnBack1")
self.backBtn2 = Util.GetGameObject(self.gameObject,"Content/btnBack2")
self.backBtn3 = Util.GetGameObject(self.gameObject,"Content/btnBack3")
self.btnGet = Util.GetGameObject(self.gameObject,"Content/btnGet")
self.rewardGrid = Util.GetGameObject(self.gameObject,"Content/RewardGrid")
for i = 1, self.rewardGrid.transform.childCount do
table.insert(itemList, self.rewardGrid.transform:GetChild(i - 1))
end
end
--绑定事件(用于子类重写)
function FifteenDayGift:BindEvent()
Util.AddClick(self.backBtn,function ()
Util.AddClick(self.backBtn1,function ()
self:ClosePanel()
end)
Util.AddClick(self.backBtn2,function ()
self:ClosePanel()
end)
Util.AddClick(self.backBtn3,function ()
self:ClosePanel()
end)
Util.AddClick(self.btnGet,function ()
LogPink("领取")
-- NetManager.GetActivityRewardRequest(-1,data.activityId,function (drop)
-- UIManager.OpenPanel(UIName.RewardItemPopup, drop, 1,function()
-- FuXingGaoZhao:Refresh()
-- end)
-- end)
end)
end
--添加事件监听(用于子类重写)
@ -28,7 +54,7 @@ end
function FifteenDayGift:OnSortingOrderChange()
-- Util.AddParticleSortLayer(self.effect, self.sortingOrder - sortingOrder)
-- sortingOrder = self.sortingOrder
sortingOrder = self.sortingOrder
end
--界面打开时调用(用于子类重写)
@ -37,14 +63,80 @@ end
-- 打开,重新打开时回调
function FifteenDayGift:OnShow()
FifteenDayGift:Refresh()
end
function FifteenDayGift:Refresh()
Data = FifteenDayGiftManager.GetData()
FifteenDayGift:SetReward()
end
function FifteenDayGift:SetReward()
if Data and #Data.rewards > 0 then
for i = 1, #itemList do
FifteenDayGift:SetSingleReward(Data.rewards[i],itemList[i],i)
end
end
end
function FifteenDayGift:SetSingleReward(sData,go,index)
local front = Util.GetGameObject(go,"front")
local name = Util.GetGameObject(go,"name"):GetComponent("Text")
local icon = Util.GetGameObject(go,"icon"):GetComponent("Image")
local num = Util.GetGameObject(go,"num"):GetComponent("Text")
local back = Util.GetGameObject(go,"back")
local curTime = GetTimeStamp()
--设置图片初始角度
go:GetComponent("RectTransform").rotation = sData.State == 0 and angle[1] or angle[2]
--判断哪些可领取,插入表
if sData.Progress <= curTime then
table.insert(canGetList,go)
end
--如果已领取、可领取、不可领取显示第几天;下一领取显示时间
if sData.Progress > curTime and sData.Progress - 86400 <= curTime then
local time = sData.Progress
name.text = TimeToFelaxible(time)
if self.timer then
self.timer:Stop()
self.timer = nil
end
self.timer = Timer.New(function()
time = time - 1
if time <= 0 then
self.timer:Stop()
self.timer = nil
FifteenDayGift:Refresh()
end
name.text = TimeToFelaxible(time)
end, 1, -1, true)
self.timer:Start()
else
name.text = itemConfig[sData.Reward[1]].Name
end
--设置icon 和数量
icon.sprite = SetIcon(sData.Reward[1])
num.text = string.format("X %s",sData.Reward[2])
Util.AddOnceClick(icon.gameObject,function ()
-- body
end)
end
--界面关闭时调用(用于子类重写)
function FifteenDayGift:OnClose()
if self.timer then
self.timer:Stop()
self.timer = nil
end
end
--界面销毁时调用(用于子类重写)
function FifteenDayGift:OnDestroy()
if self.timer then
self.timer:Stop()
self.timer = nil
end
itemList = {}
end
return FifteenDayGift

View File

@ -50,9 +50,9 @@ end
--
function this.OnFunctionOpen(funcId)
if not funcId then return end
LogGreen(funcId.."funcId")
-- LogGreen(funcId.."funcId")
if not AppConst.isGuide then
LogGreen("不在引导内")
-- LogGreen("不在引导内")
return
end
LogGreen(tostring(AppConst.isGuide))

View File

@ -730,7 +730,7 @@ function this.GetMainPlayerNPCData2(fun)
local currankAllList = {}
for i = 1, 25 do
if rankAllList[i] and rankAllList[i].uid ~= PlayerManager.uid then
LogBlue("rankAllList[i] "..rankAllList[i].userSkin.." "..rankAllList[i].userTitle.." "..rankAllList[i].userMount.." "..rankAllList[i].sex)
-- LogBlue("rankAllList[i] "..rankAllList[i].userSkin.." "..rankAllList[i].userTitle.." "..rankAllList[i].userMount.." "..rankAllList[i].sex)
table.insert(currankAllList,rankAllList[i])
end
end

View File

@ -42,7 +42,7 @@ function this.ReceiveRankingData(msg,fun)
--滚动数据
local length=#this.curRankingData
for i, rank in ipairs(msg.ranks) do
Log("UserRank "..rank.rankInfo.rank)
-- Log("UserRank "..rank.rankInfo.rank)
this.curRankingData[length+i]=rank
end
if #msg.ranks < 20 or #this.curRankingData >= 100 then

View File

@ -98,7 +98,7 @@ end
--加载三个立绘(称号 坐骑 皮肤)
function PlayerLiveView:OnShowLive()
LogBlue("self.rideLiveGo "..self.rideLiveGo.name)
-- LogBlue("self.rideLiveGo "..self.rideLiveGo.name)
self.rideLiveGo:SetActive(false)
self.playerLiveGo:SetActive(false)
self.titleLiveGo:SetActive(false)