Контакты Поиск

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

  • Страница 1 из 1
  • 1
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Баг с таймером подскажите..
Баг с таймером подскажите..
Naykon Дата: Суббота, 01.12.2012, 17:17:01 | Сообщение # 1
Сообщений: 439
Репутация: -4 [ +/- ]
Code
public Action:ZombieTimerFunc(Handle:timer, any:x)
{
      ZombieTimerSec -= 1;
   if (ZombieTimerSec > 0)
   {
    PrintToChatAll("Привет Я причина бага с Зомби %d", ZombieTimerSec);
   return Plugin_Continue;
   }
   ZombieTimer = INVALID_HANDLE;

    PrintToChatAll("ВКЛЮЧЕН ЗОМБИ");
     
    zombie = 1;
    new client = GetRandomZombie();
    if (IsClientInGame(client) && IsPlayerAlive(client) && GetClientTeam(client) == 2)
    {
     zzz[client] = client;
    }
    if (client != 0)
    {  
     TeleportEntity(client, SG_Pos[client], NULL_VECTOR, NULL_VECTOR);
     PrintToChatAll("\x07%06X???\x07%06X[SG: Заражение by Naykon (v1.3)] \x07%06XУбегай \x07%06X%N\x07%06X первоинфецированый Зомби!\x07%06X???", 0xebcf5f, 0x444444, 0xd11111, 0xebcf5f, client, 0xd11111, 0xebcf5f);
    }
    for (new i = 1; i <= MaxClients; i++)
    {
     if (IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 2)
     {
       SetEntProp(i, Prop_Data, "m_takedamage", 2);
       CS_SwitchTeam(i, 3);
       SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 1.0);
     }
     if (IsClientInGame(i) && IsPlayerAlive(i) && GetClientTeam(i) == 3)
     {
      SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 1.0);
      SetEntProp(i, Prop_Data, "m_takedamage", 2);
     }
     PrintToChatAll("ыаыа");
    }
    for (new i = 1; i <= MaxClients; i++)
    {
     if (zzz[i] == i)
     {
      CS_SwitchTeam(i, 2);
      zzz[i] = Zombies(i);
      SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 1.6);
      SetEntPropFloat(i, Prop_Data, "m_flGravity", 0.75);
      SetEntityHealth(i, 4000);
      SetEntProp(i, Prop_Data, "m_takedamage", 2);
     }
     PrintToChatAll("ыа2ыа");
    }
   return Plugin_Stop;
}


Вот код пусть не очень грамотно составлено но все же работает, но с ошибкой почему PrintToChatAll("ВКЛЮЧЕН ЗОМБИ"); - вот это после выключения таймера пишит каждую секунду не взирая что таймер выключен?
 
Beelzebub Дата: Суббота, 01.12.2012, 17:33:35 | Сообщение # 2
Сообщений: 202
Репутация: 13 [ +/- ]
KillTimer сделал?

Добавлено (01.12.2012, 17:33:35)
---------------------------------------------

Code
public Action:Event_RoundStart(Handle:event, const String:name[], bool:dontBroadcast)
{
     btimer = CreateTimer(1.5, test, client);
}

public Action:Event_RoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{

  if (btimer != INVALID_HANDLE) {
   KillTimer(btimer);
   btimer = INVALID_HANDLE;
  }
}


пример килл таймера.
 
Naykon Дата: Воскресенье, 02.12.2012, 01:01:18 | Сообщение # 3
Сообщений: 439
Репутация: -4 [ +/- ]
решил проблему самостоятельно нет не в этом дело.. нельзя было 2 цикла запускать...
 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Баг с таймером подскажите..
  • Страница 1 из 1
  • 1
Поиск: