🍎Sourcepawn脚本入门(二)命令与事件监听
(控制台)命令是常用的插件形式,eg. noclip …等都是常用的命令,在游戏中使用也很容易,souremod可以注册自己的命令。
事件的监听则需要考虑到不同的起源游戏支持的事件不同,具体可以参考如下:Game Events (Source) - AlliedModders Wiki (alliedmods.net)
1.注册控制台命令
使用RegConsoleCmd注册控制台命令
#include <sdkhooks>
#include <sdktools>
#include <sourcemod>
#pragma newdecls required
#pragma semicolon 1
public Plugin myinfo =
{
name = "pluginOne",
author = "",
description = "",
version = "1.0.0",
url = "https://github.com//pluginOne"
};
public void OnPluginStart()
{
PrintToChatAll("这是第一个测试");
//注册控制台命令
RegConsoleCmd("sm_sayhellow",SayHellowToAll,"这是一个测试测试的控制台命令");
}
//命令第二个参数为CallBack函数,参数固定为两个int变量(名字随便起)
//但分别代表客服端id和该命令参数的个数
public Action SayHellowToAll(int client,int args)
{
//向所有人发送信息
PrintToChatAll("WDNMD");
//Plugin_Handled是Action的返回值,代表执行的结果
//如果执行成功则为Plugin_Handled,失败则可以为Plugin_Error等
//当然也可以不返回,但不利于调试<