91引擎爱好者论坛

 找回密码
 立即注册
热搜: 91引擎
查看: 7155|回复: 52

【我又来了】直接就能用的屏蔽功能,轻松的进行自定义...

[复制链接]

该用户从未签到

0

主题

0

帖子

258

积分

中级会员

Rank: 3Rank: 3

积分
258
发表于 2021-12-16 11:13:46 | 显示全部楼层 |阅读模式
本帖最后由 独家记忆 于 2022-7-1 10:20 编辑


这次给大家分享1个实用的屏蔽功能,GM们可以自定义自己的版本要屏蔽的内容。
我不是搞教学的啊,就是觉得分享心得挺有意思的,可以给大家开阔开阔思路什么的,我也没啥压力,有空了就写写,没空了就干自己的事。希望大家都能积极的分享吧,我这代码也许写的还不够健壮,毕竟不做研发都快5年了,如果大家改进了,也可以把改进版的发到论坛来啊!
接下来开始介绍脚本吧!TS文件的存放关系对应的import引入要正确,以及需要在Main里引用,这块我就不多说了
(1)首先在ManageNpc.ts文件里的GameLib.onScriptEngineInit函数内,调用PingbiUnit.Init(),这块就等同于屏蔽配置的初始化。在init里,自己来配置要屏蔽的模块。模块分为主模块和子模块,比如图中:“超级装备爆出”就是主模块,“创世纪Super☆仙装备”就是子模块。相关的其他配置参数,都写在图里了,可以自己看。
这里,就是GM需要设置的地方
(2)PingbiNpc.ts的别的内容,都可以不用管。具体的处理逻辑在PingbiUnit这里。
Main、BackToMain函数:这2是一样的,一个直接打开NPC调用main。一个是从子菜单返回主页面触发的。
MainPingbi函数:1级页面,每个item的点击调用,依然不用管。
ChildPingbi函数:2级页面,每个item的点击调用,依然不用管。
(3)PingbiUnit.ts,这是业务处理模块。其实也不用管,如果有兴趣的,可以研究一下。PingbiUnit里,调用了之前分享的Gravity.ts和TextUtil.ts这2个工具类,有兴趣的,可以到之前的这个链接里去学习下怎么使用的。http://www.91m2.com/index.php?c=read&id=82&page=1以后关于NPC页面排版的,我可能会一直用到这2个工具类
(4)原理介绍:首先根据init中,GM配置的内容,产生1级页面。点击1级页面后,则跳转到实际要设置的2级页面这里的,在2级页面内进行设置。比如点了“系统消息” - "竞技场杀人"屏蔽,系统会自动的调用play.varBoolean("系统消息-竞技场杀人").asBoolean = true 或 =false,以此来自动的保存配置。
(5)最终调用层,这是最为关键的一步
自己在实际要给用户发送消息的地方,不要直接player.sendmessage,要调用PingbiUnit.SendMessage【实际这个函数就是对sendmessage封装了一层而已,最终还是调用的player.sendmessage】,这个时候系统就可以进行智能的进行判断了。
PingbiUnit.SendMessage有5个参数:
1、player:必填,不做多说了。
2、msg:必填,不做多说了
3、isPingbi:必填,是否屏蔽。当GM很明确某个消息用户是不能开启/关闭,则传false,避免无必要的逻辑判断
4、mainkind:非必填,1级分类,就是上面写的“低级装备爆出”
5、childKind:非必填,2级分类,就是上面写的“30级装备”
以后所有的sendMessage都可以走这个方法,以便进行全局的控制。至于,还有别的发送什么centerMessage之类的方法,根据这个方法,自己再去封装吧,封装思路是一样的
举例(最常用的垃圾装备屏蔽):物品爆出,比如裁决是30级装备,井中月是20级装备。
1、GM需要初始化
        list.push(new PingbiUnit.Messsage("低级装备爆出","20级装备"))
        list.push(new PingbiUnit.Messsage("低级装备爆出","30级装备"))
2、在实际爆出的那里,判断爆出的装备。如果是裁决,则用Gamelib.Player[I]获得所有玩家的player对象,然后调用 PingbiUnit.SendMessage(player,"裁决从XXXX地方爆了出来,快去抢,",true,"低级装备爆出","30级装备")。
如果有人开启了30级装备屏蔽,则就看不到这个消息了。



【下载地址】:
index.php?c=app&a=puyuetianeditor:index&s=showfile&id=74

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

该用户从未签到

0

主题

0

帖子

187

积分

注册会员

Rank: 2

积分
187
发表于 2021-12-16 11:14:54 | 显示全部楼层
1111111111111111111
回复

使用道具 举报

  • TA的每日心情

    2024-1-14 21:03
  • 签到天数: 8 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    1

    主题

    9

    帖子

    101

    积分

    注册会员

    Rank: 2

    积分
    101
    发表于 2021-12-16 11:15:48 | 显示全部楼层
    瞅瞅是嘛
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    0

    帖子

    6

    积分

    新手上路

    Rank: 1

    积分
    6
    发表于 2021-12-16 11:16:24 | 显示全部楼层
    11111
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    0

    帖子

    4

    积分

    新手上路

    Rank: 1

    积分
    4
    发表于 2021-12-16 11:16:34 | 显示全部楼层
    划船不用浆,全靠浪!
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    0

    帖子

    139

    积分

    注册会员

    Rank: 2

    积分
    139
    发表于 2021-12-16 11:16:50 | 显示全部楼层
    划船不用浆,全靠浪!
    回复

    使用道具 举报

  • TA的每日心情

    5 小时前
  • 签到天数: 592 天

    连续签到: 14 天

    [LV.9]以坛为家II

    24

    主题

    621

    帖子

    9308

    积分

    论坛元老

    Rank: 8Rank: 8

    积分
    9308
    发表于 2021-12-16 11:18:45 | 显示全部楼层
    9ce1
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    0

    帖子

    2

    积分

    新手上路

    Rank: 1

    积分
    2
    发表于 2021-12-16 11:51:04 | 显示全部楼层
    过来学习下
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    0

    帖子

    54

    积分

    注册会员

    Rank: 2

    积分
    54
    发表于 2021-12-16 12:06:39 | 显示全部楼层
    过来学习下
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2022-9-6 09:21
  • 签到天数: 10 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    1

    主题

    11

    帖子

    181

    积分

    注册会员

    Rank: 2

    积分
    181
    发表于 2021-12-16 12:25:48 | 显示全部楼层
    dfagdfgafg
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|妖孽游戏素材网|91引擎爱好者

    GMT+8, 2024-3-29 13:58 , Processed in 0.098894 second(s), 26 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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