Русское сообщество по скриптингу

Новогодний конкурс #1 (до 20.01.12)

Новости проекта amx-x.ru
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

Новогодний конкурс #1 (до 20.01.12)

Сообщение DJ_WEST » 12 янв 2012, 12:03

Описание:
Суть данного конкурса - показать наибольшее количество вариантов кода отлова события начала раунда в Counter-Strike 1.6, с помощью AMXX. Выигрывает тот, кто первым предложит наибольшее количество вариантов отлова. Неважно будет это хук или функция, главное чтобы кусок кода выполнял свою роль и отлавливал начало раунда. Выкладывать целые плагины не нужно, только хуки, куски кода, функции и т.д. Использовать можно только указанные модули.

Список модулей, которые разрешено использовать:
amxmodx
fakemeta
engine
hamsandwich
fun

Призы:
1 место - Steam-купон со скидкой 50% на любую игру VALVe*
valve_50.png

2 место - Steam-купон со скидкой 33% на любую игру VALVe*
valve_33.png

3 место - Steam-купон со скидкой 25% на любую игру VALVe*
valve_25.png


* Для получения приза необходим аккаунт в системе Steam. Приз отсылается по почте.
Активировать купон необходимо до 1 марта 2012 года.


Список игр, на которые действует купон:
Код: Выделить всё
Counter-Strike
Counter-Strike 1 Anthology
Counter-Strike Complete
Counter-Strike: Source
Counter-Strike: Source + Garry's Mod
Day of Defeat
Day of Defeat: Source
Deathmatch Classic
Garry's Mod
Half-Life
Half-Life 1 Anthology
Half-Life 2
Half-Life 2: Deathmatch
Half-Life 2: Episode One
Half-Life 2: Episode Two
Half-Life: Complete
Half-Life: Blue Shift
Half-Life: Opposing Force
Left 4 Dead
Left 4 Dead 2
Portal
Portal 2
Portal Bundle
Ricochet
Source Multiplayer Pack
Team Fortress Classic
Team Fortress 2
The Orange Box
Valve Complete Pack


Выкладывать ответы с кодом необходимо под тегом [hide]. Содержимое ответа будет видно только администратору и модератору. Один пользователь имеет право ответить в теме - только один раз, все повторные ответы не засчитываются. Поэтому заранее нужно максимально ответить наибольшее количество вариантов. Ответы после указанного ниже времени не засчитываются. Принять участие может любой зарегистрированный пользователь форума, кроме администраторов и модераторов.

Использовать фейк-аккаунты и клоны запрещено - бан.

Флудить запрещено, только ответы по теме. Для вопросов и обсуждения есть тема:
Вы должны зарегистрироваться, чтобы видеть ссылки.

Конкурс продлится до 20.01.2012 21:00.
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Новогодний конкурс #1

Сообщение Hafner » 12 янв 2012, 23:40

  1. V
    [pawn]
    1. register_event("HLTV", "RoundBegin", "a", "1=0", "2=0")
    [/pawn]
  2. V
    [pawn]
    1. set_cvar_num("mp_freezetime", 0)

    2. register_logevent("RoundBegin", 2, "1=Round_Start")
    [/pawn]
  3. V
    [pawn]
    1. register_event("RoundTime", "RoundBegin", "bc", "2&Start")
    [/pawn]
my: chat control (approved) | nick control (approved) | vampire weapons (approved)
Аватара пользователя
Hafner
 
Сообщения: 179
Зарегистрирован: 13 окт 2009, 20:06
Откуда: Москва
Благодарил (а): 8 раз.
Поблагодарили: 117 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6

Re: Новогодний конкурс #1

Сообщение l0pa » 13 янв 2012, 15:06

[pawn]
  1.  

  2. register_event("HLTV", "RoundStart", "a", "1=0", "2=0")

  3. ///////////////

  4. register_logevent("round_start",2,"1=Round_Start")

  5. ///////////

  6. register_event("ResetHUD","startround","be")

  7. ////////////////

  8.  
[/pawn]
Уровень програмирования на Pawn - почти максимальный.
Аватара пользователя
l0pa
 
Сообщения: 99
Зарегистрирован: 01 ноя 2011, 20:36
Благодарил (а): 17 раз.
Поблагодарили: 7 раз.
Языки программирования: Counter-Strike 1.6

