Главная | Поиск | Чат | Форум | Рынок | | Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Уважаемые пользователи, прежде чем открыть новую тему ознакомьтесь пожалуйста с правилами и воспользуйтесь поиском.

  • Страница 1 из 1
  • 1
Модератор форума: Cooller^_^, Mushroom, Tiger_  
Форум Counter Strike » Плагины для AMXX » Общие вопросы по модам и плагинам » Помогите с кодом.
Помогите с кодом.
QviNSteNДата: Понедельник, 2014-10-13, 14:52 | Сообщение # 1
Сообщений: 13
Награды: 0
Есть у меня код:

register_event("HLTV", "event_new_round", "a", "1=0", "2=0")

public event_new_round(id)
{
//Действия тут не производятся , но должны(
}

И вот ещё:
register_event("CurWeapon", "on_WChange", "be", "1=1")

public on_WChange(id)
{
//Тоже не выполняются.
}

В чём может быть проблема?
 Российская Федерация
ShaftДата: Понедельник, 2014-10-13, 16:24 | Сообщение # 2
Сообщений: 351
Награды: 38
Цитата QviNSteN ()
В чём может быть проблема?

В первом случае убери параметр id в функции.
То есть:
public event_new_round()
{
//Действия тут не производятся , но должны(
}

А во втором случае должно работать. По крайней мере другие плагины которые отлавливают смену оружия с этим кодом работают.


Лучше быть умным и немного тупить - чем быть тупым и много умничать!
Если обращаетесь ко мне с просьбой помочь то:
1 - полностью опишите вашу проблему.
2 - что хотите от меня.
Программирую на языках: Pawn, Delphi, C++
 Российская Федерация
QviNSteNДата: Среда, 2014-10-15, 16:23 | Сообщение # 3
Сообщений: 13
Награды: 0
[quote=Shaft;293030]В первом случае убери параметр id в функции.
То есть:
public event_new_round()
{
//Действия тут не производятся , но должны(
}

А во втором случае должно работать. По крайней мере другие плагины которые отлавливают смену оружия с этим кодом работают. [/quote]
В первом случае у меня действия с id производятся...
Вот весь код и первого и второго:
public on_WChange(id)
{
if(has_speed[id] = true)
{
set_user_maxspeed(id,1500.0)

client_cmd(id,"cl_forwardspeed 1500")
client_cmd(id,"cl_backspeed 1500")
client_cmd(id,"cl_sidespeed 1500")
}
if(has_spee[id] = true)
{
set_user_maxspeed(id,600.0)

client_cmd(id,"cl_forwardspeed 600")
client_cmd(id,"cl_backspeed 600")
client_cmd(id,"cl_sidespeed 600")
}
if(has_spe[id] = true)
{
set_user_maxspeed(id,100.0)

client_cmd(id,"cl_forwardspeed 100")
}
if(has_sp[id] = true)
{
set_user_maxspeed(id,200.0)

client_cmd(id,"cl_forwardspeed 200")
}

}

public event_new_round(id)
{
if(has_speed[id] = true)
{
set_user_maxspeed(id,1500.0)

client_cmd(id,"cl_forwardspeed 1500")
client_cmd(id,"cl_backspeed 1500")
client_cmd(id,"cl_sidespeed 1500")
}
if(has_spee[id] = true)
{
set_user_maxspeed(id,600.0)

client_cmd(id,"cl_forwardspeed 600")
client_cmd(id,"cl_backspeed 600")
client_cmd(id,"cl_sidespeed 600")
}
if(has_spe[id] = true)
{
set_user_maxspeed(id,100.0)

client_cmd(id,"cl_forwardspeed 100")
}
if(has_sp[id] = true)
{
set_user_maxspeed(id,200.0)

client_cmd(id,"cl_forwardspeed 200")
}

if(has_grav[id] = true)
{
set_user_gravity(id,0.6)
}
if(has_gra[id] = true)
{
set_user_gravity(id,0.2)
}
if(has_gr[id] = true)
{
set_user_gravity(id,2.0)
}
if(has_g[id] = true)
{
set_user_gravity(id,0.001)
}
arrayset(f, false, 33)
arrayset(ff, false, 33)
arrayset(fff, false, 33)
arrayset(ffff, false, 33)
arrayset(fffff, false, 33)
arrayset(ffffff, false, 33)
}


Сообщение отредактировал QviNSteN - Среда, 2014-10-15, 16:23
 Российская Федерация
ShaftДата: Среда, 2014-10-15, 18:12 | Сообщение # 4
Сообщений: 351
Награды: 38
Цитата QviNSteN ()
В первом случае у меня действия с id производятся...

С каким нафиг id? событие register_event("HLTV", "event_new_round", "a", "1=0", "2=0")
вызывается не для конкретного игрока а каждый раз в начале раунда!!!
Никакого id тут быть не может.
id может быть только если событие вызывается для каждого игрока индивидуально например client_connect.

Если хочешь чтобы твой код в функции event_new_round работал то тебе нужно сначала записать в массив всех игроков с помощью get_players а затем "пробежаться" циклом по этому массиву и выполнить код для каждого игрока.

Появилась свободная минутка, набросал тебе код, проверяй, должно работать:


P.S. На будущее: в языке Pawn для операции сравнения используется два знака равно == а не один =


Лучше быть умным и немного тупить - чем быть тупым и много умничать!
Если обращаетесь ко мне с просьбой помочь то:
1 - полностью опишите вашу проблему.
2 - что хотите от меня.
Программирую на языках: Pawn, Delphi, C++


Сообщение отредактировал Shaft - Среда, 2014-10-15, 21:16
 Российская Федерация
Форум Counter Strike » Плагины для AMXX » Общие вопросы по модам и плагинам » Помогите с кодом.
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Последние темы Читаемые темы Лучшие пользователи Новые пользователи

Поиск туров

(1)

Админка

(17)

Франшиза кино-кафе "NewTone"

(0)

VIP статус

(4)

Запускаем два сервера на одном компьютере.

(30)

Общение ^-^

(9999)

Общение:> (закрыта)

(9999)

Общение :] (закрыта)

(9728)

Флудилочка дизайнеров :)

(5928)

Досчитаем до 10000:)

(4786)

Cooller^_^

(6326)

REDtooth

(2547)

Gep

(2421)

redemaxa

(2162)

cs-strikez

(2010)

Yuume11

(2024-04-17)

Viktoria_123

(2024-04-16)

middragon

(2024-04-10)

dimsttm

(2024-04-08)

Beksultan_08

(2024-04-06)

Популярные