• 👋 好久不见,老朋友,序序新:964014008

待完善 [管理/娱乐]OfflineCommand —— 给离线玩家设置命令(奖励/惩罚)[2.1]

状态
不接受进一步回复。
英文名称
OfflineCommand
中文名称
离线指令
语言支持
  1. 简体中文
下载地址
本帖
原帖地址
本帖
开源地址

Merlin_

Lv2
LV
0
 
IP属地
未知
2020/03/16
13
6
勋章
1
  • · 发布于未知
OfflineCommand
离线指令

1.简介
顾名思义,给离线用户添加指令插件bug
应用情景
●给玩家奖励物品
●给RPG的玩家加经验
●开挂者肇事逃逸,confuse,rocket,kill,kick 它
2.介绍
其实这只是我的机器人插件的一个功能,,,准备集成在一起,但是感觉扩展性不错,所以就单独拿了出来[向导_顽皮]
而且这是本人初学SQL的练手,所以可能(一定)(很多)BUG(代码写的烂就不开源了)[向导_叹气]
因为我不会找所有指令的玩家参数位置(理直气壮)所以只能各位自行添加,反正预置了TShock大部分原版指令
不过好处是除了预置的TShock原版指令,还可以自行添加别的插件的指令
(好了,废话终于结束了)
3.权限
权限:offcmd (没错,就一条)
4.指令
/offcmd cmdadd <指令名> <玩家参数位置>
添加一种离线指令类型,玩家参数就是指令的执行对象。
/offcmd cmddel <指令名>
删除一种离线指令类型,和上面相反
/offcmd cmdlist
列出所有离线指令类型
/offcmd list <玩家>
列出这个玩家下所有离线指令
/offcmd del <指令>
删除某个玩家下的一个离线指令(具体见下楼),指令记得带 "/"
/offcmd all
打开应用到所有用户模式,此时all可以替代玩家参数,代表所有的玩家
/offcmd notall
关闭应用到所有用户模式,此时all仅代表一个叫all的玩家
5.名词解释
<指令>完整的指令(可输入控制台的那种)(当/offcmd del <指令>时,本插件可以通过该指令中的<玩家参数>查询到相关玩家)
/kill 玩家 => /kill 玩家
/give 1 玩家 => /give 1 玩家

<指令名>指令开头去掉"/"
/kill 玩家 => kill
/give 1 玩家 => give

<玩家参数位置>:从左到右数,玩家在第几段,<玩家参数位置>就是几
/kill 玩家 => 2
/give 1 玩家 => 3
6.示范
下面是应用举例(id= 71,72,73,74的是什么)
pic.png
强烈暗示awa
7.效果
玩家上线效果因为怕指令全部执行会有问题,所以设置了2s间隔
Screenshot_2020-04-30-14-54-40-056_com.and.games5.jpg
Screenshot_2020-04-30-14-54-47-283_com.and.games5.jpg
强烈暗示++
8.尾言
就到这里吧,有什么问题(BUG)可以下面留言!
未经本人允许,禁止转载与搬运
9.部分问题(求教大佬)
为什么TSplayer.Dead判断不了有没有死啊。。。我执行指令时有加判断的,死了不执行,但结果还是执行了。。(没法实现我想循环kill掉某人的想法了)
●另外怎么实例化(或者模拟)一个玩家,以玩家身份执行指令awa
 

附件

  • OfflineCommand离线指令.dll
    17.5 KB · 查看: 33
最后编辑:

Merlin_

Lv2
LV
0
 
IP属地
未知
2020/03/16
13
6
勋章
1
  • · 发布于未知
注:4.指令、第五条/offcmd del <指令>
不是列出,是删除(复制粘贴太快了没改)
 

TheLastPrism

Lv6
管理成员
版主
创意家
LV
0
 
IP属地
湖北省
2019/10/25
1,028
341
勋章
5
  • · 发布于未知
解答:
模拟玩家执行命令Commands.HandleCommand(TSPlayer.Server,"指令");
另外一个应该可以用TSPlayer.TPlayer.active(瞎猜的,没用别找我)

另外:
你介绍用太多颜色了
 

Merlin_

Lv2
LV
0
 
IP属地
未知
2020/03/16
13
6
勋章
1
  • · 发布于未知
TSPlayer.Server是以服务器执行指令(我想试试用玩家身份,因为管理之间的ban,kick之类是无效的,而我现在用服务器执行指令就没法管理到这些细节[向导_叹气]
TSPlayer.TPlayer.active似乎是在线之类的(跟死亡似乎没关系,这个试过。。[向导_困惑](难受
 

Bean_Paste

Lv6
管理成员
LV
0
 
IP属地
未知
2018/07/31
553
125
勋章
7
  • · 发布于未知
貌似不错的亚子,顶顶
 

TheLastPrism

Lv6
管理成员
版主
创意家
LV
0
 
IP属地
湖北省
2019/10/25
1,028
341
勋章
5
  • · 发布于未知
TSPlayer.Server是以服务器执行指令(我想试试用玩家身份,因为管理之间的ban,kick之类是无效的,而我现在用服务器执行指令就没法管理到这些细节[向导_叹气]
TSPlayer.TPlayer.active似乎是在线之类的(跟死亡似乎没关系,这个试过。。[向导_困惑](难受
玩家身份的话那就用User然后手动验证权限吧,要不然执行指令的时候发起指令的玩家必须在线,只有User是离线的,然后手动判断权限,如果权限通过就让TSPlayer.Server执行,不通过不执行就好了
 

1221

Lv2
LV
0
 
IP属地
未知
2020/04/15
9
2
勋章
1
  • · 发布于未知
请问可以循环kick掉某人吗?有的人ban不掉,ban=kick,就很难搞
 

Merlin_

Lv2
LV
0
 
IP属地
未知
2020/03/16
13
6
勋章
1
  • · 发布于未知
请问可以循环kick掉某人吗?有的人ban不掉,ban=kick,就很难搞
理论上没问题,你也可以用大量的kick来实现毕竟不在线指令不执行(以后更新会再加一个永久循环指令awa)
 
状态
不接受进一步回复。
  • 标签
    tshockpe tshockpe插件 指令 离线指令
  • 顶部