写一个显示包袱所有武器的装备框
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-03-17 15:07:26 |
👁️ 阅读: 6
根据浮生梦老师前端课程内容,我来帮你创建一个显示包袱所有武器的装备框。
```lua
-- 首先创建主界面
local parent = GUI:Win_Create("WeaponBag", 0, 0, 0, 0, false, false, true, false, false, false, 1)
-- 设置背景
local bg = GUI:Image_Create(parent, "bg", 0, 0, "res/public_win32/1900000610.png")
GUI:setContentSize(bg, 800, 600)
-- 创建武器装备框容器
local weaponContainer = GUI:Layout_Create(parent, "weaponContainer", 100, 100, 600, 400, false)
GUI:Layout_setBackGroundColorType(weaponContainer, 1)
GUI:Layout_setBackGroundColor(weaponContainer, "#000000")
GUI:Layout_setBackGroundColorOpacity(weaponContainer, 150)
-- 模拟包袱中的武器数据(实际应从服务端获取)
local weaponList = {
{name = "屠龙刀", icon = "res/public/0.png"},
{name = "裁决之杖", icon = "res/public/0.png"},
{name = "井中月", icon = "res/public/0.png"},
{name = "命运之刃", icon = "res/public/0.png"},
{name = "凝霜", icon = "res/public/0.png"},
}
-- 创建每个武器的装备框
for i, weapon in ipairs(weaponList) do
local row = math.floor((i-1) / 5) -- 每行5个
local col = (i-1) % 5
-- 创建装备框面板
local panel = GUI:Layout_Create(weaponContainer, "Panel_weapon"..i, col*110, row*110, 100, 100, false)
GUI:setTouchEnabled(panel, true)
-- 创建背景框
local bg = GUI:Image_Create(panel, "Image_bg", 25, 25, "res/private/player_main_layer_ui/player_main_layer_ui_win32/icon_chenghd_03.png")
GUI:setAnchorPoint(bg, 0.50, 0.50)
GUI:setTouchEnabled(bg, false)
-- 创建武器图标
local icon = GUI:Image_Create(panel, "Image_icon", 25, 25, weapon.icon)
GUI:setAnchorPoint(icon, 0.50, 0.50)
GUI:setTouchEnabled(icon, false)
-- 创建武器名称
local nameText = GUI:Text_Create(panel, "Text_name", 50, 90, 12, "#ffffff", weapon.name)
GUI:setAnchorPoint(nameText, 0.50, 0.50)
-- 添加点击事件
GUI:addOnClickEvent(panel, function()
SL:Print("选择了武器:" .. weapon.name)
end)
end
-- 创建关闭按钮
local closeBtn = GUI:Button_Create(parent, "btn_close", 750, 550, "res/public/1900000612.png")
GUI:Button_setTitleText(closeBtn, "关闭")
GUI:addOnClickEvent(closeBtn, function()
GUI:removeFromParent(parent)
end)
```
这个代码实现了:
1. 创建了一个显示包袱中所有武器的界面
2. 每个武器都有独立的装备框,包含图标和名称
3. 添加了点击事件,点击武器时会打印选择信息
4. 提供了关闭按钮可以关闭界面
你可以根据自己的需求调整武器数据、布局样式和事件处理逻辑。
← 返回问答库