更新
This commit is contained in:
parent
2d0690f24f
commit
fdc6ee6a6e
Binary file not shown.
@ -71,7 +71,7 @@ function EquipmentProxy:InitPlayer(Player: Player)
|
|||||||
|
|
||||||
-- 初始化装备
|
-- 初始化装备
|
||||||
for uniqueId, EquipmentData in ArchiveProxy.pData[Player.UserId][STORE_NAME] do
|
for uniqueId, EquipmentData in ArchiveProxy.pData[Player.UserId][STORE_NAME] do
|
||||||
local config = Utils:CreateDataInstance(Player, uniqueId, EquipmentData, GetPlayerEquipmentFolder(Player))
|
local config = Utils:CreateDataInstance(Player, tostring(uniqueId), EquipmentData, GetPlayerEquipmentFolder(Player))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -85,7 +85,7 @@ function EquipmentProxy:AddEquipment(Player: Player, EquipmentId: number)
|
|||||||
local EquipmentData = Utils:GetIdDataFromJson(JsonEquipment, EquipmentId)
|
local EquipmentData = Utils:GetIdDataFromJson(JsonEquipment, EquipmentId)
|
||||||
if not EquipmentData then return end
|
if not EquipmentData then return end
|
||||||
|
|
||||||
local UniqueId = Utils:GenUniqueId(ArchiveProxy.pData[Player.UserId][STORE_NAME])
|
local UniqueId = Utils:GenUniqueIdString(ArchiveProxy.pData[Player.UserId][STORE_NAME])
|
||||||
-- 配置表内容
|
-- 配置表内容
|
||||||
local ResultData = {}
|
local ResultData = {}
|
||||||
for key, value in pairs(EquipmentData) do
|
for key, value in pairs(EquipmentData) do
|
||||||
@ -262,14 +262,16 @@ function EquipmentProxy:AddEquipment(Player: Player, EquipmentId: number)
|
|||||||
|
|
||||||
-- 随机生成符文数量
|
-- 随机生成符文数量
|
||||||
local RuneProxy = require(ServerStorage.Proxy.RuneProxy)
|
local RuneProxy = require(ServerStorage.Proxy.RuneProxy)
|
||||||
local maxRuneNumber = PlayerInfoProxy:GetPlayerInfo(Player).runeNumber or 0
|
local maxRuneNumber = PlayerInfoProxy:GetPlayerInfo(Player)["AttributesUpgrade"]["15"] or 0
|
||||||
local runeNumber = rng:NextInteger(0, maxRuneNumber)
|
local runeNumber = rng:NextInteger(0, maxRuneNumber)
|
||||||
ResultData.maxRuneNumber = runeNumber
|
ResultData.maxRuneNumber = runeNumber
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
ArchiveProxy.pData[Player.UserId][STORE_NAME][UniqueId] = ResultData
|
ArchiveProxy.pData[Player.UserId][STORE_NAME][UniqueId] = ResultData
|
||||||
local equipmentInstance = Utils:CreateDataInstance(Player, UniqueId, ResultData, GetPlayerEquipmentFolder(Player))
|
local equipmentInstance = Utils:CreateDataInstance(Player, UniqueId, ResultData, GetPlayerEquipmentFolder(Player))
|
||||||
|
|
||||||
|
print("生成装备符文孔数", equipmentInstance.Name, runeNumber, maxRuneNumber)
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
-- 下面逻辑会找Instance实例,所以放在之后执行逻辑
|
-- 下面逻辑会找Instance实例,所以放在之后执行逻辑
|
||||||
|
|
||||||
@ -316,7 +318,6 @@ function EquipmentProxy:AddEquipment(Player: Player, EquipmentId: number)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
-- 添加图鉴记录
|
-- 添加图鉴记录
|
||||||
@ -493,7 +494,7 @@ end
|
|||||||
|
|
||||||
-- 获取装备数据
|
-- 获取装备数据
|
||||||
function EquipmentProxy:GetEquipmentData(Player: Player, EquipmentUniqueId: number)
|
function EquipmentProxy:GetEquipmentData(Player: Player, EquipmentUniqueId: number)
|
||||||
local EquipmentData = ArchiveProxy.pData[Player.UserId][STORE_NAME][EquipmentUniqueId]
|
local EquipmentData = ArchiveProxy.pData[Player.UserId][STORE_NAME][tostring(EquipmentUniqueId)]
|
||||||
return EquipmentData
|
return EquipmentData
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ function RuneProxy:AddRune(Player: Player, RuneId: number)
|
|||||||
ResultData.id = UniqueId
|
ResultData.id = UniqueId
|
||||||
ResultData.orgId = RuneId
|
ResultData.orgId = RuneId
|
||||||
-- 记录穿戴的装备UniqueId
|
-- 记录穿戴的装备UniqueId
|
||||||
ResultData.wearing = 0
|
ResultData.wearing = "0"
|
||||||
ResultData.wearingSlot = 0
|
ResultData.wearingSlot = 0
|
||||||
|
|
||||||
ArchiveProxy.pData[Player.UserId][STORE_NAME][UniqueId] = ResultData
|
ArchiveProxy.pData[Player.UserId][STORE_NAME][UniqueId] = ResultData
|
||||||
@ -167,6 +167,7 @@ function RuneProxy:WearRune(Player: Player, RuneUniqueId: number, EquipmentUniqu
|
|||||||
-- 获取装备数据
|
-- 获取装备数据
|
||||||
local EquipmentProxy = require(ServerStorage.Proxy.EquipmentProxy)
|
local EquipmentProxy = require(ServerStorage.Proxy.EquipmentProxy)
|
||||||
local EquipmentData = EquipmentProxy:GetEquipmentData(Player, EquipmentUniqueId)
|
local EquipmentData = EquipmentProxy:GetEquipmentData(Player, EquipmentUniqueId)
|
||||||
|
print(EquipmentData, EquipmentUniqueId)
|
||||||
|
|
||||||
-- 遍历符文查看现在穿了几个
|
-- 遍历符文查看现在穿了几个
|
||||||
local wearingCount = 0
|
local wearingCount = 0
|
||||||
@ -185,6 +186,7 @@ function RuneProxy:WearRune(Player: Player, RuneUniqueId: number, EquipmentUniqu
|
|||||||
end
|
end
|
||||||
|
|
||||||
-- 检查槽位数量是否充足
|
-- 检查槽位数量是否充足
|
||||||
|
print(wearingCount, EquipmentData.maxRuneNumber)
|
||||||
if wearingCount >= EquipmentData.maxRuneNumber then
|
if wearingCount >= EquipmentData.maxRuneNumber then
|
||||||
RE_PlayerTip:FireClient(Player, "装备已满符文槽位")
|
RE_PlayerTip:FireClient(Player, "装备已满符文槽位")
|
||||||
return
|
return
|
||||||
@ -254,7 +256,7 @@ function RuneProxy:GetPlayerWearingRuneData(Player: Player)
|
|||||||
local EquipmentProxy = require(ServerStorage.Proxy.EquipmentProxy)
|
local EquipmentProxy = require(ServerStorage.Proxy.EquipmentProxy)
|
||||||
local wearingEquipments = EquipmentProxy:GetPlayerWearingEquipmentUniqueId(Player)
|
local wearingEquipments = EquipmentProxy:GetPlayerWearingEquipmentUniqueId(Player)
|
||||||
for _, RuneData in ArchiveProxy.pData[Player.UserId][STORE_NAME] do
|
for _, RuneData in ArchiveProxy.pData[Player.UserId][STORE_NAME] do
|
||||||
if RuneData.wearing > 0 and table.find(wearingEquipments, RuneData.wearing) then
|
if tonumber(RuneData.wearing) > 0 and table.find(wearingEquipments, RuneData.wearing) then
|
||||||
table.insert(wearingRuneUniqueId, RuneData.id)
|
table.insert(wearingRuneUniqueId, RuneData.id)
|
||||||
local RuneData = Utils:GetIdDataFromJson(JsonRune, RuneData.orgId)
|
local RuneData = Utils:GetIdDataFromJson(JsonRune, RuneData.orgId)
|
||||||
if RuneData.runeName then
|
if RuneData.runeName then
|
||||||
|
@ -31,11 +31,13 @@ function WearingShow:Refresh()
|
|||||||
|
|
||||||
self.Variables._imgIcon.Image = Localization:GetImageData(runeData.icon)
|
self.Variables._imgIcon.Image = Localization:GetImageData(runeData.icon)
|
||||||
self.Variables._imgIcon.BackgroundColor3 = Localization:GetRuneQualityBgColor(runeData.quality)
|
self.Variables._imgIcon.BackgroundColor3 = Localization:GetRuneQualityBgColor(runeData.quality)
|
||||||
|
self.Variables._imgIcon.Transparency = 0
|
||||||
self.Variables._tmpName.Text = Localization:GetLanguageData(itemData.nameId)
|
self.Variables._tmpName.Text = Localization:GetLanguageData(itemData.nameId)
|
||||||
self.Variables._imgIcon.Visible = true
|
self.Variables._imgIcon.Visible = true
|
||||||
else
|
else
|
||||||
self.Variables._imgIcon.Image = ""
|
self.Variables._imgIcon.Image = ""
|
||||||
self.Variables._tmpName.Text = ""
|
self.Variables._tmpName.Text = ""
|
||||||
|
self.Variables._imgIcon.Transparency = 1
|
||||||
self.Variables._imgIcon.Visible = false
|
self.Variables._imgIcon.Visible = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -50,7 +52,6 @@ function WearingShow:OnInitFinish()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function WearingShow:Destroy()
|
function WearingShow:Destroy()
|
||||||
print("Destroy WearingShow")
|
|
||||||
for k, v in pairs(self) do
|
for k, v in pairs(self) do
|
||||||
self[k] = nil
|
self[k] = nil
|
||||||
end
|
end
|
||||||
|
@ -269,7 +269,11 @@ function CombineRuneWindow:OnOpenWindow()
|
|||||||
-- TODO: 这里清除逻辑不清晰,之后优化
|
-- TODO: 这里清除逻辑不清晰,之后优化
|
||||||
local key, parentName = self:RemoveInstanceData(child, self.Data)
|
local key, parentName = self:RemoveInstanceData(child, self.Data)
|
||||||
if parentName == "SelectRune" then
|
if parentName == "SelectRune" then
|
||||||
local removeIndex = self.Variables["__listRuneCombine"]:RemoveData(key)
|
local oldSlot = self.Variables["__listRuneCombine"]:RemoveData(key)
|
||||||
|
self.Data.SelectRune[key] = {
|
||||||
|
wearingSlot = tonumber(string.sub(key, -1)),
|
||||||
|
}
|
||||||
|
self.Variables["__listRuneCombine"]:AddData(key, self.Data.SelectRune[key])
|
||||||
else
|
else
|
||||||
local removeIndex = self.Variables["__listRunePackage"]:RemoveData(key)
|
local removeIndex = self.Variables["__listRunePackage"]:RemoveData(key)
|
||||||
end
|
end
|
||||||
|
@ -48,7 +48,7 @@ function PackageShow:OnInitFinish()
|
|||||||
local oldWearing = self.Data.wearing
|
local oldWearing = self.Data.wearing
|
||||||
local newWearing = self.Data.instance:GetAttribute("wearing")
|
local newWearing = self.Data.instance:GetAttribute("wearing")
|
||||||
if oldWearing ~= newWearing then
|
if oldWearing ~= newWearing then
|
||||||
if newWearing > 0 then
|
if tonumber(newWearing) > 0 then
|
||||||
self.TopUI:WearRefresh(self.Data)
|
self.TopUI:WearRefresh(self.Data)
|
||||||
else
|
else
|
||||||
self.TopUI:UnwearRefresh(self.Data)
|
self.TopUI:UnwearRefresh(self.Data)
|
||||||
|
@ -25,27 +25,29 @@ function WearingShow:Init(data: table)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function WearingShow:Refresh()
|
function WearingShow:Refresh()
|
||||||
if self.Data then
|
if self.Data.instance then
|
||||||
local itemData = Utils:GetIdDataFromJson(JsonItemProp, self.Data.orgId)
|
local itemData = Utils:GetIdDataFromJson(JsonItemProp, self.Data.orgId)
|
||||||
local runeData = Utils:GetIdDataFromJson(JsonRune, self.Data.orgId)
|
local runeData = Utils:GetIdDataFromJson(JsonRune, self.Data.orgId)
|
||||||
|
|
||||||
self.Variables._imgIcon.Image = Localization:GetImageData(runeData.icon)
|
self.Variables._imgIcon.Image = Localization:GetImageData(runeData.icon)
|
||||||
self.Variables._imgIcon.BackgroundColor3 = Localization:GetRuneQualityBgColor(runeData.quality)
|
self.Variables._imgIcon.BackgroundColor3 = Localization:GetRuneQualityBgColor(runeData.quality)
|
||||||
|
self.Variables._imgIcon.Transparency = 0
|
||||||
self.Variables._tmpName.Text = Localization:GetLanguageData(itemData.nameId)
|
self.Variables._tmpName.Text = Localization:GetLanguageData(itemData.nameId)
|
||||||
self.Variables._imgIcon.Visible = true
|
self.Variables._imgIcon.Visible = true
|
||||||
else
|
else
|
||||||
self.Variables._imgIcon.Image = ""
|
self.Variables._imgIcon.Image = ""
|
||||||
self.Variables._tmpName.Text = ""
|
self.Variables._tmpName.Text = ""
|
||||||
|
self.Variables._imgIcon.Transparency = 1
|
||||||
self.Variables._imgIcon.Visible = false
|
self.Variables._imgIcon.Visible = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function WearingShow:OnInitFinish()
|
function WearingShow:OnInitFinish()
|
||||||
local con = self.Variables._btnClick.MouseButton1Click:Connect(function()
|
local con = self.Variables._btnClick.MouseButton1Click:Connect(function()
|
||||||
if self.Data == {} then
|
if self.Data.instance then
|
||||||
-- TODO: 之后做提示弹窗
|
|
||||||
else
|
|
||||||
self.TopUI:ShowDetailData(self.Data.id)
|
self.TopUI:ShowDetailData(self.Data.id)
|
||||||
|
else
|
||||||
|
-- TODO: 之后做提示弹窗
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
table.insert(self.Connections, con)
|
table.insert(self.Connections, con)
|
||||||
|
@ -128,7 +128,7 @@ end
|
|||||||
|
|
||||||
function RuneWindow:InlayRune()
|
function RuneWindow:InlayRune()
|
||||||
if self.NowSelectRuneId and self.ShowEquipmentId then
|
if self.NowSelectRuneId and self.ShowEquipmentId then
|
||||||
RE_RuneInlay:FireClient(self.NowSelectRuneId, self.ShowEquipmentId)
|
RE_RuneInlay:FireServer(self.NowSelectRuneId, self.ShowEquipmentId)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user