Re: Новогодний конкурс #1 (до 20.01.12)

Сообщение quckly » 20 янв 2012, 20:59

// #1

[pawn]
  1. register_event("HLTV", "EventRoundStart1", "a", "1=0", "2=0");

  2.  

  3. public EventRoundStart1()

  4. {

  5.         client_print(0, print_chat, "#1 HLTV");

  6. }
[/pawn]

// #2

[pawn]
  1. register_logevent("EventRoundStart2", 2, "1=Round_Start" );

  2.  

  3. public EventRoundStart2()

  4. {

  5.         client_print(0, print_chat, "#2 logevent");

  6. }
[/pawn]

// #3

[pawn]
  1. register_event("RoundTime", "RoundStart3", "b", "");

  2.  

  3. public RoundStart3(id)

  4. {

  5.         static iTime, Float:fRoundTime, iMin, Float:fSec, iSec, iTotal, pRoundTime;

  6.         static Float:fLastNewRound;

  7.        

  8.         if(pRoundTime || (pRoundTime = get_cvar_pointer("mp_roundtime")))

  9.         {

  10.                 fRoundTime = get_pcvar_float(pRoundTime);

  11.                 iMin = floatround(fRoundTime, floatround_floor);

  12.                 fSec = fRoundTime - float(iMin);

  13.                 iMin *= 60;

  14.                 iSec = floatround(fSec * 60.0);

  15.                 iTotal = iMin + iSec;

  16.         }

  17.        

  18.         iTime = read_data(1);

  19.        

  20.         if((iTotal - 1 <= iTime <= iTotal + 1) && fLastNewRound < get_gametime()) // Погрешность при округлении

  21.         {

  22.                 fLastNewRound = get_gametime() + 2.0; // Начало раунда одно, а не равно кол-ву игроков

  23.                 client_print(0, print_chat, "#3 RoundTime");

  24.  
[/pawn]

// #4

[pawn]
  1. RegisterHam(Ham_CS_Restart, "func_fall", "RoundStart4", 1 );

  2. RegisterHam(Ham_CS_Restart, "func_door", "RoundStart4", 1 );

  3. RegisterHam(Ham_CS_Restart, "func_breakeble", "RoundStart4", 1 );

  4.  

  5. public RoundStart4(id)

  6. {

  7.         static Float:fLastNewRound;

  8.         if(fLastNewRound < get_gametime())

  9.         {

  10.                 fLastNewRound = get_gametime() + 2.0;

  11.                 client_print(0, print_chat, "#4 RoundTime");

  12.         }

  13. }
[/pawn]
Аватара пользователя
quckly
Скриптер
 
Сообщения: 403
Зарегистрирован: 20 ноя 2009, 10:03
Благодарил (а): 41 раз.
Поблагодарили: 243 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Counter-Strike 1.6

Re: Новогодний конкурс #1 (до 20.01.12)

Сообщение DJ_WEST » 23 янв 2012, 14:17

Итак, конкурс подошел к концу. У всех участников было несколько одинаковых ответов, но в целом были и новые варианты. У Hafner'а засчитаны все 3 способа. У l0pa только 2, следующий вариант неверный:
[pawn]
  1. register_event("ResetHUD","startround","be")
[/pawn]
У quckly тоже 3, но он ответил позднее. Вариант:
[pawn]
  1. RegisterHam(Ham_CS_Restart, "func_fall", "RoundStart4", 1 );

  2. RegisterHam(Ham_CS_Restart, "func_door", "RoundStart4", 1 );

  3. RegisterHam(Ham_CS_Restart, "func_breakeble", "RoundStart4", 1 );
[/pawn]
Тоже не засчитан.

Просьба победителям написать мне в ЛС адрес e-mail, на который нужно выслать приз.

Благодарим всех за участие! А теперь результаты.

[align=center]1 место:
Вы должны зарегистрироваться, чтобы видеть ссылки.
valve_50.png
[/align]

[align=center]2 место:
Вы должны зарегистрироваться, чтобы видеть ссылки.
valve_33.png
[/align]

[align=center]3 место:
Вы должны зарегистрироваться, чтобы видеть ссылки.
valve_25.png
[/align]
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2


Вернуться в Новости

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7