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

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

  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Как сделать в CSGO конец раунда.
Scarface_slv Дата: Воскресенье, 01.02.2015, 14:51:48 | Сообщение # 16
Сообщений: 737
Репутация: 61 [ +/- ]
WOW_NAMES, Не пробовал, не знаю=)

Добавлено (01.02.2015, 14:51:48)
---------------------------------------------
И вообще проверь команду SetTeamScore, например просто введи SetTeamScore(2, 50) - терам 50 очков, если получится то работает... Не забудь добавить #include <sdktools_functions> в начало)

 
BarD Дата: Воскресенье, 01.02.2015, 14:52:36 | Сообщение # 17
Сообщений: 943
Репутация: 137 [ +/- ]
Добавьте #include <sdktools>! Все работает! Функции есть!
 
WOW_NAMES Дата: Воскресенье, 01.02.2015, 15:00:29 | Сообщение # 18
Сообщений: 170
Репутация: -1 [ +/- ]
BarD, Ты на ксго проверяешь ?

Добавлено (01.02.2015, 15:00:29)
---------------------------------------------

Цитата Scarface_slv ()
И вообще проверь команду SetTeamScore, например просто введи SetTeamScore(2, 50) - терам 50 очков, если получится то работает... Не забудь добавить #include <sdktools_functions> в начало)

Это работает
 
BarD Дата: Воскресенье, 01.02.2015, 15:05:36 | Сообщение # 19
Сообщений: 943
Репутация: 137 [ +/- ]
Цитата WOW_NAMES ()
Это работает

Да ты чтоо? А я тебе не то же самое скинул пару постов назад? Просто забыл в первом коде "#include <sdktools>". Поэтому ошибка была.
P.S. Увидел ошибку. Я забыл +1 сделать.
Там надо так:
Код
SetTeamScore(2, GetTeamScore(2)+1);

И
Код
SetTeamScore(3, GetTeamScore(3)+1);


Сообщение отредактировал BarD - Воскресенье, 01.02.2015, 15:08:10
 
Scarface_slv Дата: Воскресенье, 01.02.2015, 15:08:11 | Сообщение # 20
Сообщений: 737
Репутация: 61 [ +/- ]
Тогда так попробуй vshapke

Гости не могут скачивать файлы
 
BarD Дата: Воскресенье, 01.02.2015, 15:10:59 | Сообщение # 21
Сообщений: 943
Репутация: 137 [ +/- ]
Scarface_slv, Твой код тоже работать должен) Правда в
Код
iTeam = iTeam == 2 ? 7 : 8;
я не очень уверен :)

Добавлено (01.02.2015, 15:10:59)
---------------------------------------------

Код
#pragma semicolon 1   
#include <sdktools>  
#include <sourcemod>   
#include <cstrike>   

public OnPluginStart()   
{   
HookEvent("player_say", Say);   

}   

public Say(Handle:event, const String:name[], bool:silent)     
{     
new client = GetClientOfUserId(GetEventInt(event, "userid"));   
if (client)   
     {   
decl String:text[5]; GetEventString(event, "text", text, 5);     
if (strcmp(text, "1") == 0)   
      {   
       if (GetClientTeam(client) == 2)   
       {   
        CS_TerminateRound(5.0, CSRoundEndReason:8, false);   
         SetTeamScore(2, GetTeamScore(2)+1);   
       }   
       else if (GetClientTeam(client) == 3)   
       {   
         CS_TerminateRound(5.0, CSRoundEndReason:7, false);   
         SetTeamScore(3, GetTeamScore(3)+1);   
       }   
      }     
     }   
}

Окончательный рабочий код
 
Scarface_slv Дата: Воскресенье, 01.02.2015, 15:23:02 | Сообщение # 22
Сообщений: 737
Репутация: 61 [ +/- ]
BarD, Да это не важно какой код, главное ему помочь и все=)
 
WOW_NAMES Дата: Воскресенье, 01.02.2015, 15:23:24 | Сообщение # 23
Сообщений: 170
Репутация: -1 [ +/- ]
Спасибо парни, бегу тестировать все это дело на свой сервер.
Может кто нибуть из вас поможет мне с кодом который бы заставлял ставить бомбу на карте за игрока?
 
BarD Дата: Воскресенье, 01.02.2015, 15:44:12 | Сообщение # 24
Сообщений: 943
Репутация: 137 [ +/- ]
Цитата WOW_NAMES ()
главное ему помочь и все=)

Миссия выполнена ulibka Отличная работа klas

Добавлено (01.02.2015, 15:44:12)
---------------------------------------------
Ну, сначала нужно entity создать.
Код
stock CreateC4(client)
{
new c4 = CreateEntityByName("planted_c4");
if (c4 != -1)
{
     new Float:pos[3];
     GetClientAbsOrigin(client, pos);
     DispatchKeyValueVector(c4, "origin", pos);
     DispatchSpawn(c4);    
     //Все, энтити заспавнили, теперь нужно как-то активировать.
     //iEx сказал, что что-то типа "bombticking" надо задать бомбе.
     //Из netprops я нашел только это:
     SetEntProp(c4, Prop_Send, "m_bBombTicking", 1); //Скорее всего как-то так.
}
}


