R版主能否帮忙写个小插件
插件功能很简单进入服务器的玩家禁止选择队伍。由服务器自动分配到少人的队
OP有免疫功能(可在AMXX。CFG里设置开关和免疫的权限)
以前在DT找的那些插件都会和死亡重生插件冲突
导致进入服务器不能自动在改局重生
谢谢
回复: R版主能否帮忙写个小插件
#include <amxmodx>#include <amxmisc>
public plugin_init()
{
register_plugin("Can't Change Team", "1.0", "Rulzy");
register_menucmd(-2,(1<<0)|(1<<1)|(1<<4)|(1<<5),"team_select")
register_menucmd(register_menuid("Team_Select", 1),(1<<0)|(1<<1)|(1<<4)|(1<<5),"team_select")
}
public team_select(id, key)
{
//这里的key对应选择队伍时的菜单项,但key值小1。
//即key为0指选择菜单项1(选择T),key为1指选择菜单项2(选择CT),key为2指选择菜单项3(选择VIP),
//即key为4指选择菜单项5(自动选择),key为5指选择菜单项6(选择观察员)
//如果阻止,return PLUGIN_HANDLED;否则 return PLUGIN_CONTINUE
//如果有免疫权限,或是选择”VIP“、“自动选择”、“观察员”、“退出”则允许此菜单项执行
if(get_user_flags(id)&ADMIN_IMMUNITY || key==2 || key==4 || key==5 || key==9)
return PLUGIN_CONTINUE;
client_print(id, print_center, "本服务器禁止手动选择队伍");
client_cmd(id, "chooseteam");
return PLUGIN_HANDLED;
}
public client_command(id)
{
new command
read_argv(0, command, 31)
//如果玩家使用 jointeam 命令来换队伍
//使用 jointeam 换队伍,后面的参数为数字,跟菜单项上的数字一样
if(equali(command, "jointeam"))
{
new snum
read_argv(1, snum, 2)
return team_select(id, str_to_num(snum)-1) //注意要减1
}
return PLUGIN_CONTINUE
}
用这个,只能选择“5. 自动选择”,从而达到禁止选择队伍的功能。
回复: R版主能否帮忙写个小插件
多谢R版主的全面细致的指点。。。。回复: R版主能否帮忙写个小插件
哎R斑竹就是凶啊。。。。支持回复: R版主能否帮忙写个小插件
最好再加入自动传他到人少的队伍的功能................那更好....回复: R版主能否帮忙写个小插件
我也是这么想的。这样就更方便了回复: R版主能否帮忙写个小插件
5. 自动选择 功能是就可以自动转送玩家到人数较少的那边...或者可以自己来定义都行
new Players
new CTplayerCount, TplayerCount
get_players(Players, CTplayerCount, "e","CT")
get_players(Players, TplayerCount, "e","T")
if(TplayerCount < CTplayerCount)
{
cs_set_user_team(id,CS_TEAM_T)
}
else if(TplayerCount > CTplayerCount)
{
cs_set_user_team(id,CS_TEAM_CT)
}
else
{
cs_set_user_team(id, random_num(1, 2));
}
回复: R版主能否帮忙写个小插件
Post by 心静如水最好再加入自动传他到人少的队伍的功能................那更好.... 没必要吧?那还给不给别人M6啦?
回复: R版主能否帮忙写个小插件
如果确实需要,在玩家进入游戏后,执行命令“jointeam 5”就行了。public client_putinserver(id)
{
set_task(0.1, "delay_jointeam", id);
}
public delay_jointeam(id)
{
if(is_user_connected(id))
engclient_cmd(id, "jointeam", "5");
}