魔力宝贝

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz

[GP] toushichibang.lua--头饰翅膀图档显示

[复制链接]
发表于 前天 03:25 | 显示全部楼层 |阅读模式
toushichibang_tab = {} --头饰与翅膀记录表
toushichibang_tab[119587] = 1 -- toushichibang_tab[图档ID] = 1,1为头饰
toushichibang_tab[114175] = 1
toushichibang_tab[119708] = 1
toushichibang_tab[114198] = 1
toushichibang_tab[118601] = 1
toushichibang_tab[119589] = 1
toushichibang_tab[119506] = 1
toushichibang_tab[114177] = 1
toushichibang_tab[119531] = 1
toushichibang_tab[114196] = 1
toushichibang_tab[119517] = {0,30} --toushichibang_tab[图档ID] = {X偏移,Y偏移},表为翅膀
toushichibang_tab[119561] = {0,30}
toushichibang_tab[119112] = {0,30}
toushichibang_tab[119707] = {0,33}
toushichibang_tab[119678] = {0,30}
toushichibang_tab[119702] = {0,30}
toushichibang_tab[119662] = {0,30}
toushichibang_tab[119214] = {0,30}

----------------
Global_Reg.RegEquipItem("toushichibang_zb")--装备事件注册
Global_Reg.RegMoveEquipItem("toushichibang_tx")--脱下装备事件注册
Global_Reg.RegDropItem("toushichibang_dorp")--创建一个所有玩家丢出道具就会触发的Lua函数
Global_Reg.RegLoginEvent("toushichibang_login")-- 登录


function toushichibang_login(player)--登录事件
        local item1index = Char.GetItemIndex(player, 5)--获取首饰1index
        local item2index = Char.GetItemIndex(player, 6)--获取首饰2index
        local item1_metamo = Item.GetData(item1index,30)--对应未知56号栏
        local item2_metamo = Item.GetData(item2index,30)
                if item1_metamo and item1_metamo > 0 then
                        if toushichibang_tab[item1_metamo] == 1 then --若有头饰图档
                                NLG.SendIco(player, item1_metamo)
                                NLG.Wing(player,0,0,0)
                        elseif type(toushichibang_tab[item1_metamo]) == "table" then --若有翅膀图档
                                NLG.Wing(player,item1_metamo,toushichibang_tab[item1_metamo][1],toushichibang_tab[item1_metamo][2])
                                NLG.SendIco(player, 0)
                        end
                end
                if  item2_metamo and item2_metamo > 0 then
                        if toushichibang_tab[item2_metamo] == 1 then --若有头饰图档
                                NLG.SendIco(player, item2_metamo)
                        elseif type(toushichibang_tab[item2_metamo]) == "table" then --若有翅膀图档
                                NLG.Wing(player,item2_metamo,toushichibang_tab[item2_metamo][1],toushichibang_tab[item2_metamo][2])
                        end
                end
        return 0
end


function toushichibang_zb(player,OldItemPos, NewItemPos)--装备事件
--                NLG.SystemMessage(player,"NewItemPos="..NewItemPos..",OldItemPos="..OldItemPos..",")
        if (NewItemPos == 5) or (NewItemPos == 6) then --装备上首饰1或首饰2
                local itemindex = Char.GetItemIndex(player, OldItemPos)--获取要装备的index
                local item_metamo = Item.GetData(itemindex,30)--对应未知56号栏
                local itemindex2 = Char.GetItemIndex(player, NewItemPos) --获取脱下的装备index
                local item_metamo2 = Item.GetData(itemindex2,30)--对应未知56号栏
                local itemDDXS = Item.GetData(itemindex,%道具_丢地消失%)
                local itemzl = Item.GetData(itemindex,%道具_类型%)
--                NLG.SystemMessage(player,"itemzl="..itemzl.."")
                if item_metamo2 and item_metamo2 > 0 then
                        if toushichibang_tab[item_metamo2] == 1 then --若有头饰图档
                                NLG.SendIco(player, 0)
                        elseif type(toushichibang_tab[item_metamo2]) == "table" then --若有翅膀图档
                                NLG.Wing(player,0,0,0)
                        end
                end
                if item_metamo > 0 then
                        if toushichibang_tab[item_metamo] == 1 then --若有头饰图档
                                NLG.SendIco(player, item_metamo)
                        elseif type(toushichibang_tab[item_metamo]) == "table" then --若有翅膀图档
                                NLG.Wing(player,item_metamo,toushichibang_tab[item_metamo][1],toushichibang_tab[item_metamo][2])
                        end
                        if itemDDXS ~= 1 and itemzl ~= 16 and itemzl ~= 55 then --绑定
                                local itemname = Item.GetData(itemindex,%道具_已鉴定名%)
                                Item.SetData(itemindex, %道具_丢地消失%,1)
                                Item.SetData(itemindex,54,0)--宠邮
                                Item.UpItem(player,OldItemPos)
                                NLG.SystemMessage(player,"『"..itemname.."』已经绑定[无法交易且丢地会消失]")
                        end
                end
        end
        return 0
end

function toushichibang_tx(player,OldItemPos, NewItemPos)--脱下装备事件
--                NLG.SystemMessage(player,"NewItemPos="..NewItemPos..",OldItemPos="..OldItemPos..",")
        if (OldItemPos == 5) or (OldItemPos == 6) then --装备上首饰1或首饰2
                local itemindex = Char.GetItemIndex(player, OldItemPos)--获取首饰1index
                local item_metamo = Item.GetData(itemindex,30)--对应未知56号栏
                local itemid = Item.GetData(itemindex,%道具_ID%)
--                NLG.SystemMessage(player,"item_metamo="..item_metamo.."")
                if item_metamo > 0 then
                        if toushichibang_tab[item_metamo] == 1 then --若有头饰图档
                                NLG.SendIco(player, 0)
                        elseif type(toushichibang_tab[item_metamo]) == "table" then --若有翅膀图档
                                NLG.Wing(player,0,0,0)
                        end
                end
        end
        return 0
end

function toushichibang_dorp(player, itemindex, ItemPos)--丢地事件
--                NLG.SystemMessage(player,"itemindex="..itemindex..",ItemPos="..ItemPos..",")
        if (ItemPos == 5) or (ItemPos == 6) then --装备上首饰1或首饰2
                local item_metamo = Item.GetData(itemindex,30)--对应未知56号栏
--                NLG.SystemMessage(player,"item_metamo="..item_metamo.."")
                if item_metamo > 0 then
                        if toushichibang_tab[item_metamo] == 1 then --若有头饰图档
                                NLG.SendIco(player, 0)
                        elseif type(toushichibang_tab[item_metamo]) == "table" then --若有翅膀图档
                                NLG.Wing(player,0,0,0)
                        end
                end
        end
        return 0
end


回复

使用道具 举报

Archiver|魔力研究社

GMT+8, 2025-5-12 14:47 , Processed in 0.099702 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表