【插件编写教程】如何为插件添加快捷键功能

茶叶盒 一级用户组 2022-8-6 1904

功能需求:

看见群里有玩家看了学长的帖子后不知道如何运用快捷键来运行插件功能,这篇文章来给大家实战演习一下。

学长方法贴:【菜单开发】按下F3打开菜单

方法:

我们先看方法后看讲解:

1、首先我们拿到一个插件:

(例子)

这是一个简单的插件

2、我们查找csgo自带的支持的指令,一般是csgo/cfg/config_default.cfg里

PS:我们只是演示使用,里面的指令我们随机使用一个,正常使用的请用没反应,或不影响、不常用的指令。

我们使用"F3" "autobuy" 指令

3、回到插件,新增一个指令以及方法,指令用autobuy

方法内用ClientCommand函数,该函数的意思是客户端运行指令

4、编译插件

5、在游戏中按下F3就会给全体玩家发送 “打印这句话到聊天框”了

插件原理:

接下来我来讲解全过程


首先,我们的目标是所有人都按下这个按钮来实现我们的需求,那么这个按钮就必须人人拥有,目前是没有办法自动生成按钮的,只有我们使用现有的按钮,那么现有的按钮我们就用游戏自带的按钮,config_default.cfg文件内的指令是游戏默认自带的指令,在你开启游戏后就会在游戏内层自动存入。

知道了这个原理后我们就可以一步一步的实现我们的需求

我们先选择一个人人都有的按钮,上面的教程我用的是autobuy,你可以自己选择其他的。

理论上任何插件都可以做出修改,只要你的插件可以使用指令完成功能。

原理很简单:我们创建一个新的指令来运行原本指令

我们sm_shuaping指令调用的是demo方法,那么我们创建一个新的指令autobuy ,该指令游戏内已存在,且我们绑定的按钮是F3,那么我们按下F3后会自动运行autobuy指令(就算你不按下F3,你在控制台输入autobuy也可以实现相同的作用,其他指令也是,其他指令指的是config_default.cfg文件内的指令,这是游戏内置的功能,其原理也是:玩家按下F3{或其他按钮}会自动在控制台发送绑定的指令)

其中最关键的是调用ClientCommand函数,这个函数可以给客户端调用指令

PS:(当然,毕竟是默认的按钮,已经绑定了一些功能,如果我们使用有可能会造成一些冲突,这些请自己找办法,我只是教方法。)


讲解开始:

首先我们的初始插件是这样的

当玩家输入!shuaping后会自动发送"打印这句话到聊天框"   这个就是这个插件的全过程

那么我们的需求就是通过按下某个按键来运行这个插件的全过程

我们保持原插件不动,在原有指令

RegConsoleCmd("sm_shuaping", demo)

的下面新加一个指令

RegConsoleCmd("autobuy", xinfangfa)

这时候我们新的指令并没有方法可以调用,我们创建一个方法

最关键的,我们需要用到一个函数

该函数的作用请看上文

注意:我们新增的指令在游戏内不用输入,因为我们已经有按键绑定了,按下即可自动输入

我们用ClientCommand函数使调用该方法(xinfangfa)的玩家运行一个指令,这个指令就是原插件的指令sm_shuaping

然后玩家的控制台就会自动输入sm_shuaping指令,因为sm_shuaping指令调用到的是demo方法,而demo方法则是运行一个打印信息给全体玩家的函数

最后我们的按下快捷键你就会在聊天框看见这句话了

再次PS:(当然,毕竟是默认的按钮,已经绑定了一些功能,如果我们使用有可能会造成一些冲突,这些请自己找办法,我只是教方法。)

 

转载请标注原作者及地址


CSGO插件分享-申明 1、本网站名称:CSGO插件分享-中文站  网址:https://bbs.csgocn.net
2、本站的宗旨在于为CSGO玩家提供一个插件分享的中文资源平台,多数插件来源于SourceMod论坛,并配以中文介绍和安装教程。
3、欢迎有能力的朋友共享有趣的CSGO插件资源。
4、本站资源大多为百度网盘,如发现链接失效,可以点: 这里进行反馈,我们会第一时间更新。
最新回复 (12)
返回