搜索
查看: 2896|回复: 21

自动入包过滤脚本(原创)

[复制链接]
发表于 2021-3-19 14:00:22 | 显示全部楼层 |阅读模式
提示: 该帖被管理员或版主屏蔽
发表于 2021-3-19 14:04:15 | 显示全部楼层
6666666666666666666666666
发表于 2021-3-19 14:08:19 | 显示全部楼层
支持正版。
发表于 2021-3-19 14:10:13 | 显示全部楼层
Lua学习群就厉害了
发表于 2021-3-19 14:10:40 | 显示全部楼层
字数太多不看了,下就完了
发表于 2021-3-19 14:24:03 | 显示全部楼层
支持著作版本
发表于 2021-3-19 15:06:00 | 显示全部楼层
--此脚本和论坛其它版本的相比,使用的表保存装备名字数据到内存,
--lua加载的时候只读取一次文件,减少了服务对IO的读取占用
--此程度非最高效率算法,运行效率可以打倒市面上绝大部分的版本
--更优算法为商业机密

下来看看有多叼

个人建议,不要用太多的循环,从效率上来说吧,lua循环对服务端的影响不止一点点。可以自己试试循环1到3000,角色完全静止3秒。所以单纯的从效率上来说,尽量少用循环。这只是个人建议,不是喷
以下为个人自用过滤入包LUA,可以测试对比一下效率
function DropItemToBag(actor, killActor, item)--怪死亡爆物品时,启用直接进玩家包前回调
local Quest = killActor:getQuest(2)---标识[002]
        if Quest == 0 then
                local WName = s.share.checkListText("..\\LuaScripts\\System\\Config\\入包配置\\入包过滤列表.txt", item:getName() ,0)
                local Pcmap = s.share.checkListText("..\\LuaScripts\\System\\Config\\入包配置\\入包排除地图.txt", killActor:getMapName(),0)
                local Pcmob = s.share.checkListText("..\\LuaScripts\\System\\Config\\入包配置\\入包排除怪物.txt", actor:getCharName(),0)
                if (WName == 0) and (Pcmap == 0) and (Pcmob == 0) then
                return true
                end
        end
return false
end

简单实现入包物品过滤,入包地图过滤,入包怪物过滤。功能更多,效率更优
本人LUA初学者,如果有不足的地方望多指教
 楼主| 发表于 2021-3-19 15:11:38 | 显示全部楼层
zj5577117 发表于 2021-3-19 15:06
--此脚本和论坛其它版本的相比,使用的表保存装备名字数据到内存,
--lua加载的时候只读取一次文件,减少了 ...

首先你发的掉落一件物品,就会执行一次检测文本的命令,读取文件的效率和读取存的效率应该想差很大吧
 楼主| 发表于 2021-3-19 15:13:40 | 显示全部楼层
zj5577117 发表于 2021-3-19 15:06
--此脚本和论坛其它版本的相比,使用的表保存装备名字数据到内存,
--lua加载的时候只读取一次文件,减少了 ...

我优化的方法是放到表,即内存里,脚本的功能是让玩家自由设置入包的物品,和你发的脚本功能不一样
发表于 2021-3-19 15:16:45 | 显示全部楼层
就看见撒化肥的空间还是发货时的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|HGEM2论坛

GMT+8, 2024-11-22 08:49 , Processed in 0.487982 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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