为剑侠新增NPC提供指定道具销毁

[复制链接]
4015 发表于 2024-5-27 11:01:04 | 显示全部楼层 |阅读模式



1. 脚本你可以随意去配置,如果你实在不懂的话可以直接以纳兰真为基础,纳兰真脚本:\ServerScript\Npc\Class\ActivityNpc.lua
2. 脚本分为两种方法,一种为清空背包全部道具,一种只销毁单一物品.
以纳兰真为例子

function tbNpc:OnDialog()
    Dialog:Show(
    {
        Text    = ("我可以为您提供以下服务"),
        OptList = {
            { Text = ("清理物品"), Callback = self.CleanBag, Param = {self} },--当玩家选择此项,将执行CleanBag这个方法
            { Text = ("你先忙"), Callback = function () end},
        },
    }, me, him);  
end
在OptList = {下新增一条以下内容
{ Text = ("清理物品"), Callback = self.CleanBag, Param = {self} },

方法一:清空背包所有物品
function tbNpc:CleanBag()
                me.MsgBox("确定要清空包裹吗?操作后包裹内所有物品将被清空!",
                        {
                                {"确定", self.CleanBagOK, Param = {self,1}, true}, --当用户选择确定,将执行CleanBagOK这个方法
                                {"不了"}
                        });
end

function tbNpc:CleanBagOK() --经过用户选择后执行CleanBagOK这个方法清理背包
        local items = me.GetItemListInBag();
        for nIdx, pItem in ipairs(items) do
                pItem.Delete(1)
        end
        me.CenterMsg("清理包裹成功", true)
end
方法二:销毁指定物品
function tbNpc:CleanBag2()  --因为纳兰真我在测试的时候两种方法都使用,所以我这里是CleanBag2,当然如果你两个都要用的话,请记得在基础方法那边加多CleanBag2供玩家选择
        local opt  = {};
        local tbItem = me.GetItemListInBag() --获取背包道具,调用服务端原本的方法
                for _, pItem in pairs(tbItem) do
                        local dwId = pItem.dwId
                        table.insert(opt, { Text = "销毁 → "..pItem.szName, Callback = self.delItemSure, Param = {self, dwId} })  --当玩家选择将执行delItemSure方法
                end
        table.insert(opt, { Text = "抱歉点错了!", Callback = function () end})
                Dialog:Show(
                                {
                                        Text    = "物品销毁后将无法找回,请慎重选择!",
                                        OptList = opt,
                                }, me, him);   
end

function tbNpc:delItemSure(dwId) --经过上面玩家选择销毁某个物品则执行这个方法
        local pItem = KItem.GetItemObj(dwId)
                Dialog:Show(
                {
                        Text    = "确定要销毁 → "..pItem.szName.."吗?",
                                OptList = {
                                { Text = "确定", Callback = self.delItem, Param = {self, dwId} }, --当玩家选择确定销毁则执行delItem这个方法
                                { Text = "取消", Callback = function () end},
                                },
                }, me, him);   
        end

function tbNpc:delItem(dwId) --执行销毁
        local pItem = KItem.GetItemObj(dwId)
                me.CenterMsg("成功为您销毁物品:"..pItem.szName.."", true)
        pItem.Delete(1)
end

当你修改完之后打包服务端丢到服务器重启服务端即可





混沌资源社区- 论坛版权- 免责声明
欢迎您访问“混沌资源论坛”(www.0086.fun),以下简称“混沌资源”
为确保本网站的正常发展、规避意外风险,清晰责权利益,特制定本《免责条款》。在您浏览本内容之前,请仔细阅读本条款。
   01、“混沌资源”刊载之企业等相关单位(个人)原创作品,是为更好的展示其形象,提供参考学习之用,请勿保存、转载,以及用于商业用途,请支持原创及正版作品。
02、“混沌资源”秉承分享资源、分享快乐的原则,会员可每天登录和领取红包任务.登录他人主页以及发帖等分享方式赚金币免费互相交流下载,无对外开设贴吧、博客、等主页,本站的所有内容都不保证其准确性,有效性,完整性,时间性,凡因本站内容引起误导等因素而造成的损失本站不承担连带责任。
   03、 本网站所刊载信息的作品内容及下载件仅代表原作者本人的观点,不代表本网站观点,对于任何因本网站内容所引起的纠纷、损失等,本网站均不承担侵权行为的连带责任。
   04、 当本网站以链接形式推荐其他网站内容时,由于本网站并不控制相关网站和资源,因此,本网站不能保证从这些链接获取的任何内容、产品、服务或其他材料的真实性、合法性。对于任何因使用或信赖从此类网站或资源上获取的内容、产品、服务或其他材料而造成(或声称造成)的任何直接或间接损失,本站均不承担任何责任。
   05、 本网站所荐公司或项目,在其所提供资料的基础上,本网站已进行核实,故不能保证其内容的真实性、可靠性及准确性。因此,所荐内容仅供参考,不做为任何会员、任何行为依据的指导和建议。因此而引发的任何争议和纠纷,与本网站无任何关联。
   06、 本网站可能因其他合作方或相关电信部门的互联网软硬件设备故障或失灵、或人为操作疏忽而全部或部分中断、延迟、遗漏、误导或造成资料传输或储存上的错误、或遭第三人侵入系统篡改或伪造变造资料等,本网站不承担任何责任。
   07、 在混沌资源论坛上传的作品(包括软件、网游服务端客户端、文字、图片和FLASH、动画)者皆视为混沌资源网友投稿,文责自负。本站享有使用、选择和修改的权利。
   08、 由于会员将密码告知他人或与他人共享同一会员ID,由此导致的任何会员资料泄露、积分丢失以及所带来的任何其它损失,本网站均不负任何责任。
   09、 混沌资源所发布的作品,其版权归属原作者或所属公司所有。其他个人.媒体.公司或其他网站对本站发布作品如需使用,必须事先与原作者或混沌资源联系。
   10、 如本站转载涉及版权问题,您认为内容侵犯了您的权益,请立即通知本站并提供相应的充分的证据。本站在核实后将及时予与删除并致以最深的歉意!同时本站保留全部修改、解释、更新本声明的权利。
   11、 法律法规规定的其它有关免责规定。
   12、 凡以任何方式登陆本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。
13、本站发布的所有资源(包括动漫作品.文字.图片.FLASH.动画及各种软件工具)只为本地单机测试用途,请勿用于商业途径或非法使用,否则后果自负!请下载后24小时内删除!
14、本站管理员和版主有权不事先通知发贴者而删除本文
15、关于资源链接失效问题,查看帖子主题是否有编号,有编号的帖子本站(123网盘)均有保留,无编号的一旦失效那就石沉大海了
特别申明:一切网民在进入混沌资源主页及各层页面时已经仔细看过本条款并完全同意。敬请谅解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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