魔力宝贝

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

[GA] ItemSellTalk.lua--远程卖店

[复制链接]
发表于 前天 02:09 | 显示全部楼层 |阅读模式
local ItemSellTalkNpcInfo = {100500,"远程卖店",4,777,5,8} --设置Npc 图档 名字 方向 地图 x坐标 y坐标
local ItemSellTalkWord = "/XT"
local ItemSellPayTable = {} --道具价格
ItemSellPayTable[66140] = -1
ItemSellPayTable[66141] = -1
ItemSellPayTable[66142] = -1
ItemSellPayTable[66143] = -1
ItemSellPayTable[18005] = -1
ItemSellPayTable[18006] = -1
ItemSellPayTable[18007] = -1
ItemSellPayTable[18008] = -1
ItemSellPayTable[18009] = -1
ItemSellPayTable[18010] = -1
ItemSellPayTable[18011] = -1
ItemSellPayTable[18012] = -1
ItemSellPayTable[18013] = -1
ItemSellPayTable[18014] = -1
ItemSellPayTable[18015] = -1
ItemSellPayTable[18016] = -1
ItemSellPayTable[18017] = -1
ItemSellPayTable[18018] = -1
ItemSellPayTable[18019] = -1
ItemSellPayTable[18020] = -1
ItemSellPayTable[18021] = -1
ItemSellPayTable[18022] = -1
ItemSellPayTable[18023] = -1
ItemSellPayTable[18024] = -1
ItemSellPayTable[18025] = -1
ItemSellPayTable[18026] = -1
ItemSellPayTable[18027] = -1
ItemSellPayTable[18028] = -1
ItemSellPayTable[18029] = -1
ItemSellPayTable[18030] = -1
ItemSellPayTable[18031] = -1
ItemSellPayTable[18032] = -1
ItemSellPayTable[18033] = -1
ItemSellPayTable[18034] = -1
ItemSellPayTable[18035] = -1
ItemSellPayTable[18036] = -1
ItemSellPayTable[18037] = -1
ItemSellPayTable[18038] = -1
ItemSellPayTable[18039] = -1
ItemSellPayTable[18040] = -1
ItemSellPayTable[18041] = -1
ItemSellPayTable[18042] = -1
ItemSellPayTable[18044] = -1
ItemSellPayTable[18043] = -1
ItemSellPayTable[18045] = -1
ItemSellPayTable[18046] = -1
ItemSellPayTable[18047] = -1
ItemSellPayTable[18048] = -1
ItemSellPayTable[18049] = -1
ItemSellPayTable[18050] = -1
ItemSellPayTable[18051] = -1
ItemSellPayTable[18052] = -1
ItemSellPayTable[18053] = -1
ItemSellPayTable[18054] = -1
ItemSellPayTable[18055] = -1
ItemSellPayTable[18056] = -1
ItemSellPayTable[18057] = -1
ItemSellPayTable[18058] = -1
ItemSellPayTable[18059] = -1
ItemSellPayTable[18060] = -1
ItemSellPayTable[18061] = -1
ItemSellPayTable[18062] = -1
ItemSellPayTable[18063] = -1
ItemSellPayTable[18064] = -1
ItemSellPayTable[18065] = -1
ItemSellPayTable[18066] = -1
ItemSellPayTable[18067] = -1
ItemSellPayTable[18068] = -1
ItemSellPayTable[18069] = -1
ItemSellPayTable[18070] = -1
ItemSellPayTable[18071] = -1
ItemSellPayTable[18072] = -1
ItemSellPayTable[18073] = -1
ItemSellPayTable[18074] = -1
ItemSellPayTable[18075] = -1
ItemSellPayTable[18076] = -1
ItemSellPayTable[18077] = -1
ItemSellPayTable[18078] = -1
ItemSellPayTable[18079] = -1
ItemSellPayTable[18080] = -1
ItemSellPayTable[18081] = -1
ItemSellPayTable[18082] = -1
ItemSellPayTable[18083] = -1
ItemSellPayTable[18084] = -1
ItemSellPayTable[18085] = -1
ItemSellPayTable[18086] = -1
ItemSellPayTable[18087] = -1
ItemSellPayTable[18088] = -1
ItemSellPayTable[760222] = -1
ItemSellPayTable[760223] = -1
ItemSellPayTable[760224] = -1
ItemSellPayTable[760225] = -1

