Заказать игровой сервер Контакты (заказать плагин/исправить ошибки/другое) Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » 10 игроков
10 игроков
Beelzebub Дата: Суббота, 06.10.2012, 15:06:06 | Сообщение # 1
Сообщений: 202
Репутация: 13 [ +/- ]
Как сделать так когда на сервере 10 человек всех кидало в спектаторы? :)

там что то с таймером и свитч связано, но нужно еще узнать сколько человек. Это мне не дано :(

Добавлено (06.10.2012, 15:06:06)
---------------------------------------------

Code
#include <sourcemod>

#pragma semicolon 1

#define CS_TEAM_SPEC 1

public Plugin:myinfo=
{
  name="Autoswitch",
  author="Beelzebub",
  version="1.0",
}

public OnPluginStart()
{
  HookEvent("round_start", Event_RoundStart);
}

public Action:Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{  
      new client = GetClientOfUserId(GetEventInt(event, "userid"));
         new toteam = GetEventInt(event, "toteam");
         new count = GetClientCount(false);
    
         if(count >= 10) {
   if(toteam == CS_TEAM_SPEC) {
    if (IsPlayerAlive(client))
    ChangeClientTeam(client, CS_TEAM_SPEC);
    }
  }
}


Вот кое что набросал.
Может поможете :)?


Сообщение отредактировал Beelzebub - Суббота, 06.10.2012, 14:36:48
 
Naykon Дата: Суббота, 06.10.2012, 15:21:52 | Сообщение # 2
Сообщений: 439
Репутация: -4 [ +/- ]
Code
#include <sourcemod>
#include <cstrike>
#include <sdktools>
#include <sdktools_entoutput>
#include <sdktools_functions>  
#include <sdkhooks>  

new Players;

public OnPluginStart()
{
   HookEvent("round_start", Event_RoundStart);
}

public Action:Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{   
  Players = 0;
  for (new i = 1; i <= MaxClients; i++)
  {
   if (IsClientInGame(i)) Players++;
  }
  PrintToChatAll("На сервере %d человек", Players);
  if (Players >= 10)
  {
   PrintToChatAll("Набралось %d человек", Players);
   for (new i = 1; i <= MaxClients; i++)
   {
    if (IsClientInGame(i))
    {
     CS_SwitchTeam(i, 1);
     PrintToChatAll("Все %d человек в Стекторах", Players);
    }
   }
  }
}


держи.

У мну чет не получается с отталкиванием(( Если знаешь как решить помоги..(((
 
Beelzebub Дата: Суббота, 06.10.2012, 15:59:42 | Сообщение # 3
Сообщений: 202
Репутация: 13 [ +/- ]
Quote (Naykon)
У мну чет не получается с отталкиванием(( Если знаешь как решить помоги..(((


Ок посмотрим что можно сделать.
 
Naykon Дата: Суббота, 06.10.2012, 16:31:24 | Сообщение # 4
Сообщений: 439
Репутация: -4 [ +/- ]
Code
    decl Float:EyeAngles[3];
     GetClientEyeAngles(client, EyeAngles);


Так мы плучаем куда клиент смотрит чтоб его откинуть назад.. в моем случае не подойдет.((
Как можно получить куда попадает пуля чтоб его откинуть вдоль возможной траектории полета пули если бы не попадание...
Кароче толкать его от кигрока который в него стреляет!
 
Beelzebub Дата: Суббота, 06.10.2012, 23:26:31 | Сообщение # 5
Сообщений: 202
Репутация: 13 [ +/- ]
Quote (Naykon)
Так мы плучаем куда клиент смотрит чтоб его откинуть назад.. в моем случае не подойдет.((
Как можно получить куда попадает пуля чтоб его откинуть вдоль возможной траектории полета пули если бы не попадание...
Кароче толкать его от кигрока который в него стреляет!


С таким не сталкивался :)
по спрашивай на hlmod там знают ответ, но там жуткие тролли...

Добавлено (06.10.2012, 23:26:31)
---------------------------------------------
Вот еще как можно, если кому надо будет.

Code
new bool:IsSwitch = false;  
if( игроков >= 10 && IsSwitch == false)
{
if (IsClientInGame(i))  
     {  
      CS_SwitchTeam(i, 1);  
}
 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » 10 игроков
  • Страница 1 из 1
  • 1
Поиск: