55 lines
1.6 KiB
Plaintext
55 lines
1.6 KiB
Plaintext
local baseCell = autoImport("BaseCell")
|
|
AchievementPreQuestCell = class("AchievementPreQuestCell",baseCell)
|
|
|
|
function AchievementPreQuestCell:Init()
|
|
self:initView()
|
|
end
|
|
|
|
function AchievementPreQuestCell:initView( )
|
|
-- body
|
|
self.questStatus = self:FindComponent("questStatus",UILabel)
|
|
end
|
|
|
|
function AchievementPreQuestCell:SetData( data )
|
|
-- body
|
|
local name = data[1].name
|
|
local hasAccept,hasSubmit = self:GetQuestType(data)
|
|
local questListType = nil
|
|
if(hasAccept)then
|
|
questListType = SceneQuest_pb.EQUESTLIST_ACCEPT
|
|
elseif(hasSubmit)then
|
|
questListType = SceneQuest_pb.EQUESTLIST_SUBMIT
|
|
end
|
|
|
|
local statusStr
|
|
if(questListType == SceneQuest_pb.EQUESTLIST_SUBMIT)then
|
|
statusStr = ZhString.AdventureAchievePage_Finish
|
|
self.questStatus.color = LuaColor.black
|
|
elseif(questListType == SceneQuest_pb.EQUESTLIST_ACCEPT)then
|
|
statusStr = ZhString.AdventureAchievePage_Accept
|
|
else
|
|
statusStr = ZhString.AdventureAchievePage_UnAccept
|
|
end
|
|
self.questStatus.text = string.format(ZhString.AdventureAchievePage_PreFinishQuestText,name,statusStr)
|
|
end
|
|
|
|
function AchievementPreQuestCell:GetQuestType(data)
|
|
local preAccept
|
|
local hasAccept = false
|
|
local hasSubmit = false
|
|
for i=1,#data do
|
|
local single = data[i]
|
|
local exsitQuestData = QuestProxy.Instance:getQuestDataByIdAndType(single.id)
|
|
if(exsitQuestData)then
|
|
-- preAccept = SceneQuest_pb.EQUESTLIST_ACCEPT
|
|
hasAccept = true
|
|
end
|
|
if(not exsitQuestData)then
|
|
exsitQuestData = QuestProxy.Instance:getQuestDataByIdAndType(single.id,SceneQuest_pb.EQUESTLIST_SUBMIT)
|
|
if(exsitQuestData)then
|
|
hasSubmit = true
|
|
end
|
|
end
|
|
end
|
|
return hasAccept,hasSubmit
|
|
end |