------------------------------------------------
Delegate.RegDelTalkEvent("ItemSellTalkCallBack")

ItemSellTalkCheckWord = ItemSellTalkCheckWord or {}

function ItemSellTalkCallBack(player,msg,color,range,size)
        if msg == ItemSellTalkWord then
                if(Char.ItemNum(player,760173) > 0 or Char.ItemNum(player,760174) > 0 or Char.ItemNum(player,760175) > 0)then
                ItemSellTalkCheckWord[player] = math.random(1000,9999)
                ItemSellTalkNpcWindowTalkedCallBack(ItemSellTalkNpcIndex,player,0,1,0)
        end
end
end

function ItemSellTalkNpcWindowTalkedCallBack(npc,player,Seqno,Select,WinData)
--NLG.SystemMessage(player,"Seqno="..Seqno.." Select="..Select.." WinData="..WinData)
        if Select ~= 2 and Select ~= 8 then
                if Seqno == 0 then
                        if ItemSellTalkCheckWord[player] then
                                local msg = "\n注意:您正在远程出售身上全部可售道具。\n请输入验证码:"..ItemSellTalkCheckWord[player].."\n\n点击[确定]会立即自动出售"
                                NLG.ShowWindowTalked(player,npc,1,3,1,msg)
                        end
                elseif Seqno == 1 then
                        if ItemSellTalkCheckWord[player] then
                                if tonumber(WinData) == ItemSellTalkCheckWord[player] then
                                        for i = 8,27 do
                                                local itemindex = Char.GetItemIndex(player,i)
                                                if itemindex > 0 then
                                                        local itemid = Item.GetData(itemindex,%道具_ID%)
                                                        if ItemSellPayTable[itemid] then
                                                                local itemvalue = Item.GetData(itemindex,%道具_价格%)
                                                                if ItemSellPayTable[itemid] >= 0 then
                                                                        itemvalue = ItemSellPayTable[itemid]
                                                                end
                                                                local itemnum = Char.ItemNum(player,itemid)
                                                                itemvalue = itemvalue * itemnum
                                                                local playergold = Char.GetData(player,%对象_金币%)
                                                                if playergold + itemvalue <= Setup.Get("char_maxgoldhave") then
                                                                        Char.DelItem(player,itemid,itemnum)
                                                                        Char.SetData(player,%对象_金币%,playergold+itemvalue)
                                                                        NLG.SystemMessage(player,"得到了 "..itemvalue.." 金币。")
                                                                else
                                                                        NLG.SystemMessage(player,"你的钱太多了。")
                                                                        break
                                                                end
                                                        end
                                                end
                                        end
                                        NLG.UpChar(player)
                                        NLG.SystemMessage(player,"出售完毕。")
                                else
                                        NLG.SystemMessage(player,"请输入正确的验证码。")
                                end
                        end
                end
        end
end

function ItemSellTalkNpcInit(npc)
        Char.SetData(npc,%对象_形象%,ItemSellTalkNpcInfo[1])
        Char.SetData(npc,%对象_原形%,ItemSellTalkNpcInfo[1])
        Char.SetData(npc,%对象_地图%,ItemSellTalkNpcInfo[4])
        Char.SetData(npc,%对象_X%,ItemSellTalkNpcInfo[5])
        Char.SetData(npc,%对象_Y%,ItemSellTalkNpcInfo[6])
        Char.SetData(npc,%对象_方向%,ItemSellTalkNpcInfo[3])
        Char.SetData(npc,%对象_原名%,ItemSellTalkNpcInfo[2])
        Char.SetWindowTalkedEvent(nil,"ItemSellTalkNpcWindowTalkedCallBack",npc)
        NLG.UpChar(npc)
        return true
end

if ItemSellTalkNpcIndex == nil then
        ItemSellTalkNpcIndex = NL.CreateNpc(nil,"ItemSellTalkNpcInit")
end

回复

使用道具 举报

Archiver|魔力研究社

GMT+8, 2025-5-12 18:33 , Processed in 0.131319 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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