Скрипт

Drimer

Участник
Сообщения
203
Реакции
54
Нужно каким то образом посчитать раунды.Тоесть-Мне нужно что бы в первом раунде писало
день 1.(текст)
Во втором раунде
день 2.(текст)
и тд.
 

Rabb1t

Амбассадор
Сообщения
2,968
Реакции
1,429
  • Команда форума
  • #2
@Drimer, уточняй.
Текст дня надо в конфиге ведь настраивать? Если да, то пиши как примерно должен выглядеть конфиг.
 

Drimer

Участник
Сообщения
203
Реакции
54
@Drimer, уточняй.
Текст дня надо в конфиге ведь настраивать? Если да, то пиши как примерно должен выглядеть конфиг.
По такой схеме
if(что то)
{
PrintToChat(iClient, "День 1.Вы попали в тюрьму за канибализм");
}
if(что то)
{
PrintToChat(iClient, "День 2.Вы попали в тюрьму за убийство человека");
}
 

Rabb1t

Амбассадор
Сообщения
2,968
Реакции
1,429
  • Команда форума
  • #4
@Drimer, это не конфиг, или ты хочешь по событиям в конфиге сделать?
 

Drimer

Участник
Сообщения
203
Реакции
54
не надо конфиг.Надо так)(По такой схеме)
if(что то)
{
PrintToChat(iClient, "День 1.Вы попали в тюрьму за канибализм");
}
if(что то)
{
PrintToChat(iClient, "День 2.Вы попали в тюрьму за убийство человека");
}
--- Добавлено позже ---
@Drimer, это не конфиг, или ты хочешь по событиям в конфиге сделать?
Я хочу в sp файле изменять под себя.Конфиг мне не нужен.
 

Rabb1t

Амбассадор
Сообщения
2,968
Реакции
1,429
  • Команда форума
  • #6
@Drimer, если так, то тема создана не в том разделе.
Тебе в раздел "Требуется".
 

Drimer

Участник
Сообщения
203
Реакции
54
мне не требуется сам плагин.Мне требуется узнать как это реализовать,для личного интереса нужно,научится писать плагины хоть чуточку хочется.
 

MrTonik

Участник
Сообщения
244
Реакции
36
C-подобный:
#include <sourcemod>

int g_iRounds = 0;

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

public Action Event_RoundStart(Handle event, char[] name, bool bDontBroadcast) {
    g_iRounds++;
    switch(g_iRounds) {
        case 1: PrintToChatAll("День 1 TEXT");
        case 2: PrintToChatAll("День 2 TEXT");
        case 3: PrintToChatAll("День 3 TEXT");
        case 4: PrintToChatAll("День 4 TEXT");
        case 5: PrintToChatAll("День 5 TEXT");
        case 6: PrintToChatAll("День 6 TEXT");
        case 7: PrintToChatAll("День 7 TEXT");
        case 8: PrintToChatAll("День 8 TEXT");
        case 9: PrintToChatAll("День 9 TEXT");
        case 10: PrintToChatAll("День 10 TEXT");
    }
}
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #10
@Серый™, так ему постом выше уже и написали.

@MrTonik, нет учета рестарта и смены карты.
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
@Drimer, это как, читаю книгу вижу фигу. Могу порекомендовать смотреть исходники плагинов и учится как там написано.
 

Drimer

Участник
Сообщения
203
Реакции
54
@Drimer, это как, читаю книгу вижу фигу. Могу порекомендовать смотреть исходники плагинов и учится как там написано.
Впринципе я разобрался как и что записывать а вот
g_iRounds++; откуда взялось понять немогу.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #18
@Drimer, каких еще функций? первый урок не читал 100%
 

Rabb1t

Амбассадор
Сообщения
2,968
Реакции
1,429
  • Команда форума
  • #19
@Drimer, в уроках от Рико, это вроде 1-ый урок.
 

ludanik

Участник
Сообщения
146
Реакции
20
C-подобный:
#pragma semicolon 1
#include <sdktools_functions>
#pragma newdecls required

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

public Action Event_RoundStart(Handle event, char[] name, bool bDontBroadcast) {
    switch(GetRound) {
        case 1: PrintToChatAll("День 1 TEXT");
        case 2: PrintToChatAll("День 2 TEXT");
        case 3: PrintToChatAll("День 3 TEXT");
        case 4: PrintToChatAll("День 4 TEXT");
        case 5: PrintToChatAll("День 5 TEXT");
        case 6: PrintToChatAll("День 6 TEXT");
        case 7: PrintToChatAll("День 7 TEXT");
        case 8: PrintToChatAll("День 8 TEXT");
        case 9: PrintToChatAll("День 9 TEXT");
        case 10: PrintToChatAll("День 10 TEXT");
    }
}

stock int GetRound(){
    return GetTeamScore(2) + GetTeamScore(3) + 1;
}
Будет ввести раунды по счету, если счет 0 это первый день, когда 1 это второй день.
Если убрать +1 то будет возвращаться предыдущий день (раунд).
 
Сверху Снизу