Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Как сделать restart после 2 раунда!

, Как сделать restart после 2 раунда!
Статус пользователя xoomie
сообщение 4.3.2013, 11:21
Сообщение #1


Стаж: 13 лет

Сообщений: 136
Благодарностей: 15
Полезность: 93

Скрытый текст
Код
        #include <amxmodx>
        #include <amxmisc>
        #include <dhudmessage>
        
        new const PLUGIN_NAME[] = "Auto rr"
        new const PLUGIN_VERSION[] = "1.0"
        new const PLUGIN_AUTHOR[] = "9 rpamm!?"
        
        new Timer, SecondsCvar;
        
        public plugin_init()
        {
          
            register_plugin( PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR );
            register_dictionary("auto_rr.txt");
              
            SecondsCvar = register_cvar("auto_rr_time","60.0")
              
            Timer = floatround(get_pcvar_float(SecondsCvar))
            set_task(1.0, "start_rr_timer", _, _, _, "a", floatround(get_pcvar_float(SecondsCvar)))
        }
        
        public start_rr_timer()
        {
            set_dhudmessage(255, 0, 0, -1.0, 0.08, 0, 0.0, 0.01)
            show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME" , Timer)
        
            if(Timer == 1)
                {
                server_cmd("sv_restartround 1")
                set_task(3.0, "rr_end")
                }
            Timer--
        }
        
        public rr_end()
        {
            set_dhudmessage( random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false )
            show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
        }


Этот плагин выполняет авто рестарт после 60 секунд. и выводит при этом сообщения.
А хотелось бы что бы при первом раунде написало что рестарт будет после второго раунда! и естественно был бы рестарт после второго раунда. и ненадо там никак секунд и т.п. просто сообщение и рестарт после первого раунда!
Поможите ребята?

Сам я пишу не давно плаины но не хватает мозгов на данный плагин!

i
Уведомление:
перемещено


Отредактировал: AndrewZ, - 4.3.2013, 17:43
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Internal
сообщение 4.3.2013, 11:28
Сообщение #2
Стаж: 13 лет

Сообщений: 99
Благодарностей: 19
Полезность: 152

Код
#include <amxmodx>

static iCount;

public plugin_init () {
    register_logevent ("round_end",2,"1=Round_End");
    iCount = 0;
}

