81 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
local DataTableUtils = require("Utils.DataTableUtils")
 | 
						|
local Emitter = require("Utils.Emitter")
 | 
						|
local EPreCookSlotType = import("EPreCookSlotType")
 | 
						|
 | 
						|
--- @class PreCookSlot
 | 
						|
local PreCookSlot = {}
 | 
						|
 | 
						|
function PreCookSlot:OnInitialized()
 | 
						|
    self.slot_item_id = nil
 | 
						|
    self.is_slot_item_active = false
 | 
						|
 | 
						|
    self.BtnMain.OnClicked:Add(function() self:BP_EmitLuaEvent("PreCookSlotClicked") end)
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:Construct()
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:Destruct()
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:Reset()
 | 
						|
 | 
						|
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:GetSlotType()
 | 
						|
    return self.PreCookSlotType
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:GetSlotItemID()
 | 
						|
    return self.slot_item_id
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:SetPreCookItemID(pre_cook_item_id)
 | 
						|
    self:Reset()
 | 
						|
    if not pre_cook_item_id then return end
 | 
						|
 | 
						|
    local row_data = DataTableUtils.GetDataTableRow("PreCookItemConfig", pre_cook_item_id)
 | 
						|
    if not row_data then
 | 
						|
        return
 | 
						|
    end
 | 
						|
 | 
						|
    self.SlotImg:SetBrushFromSoftTexture(row_data.DisplayResource, true)
 | 
						|
    self.slot_item_id = pre_cook_item_id
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:SetPreCookTool(pre_cook_tool_id)
 | 
						|
    self:SetPreCookItemID(pre_cook_tool_id)
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:SetPreCookContainer(pre_cook_container_id)
 | 
						|
    self:SetPreCookItemID(pre_cook_container_id)
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:ActiveToolSlot()
 | 
						|
    self:PlayAnimation(self.Anim_UseTool, 0, 1, 0, 5, false)
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:DeactiveToolSlot()
 | 
						|
    self:PlayAnimation(self.Anim_UseTool, 0, 1, 1, 1, false)
 | 
						|
end
 | 
						|
 | 
						|
 | 
						|
function PreCookSlot:PushSlotItem()
 | 
						|
    self:PlayAnimation(self.Anim_PushItem, 0, 1, 0, 1, false)
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:ActiveContainerSlot()
 | 
						|
    self:PlayAnimation(self.Anim_PushItem, 0, 1, 0, 1, false)
 | 
						|
end
 | 
						|
 | 
						|
function PreCookSlot:DeactiveContianerSlot()
 | 
						|
    print("PreCookSlot:DeactiveContianerSlot")
 | 
						|
    self:PlayAnimation(self.Anim_PushItem, 0, 1, 1, 1, false)
 | 
						|
end
 | 
						|
 | 
						|
 | 
						|
 | 
						|
return Class(nil, nil, PreCookSlot) |