搜索
查看: 2905|回复: 9

求一个立即暂停CS服务器游戏的代码,谢谢。

[复制链接]
发表于 2008-3-6 02:32:42 | 显示全部楼层 |阅读模式 来自 中国–广西–柳州–城中区
求一个立即暂停CS服务器游戏的代码,最好能附上又立即开始的代码,找了好多个插件都没有相关的代码,所以才发贴求助,谢谢。
发表于 2008-3-6 10:59:39 | 显示全部楼层 来自 中国–广东–中山

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

在服务器控制台输入pause就行啦,具体写法不用说了吧,楼主是聪明人。
回复

使用道具 举报

发表于 2008-3-6 12:41:42 | 显示全部楼层 来自 中国–广东–深圳–罗湖区

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

CS本来就带的功能,rcon pause:rolleyes:
回复

使用道具 举报

 楼主| 发表于 2008-3-6 15:58:33 | 显示全部楼层 来自 中国–广西–柳州–柳北区

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

谢谢两位,我的意思是在插件里运行,控制台的命令我知道,试用server_cmd ("pause 0")和1但没用效果。
回复

使用道具 举报

发表于 2008-3-6 19:21:54 | 显示全部楼层 来自 中国–广东–中山

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

server_cmd ("pause")
即可
回复

使用道具 举报

发表于 2008-3-6 19:38:31 | 显示全部楼层 来自 中国–福建–漳州

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

amx_pause - pause or unpause the game

需要拥有的权限为 ADMIN_CVAR(即 g 权限)

这是AMXX自带的功能,在管理员菜单里就有,“服务器命令->Pause”
回复

使用道具 举报

 楼主| 发表于 2008-3-6 22:17:13 | 显示全部楼层 来自 中国–广西–柳州–柳北区

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

谢谢,用server_cmd ("pause")测试但还是无效果,我做这个插件的用途是每局警察或土匪胜利就暂停一秒,我注意到一般服务器自动踢人就是开局踢,所以才想到每局结束暂停让数据缓冲一下看能解决不,在admin_cmd.sma里找到这样一段,代码不是很懂,请问哪句才是关键暂停呢?Thank You。
public cmdPause(id, level, cid)
{
if (!cmd_access(id, level, cid, 1))
  return PLUGIN_HANDLED

new authid[32], name[32], slayer = id

get_user_authid(id, authid, 31)
get_user_name(id, name, 31)
g_pausAble = get_cvar_float("pausable")

if (!slayer)
  slayer = find_player("h")

if (!slayer)
{
  console_print(id, "[AMXX] %L", id, "UNABLE_PAUSE")
  return PLUGIN_HANDLED
}
set_cvar_float("pausable", 1.0)
client_cmd(slayer, "pause;pauseAck")

log_amx("Cmd: ^"%s<%d><%s><>^" %s server", name, get_user_userid(id), authid, g_Paused ? "unpause" : "pause")

new pausing[16]

format(pausing, 15, "%L", id, g_Paused ? "UNPAUSING" : "PAUSING")
console_print(id, "[AMXX] %L", id, pausing)
new activity = get_cvar_num("amx_show_activity")
if (activity != 0)
{
  new players[32], pnum, msg[128], len
  get_players(players, pnum, "c")
  
  for (new i = 0; i < pnum; i++)
  {
   len = format(msg, 127, "%L", players, "ADMIN")
   
   if (activity == 1)
    len += copy(msg[len], 127-len, ":")
   else
    len += format(msg[len], 127-len, " %s: ", name)
   
   format(msg[len], 127-len, "%L", players, g_Paused ? "UNPAUSE" : "PAUSE")
   client_print(players, print_chat, "%s server", msg)
  }
}
g_pauseCon = id

return PLUGIN_HANDLED
}
回复

使用道具 举报

发表于 2008-3-7 12:02:55 | 显示全部楼层 来自 中国–福建–漳州

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

你执行 server_cmd("amx_pause") 就行了。第一次执行是暂停,再执行一次是继续,以此重复。
回复

使用道具 举报

 楼主| 发表于 2008-3-7 15:59:49 | 显示全部楼层 来自 中国–广西–柳州–柳北区

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

十分谢谢,测试成功。:cry:,又遇到一个麻烦暂停之后就永久暂停了,后面的task没运行了,请看这段代码正确吗?
public Function(id)
{
new arg[16]
if(equal(arg,"CT"))
{
set_task(1.0, "pausable22")
server_cmd("amx_pause")
}else{
set_task(1.0, "pausable22")
server_cmd("amx_pause")
}
}
public pausable22(id)
{
server_cmd("amx_pause")
}
回复

使用道具 举报

 楼主| 发表于 2008-3-8 21:33:42 | 显示全部楼层 来自 中国–广西–梧州

回复: 求一个立即暂停CS服务器游戏的代码,谢谢。

CS服务器老自动踢人的来顶一个啊:cold:
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

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