关于指定全体玩家问题

Home Home
引用 | 编辑 casper1315
2016-07-18 20:57
楼主
推文 x0
我想问这段句子到底怎么修改 才能变成全体复活


感谢~


第二问题~
要怎么让每场回合开始检测玩家的血量
以及获取玩家目前的血量



//复活全体
public cmd_spawn_all(id, ra, cid)
{
if (!cmd_access(id, ra, cid, 1))
 return PLUGIN_HANDLED;


 new name[32];
 new system_msg[200];
 get_user_name(id, name, 31);
 format(system_msg, 150, "^x04[等级系统]^x03管理员 %s 复活 全体 ", name);
 client_color(0, id, system_msg);
 give_item(id,"weapon_knife");
 spawn(id);
 return PLUGIN_HANDLED;
 }




//获取血量&护甲

public logevent_round_start()
{
set_user_health(id, 100);
set_user_armor(id, 100);
}

献花 x0
引用 | 编辑 z2352671213
2016-07-21 19:58
1楼
  
第二问解法:
public logevent_round_start()
{
  new health[33] //health[33]和armor[33]和armortype[33]这三个数组可以声明在public外面的区域,使其成为全局变数,能够被其他函数所调用
//  new armor[33]//把注释标记去除可以实现获取玩家的护甲
//  new CsArmorType:ArmorType[33] = {2,...}
  for(new id = 1; id < get_playersnum(1);id++)
  {
    health[id] = get _user_health(id) //获取玩家的血量并保存到数组health中
//    armor[id] = cs_get_user_armor(id, ArmorType)  //获取玩家的护甲值并保存到armor中,并且把护甲类型保存到armortype中
    }
}

第一问解法:

public cmd_spawn_all(id, ra, cid)
{
  if (!cmd_access(id, ra, cid, 1))
      return PLUGIN_HANDLED;


  new name[32];
  new system_msg[200];
  get_user_name(id, name, 31);
  format(system_msg, 150, "^x04[等级系统]^x03管理员 %s 复活 全体 ", name);
  client_color(0, id, system_msg);

  for(new player = 1;player<get_playersnum(1);player++)
  {
      if(!is_user_alive(player))
      {
        spawn(player);
        give_item(player,"weapon_knife");
      }
  }
  return PLUGIN_HANDLED;
}



表情     希望对你有所帮助

献花 x0