public round_end () {
    iCount ++;
    if (iCount == 2) server_cmd ("sv_restartround 1");
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя xoomie
сообщение 4.3.2013, 11:47
Сообщение #3


Стаж: 13 лет

Сообщений: 136
Благодарностей: 15
Полезность: 93

Цитата(Internal @ 4.3.2013, 13:28) *
Код
#include <amxmodx>

static iCount;

public plugin_init () {
    register_logevent ("round_end",2,"1=Round_End");
    iCount = 0;
}

public round_end () {
    iCount ++;
    if (iCount == 2) server_cmd ("sv_restartround 1");
}


Если не трудно возможно добавить данные пункты??
ну это я примерно смогу вставить!
Код
public event_round_start ( )
{
    client_print(0, print_chat, "Автоматический рестарт произайдет после 2 раунда")



Вот к примеру это не знаю как сделать смотрите с низу
Код
client_print(0, print_chat, "Был произведен автоматический рестар раунда")

Буду благодарен в долгу не останусть!

Отредактировал: xoomie, - 4.3.2013, 11:52
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя xoomie
сообщение 4.3.2013, 12:12
Сообщение #4


Стаж: 13 лет

Сообщений: 136
Благодарностей: 15
Полезность: 93

Ребята рестарт работает на все 100% отдельное спасибо Internal
Вот хотелось бы еще чтобы информировало на сервере я все прописал ну что то не выходить чат сообщений =(
Вот что получилось помогите до делать буду благодарен!

Код
#include <amxmodx>

static iCount;

public plugin_init () {
    register_logevent ("round_end",2,"1=Round_End");
    iCount = 0;
}
public event_round_start ( )
{
    client_print(0, print_chat, "Автоматический рестарт произайдет после 2 раунда")
}
public round_end () {
    iCount ++;
    if (iCount == 2) server_cmd ("sv_restartround 2");
}
public event_round_end ( )
{
    client_print(0, print_chat, "Рестратр раунда произведен")
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Internal
сообщение 4.3.2013, 19:51
Сообщение #5
Стаж: 13 лет

Сообщений: 99
Благодарностей: 19
Полезность: 152

Цитата(xoomie @ 4.3.2013, 14:12) *
Ребята рестарт работает на все 100% отдельное спасибо Internal
Вот хотелось бы еще чтобы информировало на сервере я все прописал ну что то не выходить чат сообщений =(
Вот что получилось помогите до делать буду благодарен!

Код
#include <amxmodx>

static iCount;

public plugin_init () {
    register_logevent ("round_end",2,"1=Round_End");
    iCount = 0;
}
public event_round_start ( )
{
    client_print(0, print_chat, "Автоматический рестарт произайдет после 2 раунда")
}
public round_end () {
    iCount ++;
    if (iCount == 2) server_cmd ("sv_restartround 2");
}
public event_round_end ( )
{
    client_print(0, print_chat, "Рестратр раунда произведен")
}

Код
#include <amxmodx>

static iCount;

public plugin_init () {
    register_logevent ("round_end",2,"1=Round_End");
    iCount = 0;
}

public round_end () {
    iCount ++;
    if (iCount == 2) server_cmd ("sv_restartround 1");
    client_print (0,print_chat,"Рестарт раунда произведен");
}

Походу так ты хочешь?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 4.3.2013, 20:11
Сообщение #6


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

Код
include <amxmodx>

new iCount; // и так 0

public plugin_init () {
register_plugin("Auto restart","Internal","1.0")
    register_logevent ("round_end",2,"1=Round_End");
set_task(20.0,"pl_inform",123,_,_,"b")
}

public round_end ()
{
   if (++iCount == 2)
   {
       server_cmd ("sv_restartround 1");
       remove_task(123)
       client_print (0,print_chat,"Рестарт раунда произведен");
    }
}
public pl_inform()
{
client_print (0,print_chat,"Автоматический рестарт произойдет после 2 раунда");
}


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя AndrewZ
сообщение 4.3.2013, 20:13
Сообщение #7


Иконка группы

Стаж: 18 лет
Город: Санкт-Петербург


Сообщений: 4700
Благодарностей: 2452
Полезность: 1018

mazdan,
if (++iCount == 2)

Это как читается?)


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 4.3.2013, 20:38
Сообщение #8


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

++icount это то же что icount++ только выполнится до всего выражения

Код
icount = 1
test = ++icount // после строки этой test == 2, icount == 2


Код
icount = 1
test = icount++ // после строки этой test == 1, icount == 2


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя JIokoMoTuB
сообщение 4.3.2013, 21:07
Сообщение #9


Стаж: 16 лет

Сообщений: 2174
Благодарностей: 566
Полезность: 425

Цитата(mazdan @ 4.3.2013, 22:38) *
++icount это то же что icount++ только выполнится до всего выражения

Код
icount = 1
test = ++icount // после строки этой test == 2, icount == 2


Код
icount = 1
test = icount++ // после строки этой test == 1, icount == 2

тут разницы ни какой. постфиксные и префиксные формы. разница в приоретете. но тут одинаково


Empower isn't phoenix
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 4.3.2013, 21:09
Сообщение #10


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

в случае if(icount++ == 2) по идее рестарт сделает только на третий раунд, а ++icount на второй. Ну если с еще одной строкой то тоже на второй. но она не нужна же нам =)
Хотя могу и ошибаться, просто написал как точнее


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя xoomie
сообщение 4.3.2013, 21:59
Сообщение #11


Стаж: 13 лет

Сообщений: 136
Благодарностей: 15
Полезность: 93

Цитата(mazdan @ 4.3.2013, 22:11) *
Код
include <amxmodx>

new iCount; // и так 0

public plugin_init () {
register_plugin("Auto restart","Internal","1.0")
    register_logevent ("round_end",2,"1=Round_End");
set_task(20.0,"pl_inform",123,_,_,"b")
}

public round_end ()
{
   if (++iCount == 2)
   {
       server_cmd ("sv_restartround 1");
       remove_task(123)
       client_print (0,print_chat,"Рестарт раунда произведен");
    }
}
public pl_inform()
{
client_print (0,print_chat,"Автоматический рестарт произойдет после 2 раунда");
}


Вот такая ошибка выдает при компликтации,Помогите очень нужен такой плагин!
Залил картинку не знаю можно или нет тут так=(, Буду благодарен!

Прикрепленное изображение

Отредактировал: xoomie, - 4.3.2013, 22:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
exec1337
сообщение 4.3.2013, 22:38
Сообщение #12
Стаж: 13 лет

Сообщений: 6490
Благодарностей: 2558
Полезность: 491

http://zalil.ru/34317888
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя sambo
сообщение 4.3.2013, 23:10
Сообщение #13


Стаж: 14 лет

Сообщений: 847
Благодарностей: 200
Полезность: 477

sma
Код
#include <amxmodx>
#include <hamsandwich>

new nRound = 0
new nHud

public plugin_init()
{
    register_plugin("Nice Live", "1.0", "sector")
    
    RegisterHam(Ham_Spawn, "player", "nice_live_spawn", 1)
    
    register_event("SendAudio", "nice_live_round", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin")
    
    nHud = CreateHudSyncObj()
}


public nice_live_round()
{
    nRound++
    
    if(nRound == 1)
    {
        set_task(3.0, "nice_live_restart", _, _, _, "a", 3)
        set_task(12.0, "nice_live_message")
    }
}

public nice_live_restart()
{
    server_cmd("sv_restart 1")
}

public nice_live_spawn(i)
{
    if(nRound == 0)
    {
        new nColor = random_num(0, 255)
        
        set_hudmessage(nColor, nColor, nColor, -1.0, 0.65, 2, 6.0, 10.0)
        ShowSyncHudMsg(i, nHud, "Разминочный раунд!")
    }
}

public nice_live_message()
{
    set_hudmessage(0, 255, 0, -1.0, 0.65, 2, 6.0, 10.0)
    ShowSyncHudMsg(0, nHud, "Игра ! Игра ! Игра !")
}


Надписи только сменить на такие как нужно.
Прикрепленные файлы:
Прикрепленный файл  nice_live.sma ( 1,07 килобайт ) Кол-во скачиваний: 12
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя xoomie
сообщение 5.3.2013, 10:28
Сообщение #14


Стаж: 13 лет

Сообщений: 136
Благодарностей: 15
Полезность: 93

Всем Огромное спасибо. Проблема решена Не знаю как каждому дасть благодарность если бы подсказали дал бы! А так Спасибо каждому по отдельности что не прошли мимо и откликнулись мою проблему,вот получилось что я хотел. Я еще добавил ColorChat! Все работает на ура! Проблема [РЕШЕНО]

Код
#include <amxmodx>
#include <colorchat>

new iCount; // и так 0

public plugin_init ()
{
    register_plugin("Auto restart","xoomie","1.0")
    register_logevent ("round_end",2,"1=Round_End");
    set_task(20.0,"pl_inform",123,_,_,"b")
}

public round_end ()
{
    if (++iCount == 2)
       {
        server_cmd ("sv_restartround 1");
        remove_task(123)
        ColorChat(0, GREEN,"^x03[^x04Restart_Round^x03] ^x01Рестарт раунда произведен! ^x04Желает вам приятной игры!");
    }
}
public pl_inform()
{
    ColorChat(0, GREEN,"^x03[^x04Restart_Round^x03] ^x01Автоматический рестарт произойдет после^x04 1 ^x01раунда");
}


Отредактировал: xoomie, - 5.3.2013, 10:39
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя M1r3x
сообщение 5.3.2013, 11:41
Сообщение #15


Стаж: 13 лет

Сообщений: 276
Благодарностей: 80
Полезность: 3

после 1 рауда можно сделать?

Всё разлбрался roundStart", 2, "1=Round_Start

Отредактировал: kovalyov, - 5.3.2013, 11:48
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: