搜索
查看: 2861|回复: 4

请问如何判断回合时间结束

[复制链接]
发表于 2008-10-29 20:25:42 | 显示全部楼层 |阅读模式 来自 中国–广东–深圳
例如一回合3分钟,当时间到0:00时,怎么获取这个事件呢?
本来正常结束是警察胜利,我想获取这个事件,改成全部警察和匪徒都处死。
发表于 2008-10-29 20:42:33 | 显示全部楼层 来自 中国–广东–中山

回复: 请问如何判断回合时间结束

开局的时候开始倒数,时间为静止时间+回合时间,倒数完毕之后如果还没有结束,就把所有活着的人处死。但要注意如果回合提前结束就要提前结束倒数。
回复

使用道具 举报

 楼主| 发表于 2008-10-29 21:10:51 | 显示全部楼层 来自 中国–广东–深圳

回复: 请问如何判断回合时间结束

Post by apocalyptic
开局的时候开始倒数,时间为静止时间+回合时间,倒数完毕之后如果还没有结束,就把所有活着的人处死。但要注意如果回合提前结束就要提前结束倒数。
这个我之前试过,但出现不准的情况,而且更糟糕的是一开局会自动处死所有人的bug
后来我提取丧尸插件的判断事件,但不知道为什么不起作用
register_message(get_user_msgid("TextMsg"),  "msg_textmsg")

public msg_textmsg(msgid, dest, id)
{
if(get_msg_arg_int(1) != 4)
  return PLUGIN_CONTINUE

static txtmsg[25]
get_msg_arg_string(2, txtmsg, 24)

if(equal(txtmsg[1], "Game_bomb_drop"))
  return PLUGIN_HANDLED
else if(equal(txtmsg[1], "Terrorists_Win"))
else if(equal(txtmsg[1], "CTs_Win"))
else if(equal(txtmsg[1], "Target_Saved"))
{
  new players[32], playersnum
  get_players(players,playersnum,"a")
  for(new a = 0; a < playersnum; ++a) user_kill(players[a])
  if (playersnum) {
   set_hudmessage(245, 229, 9, -1.0, -1.0, 0, 6.0, 3.0, 1.1, 0.0, 3)
   show_hudmessage(0, "时间结束,所有人必需死亡")
  }
}

return PLUGIN_CONTINUE
}
回复

使用道具 举报

发表于 2008-10-30 01:31:40 | 显示全部楼层 来自 中国–福建–漳州

回复: 请问如何判断回合时间结束

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. public plugin_init()
  4. {
  5.     register_plugin("Kill on Round End", "1.0", "Rulzy");
  6.     register_logevent("eEndRound", 2, "0=World triggered", "1=Round_End");
  7. }
  8. public eEndRound()
  9. {
  10.     new maxplayers = get_maxplayers();
  11.     for(new i=1;i<=maxplayers;i++)
  12.     {
  13.         if(!is_user_connected(i)) continue;
  14.         user_kill(i);
  15.     }
  16.     set_hudmessage(245, 229, 9, -1.0, -1.0, 0, 6.0, 3.0, 1.1, 0.0, 3);
  17.     show_hudmessage(0, "时间结束,所有人必须死亡");
  18. }
复制代码
回复

使用道具 举报

 楼主| 发表于 2008-10-30 01:43:43 | 显示全部楼层 来自 中国–广东–深圳

回复: 请问如何判断回合时间结束

谢谢Rulzy大哥,我明天试试。
回复

使用道具 举报

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

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