Сообщение отредактировал BarD - Воскресенье, 01.02.2015, 15:49:53
 
Sallcom Дата: Воскресенье, 01.02.2015, 16:42:12 | Сообщение # 25
Сообщений: 205
Репутация: 31 [ +/- ]
Цитата Scarface_slv ()
Есть еще
#include <cstrike>
CS_GetTeamScore
CS_SetTeamScore

Я ему написал, чтобы он их в API посмотрел.
 
WOW_NAMES Дата: Воскресенье, 01.02.2015, 17:17:53 | Сообщение # 26
Сообщений: 170
Репутация: -1 [ +/- ]
Цитата BarD ()
Ну, сначала нужно entity создать.

Не могу понять как сделать в таймер.

Вот я создаю таймер, после спавню твоим кодом с4, по истечению таймера у меня выводит проверка в чате но бомба не ставиться. Как сделать ее активацию в таймер?

Код
#pragma semicolon 1   
#include <sdktools>
#include <sdktools_functions>
#include <sourcemod>   
#include <cstrike>  

public OnPluginStart()   
{   
    CreateTimer(10.0, C4_Func, _, TIMER_REPEAT);   
}

stock CreateC4(client)
{
     new c4 = CreateEntityByName("planted_c4");
     if (c4 != -1)
   {
      new Float:pos[3];
      GetClientAbsOrigin(client, pos);
      DispatchKeyValueVector(c4, "origin", pos);
      DispatchSpawn(c4);
      SetEntProp(c4, Prop_Send, "m_bBombTicking", 1);      
   }
}
public Action:C4_Func(Handle:timer)   
{   
       
      PrintToChatAll("\x04[\x01ИНФО\x04] \x03 Победили!\x04 Террористы.");
      return Plugin_Continue;   
}
 
BarD Дата: Воскресенье, 01.02.2015, 17:43:55 | Сообщение # 27
Сообщений: 943
Репутация: 137 [ +/- ]
Код
#pragma semicolon 1    
#include <sdktools>  
#include <sdktools_functions>  
#include <sourcemod>    
#include <cstrike>   

stock CreateC4(client)   
{   
       new c4 = CreateEntityByName("planted_c4");   
       if (c4 != -1)   
     {   
        new Float:pos[3];   
        GetClientAbsOrigin(client, pos);   
        DispatchKeyValueVector(c4, "origin", pos);   
        DispatchSpawn(c4);   
        SetEntProp(c4, Prop_Send, "m_bBombTicking", 1);        
     }   
}

public OnPluginStart()
{
    RegConsoleCmd("test",Test);
}

public Action:Test(client, args)
{
    if (client) CreateC4(client);
}


Я дал тебе функцию, которую и нужно юзать.
Пробуй такой код.


Сообщение отредактировал BarD - Воскресенье, 01.02.2015, 17:44:28
 
WOW_NAMES Дата: Воскресенье, 01.02.2015, 19:25:11 | Сообщение # 28
Сообщений: 170
Репутация: -1 [ +/- ]
BarD, Вот я тупой капец ))))

Добавлено (01.02.2015, 18:37:47)
---------------------------------------------

Цитата BarD ()
Я дал тебе функцию, которую и нужно юзать.
Пробуй такой код.

Ну вот получается только если при вводе команды, а как сделать чтобы без участия игрока само тока на карту попали сразу раз и бомба активировалась. Ну или по таймеру. У меня знаний ноль ваще.

Добавлено (01.02.2015, 19:25:11)
---------------------------------------------
Так вроде получилось.

 
BarD Дата: Понедельник, 02.02.2015, 08:00:38 | Сообщение # 29
Сообщений: 943
Репутация: 137 [ +/- ]
Когда игрок заходит, ставь ему таймер и по окончанию бомбу делай.
Код
public OnClientPostAdminCheck(client) if (client) CreateTimer(10.0, Timer, client, TIMER_FLAG_NO_MAPCHANGE);

public Action:Timer(Handle:timer, any:client) CreateC4(client);

Думаю, как-то так.
 
WOW_NAMES Дата: Понедельник, 02.02.2015, 08:39:33 | Сообщение # 30
Сообщений: 170
Репутация: -1 [ +/- ]
Цитата BarD ()
Когда игрок заходит, ставь ему таймер и по окончанию бомбу делай.
Код
public OnClientPostAdminCheck(client) if (client) CreateTimer(10.0, Timer, client, TIMER_FLAG_NO_MAPCHANGE);

public Action:Timer(Handle:timer, any:client) CreateC4(client);

Думаю, как-то так.


Спасибо за помощь я уже вчера сам допендрил ))) У меня другая проблема теперь.
Как сделать так чтобы после N количества раундов команды поменялись местами?
В идеале мне нужно сделать так
- начало карты
- запуск таймера на 10 сек
- сработает таймер и команды меняются местами
- плагин выключается (сработать должен только раз в начале карты)
Искал в нете но все что там есть не подходит на ксго
 
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Поиск: