Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.
Модераторы: Subb98, liFe iS GoOD
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.
В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.
Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.
hren_morjovui » 18 апр 2019, 15:25
Можно ли отследить координаты спрайтов выброшенных при помощи
- Код: Выделить всё
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
{
write_byte(TE_SPRAY);
write_coord(start_origin[0]);
write_coord(start_origin[1]);
write_coord(start_origin[2] +4);
write_coord(velocity[0]);
write_coord(velocity[1]);
write_coord(velocity[2] +3);
write_short(fire_sprite_id);
write_byte(1); write_byte(10); write_byte(1); write_byte(5); }
message_end();
если можно то подскажите как или как можно реализовать отслеживание?
"В этом мире неизбежны три вещи: смерть, налоги и гравитация."
-
hren_morjovui
-
- Сообщения: 258
- Зарегистрирован: 29 май 2018, 09:15
- Благодарил (а): 88 раз.
- Поблагодарили: 22 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Pawn
PHP
jQuery
артист666 » 18 апр 2019, 18:41
Таким макаром - нет.
Через emessage_* - да.
- Код: Выделить всё
public plugin_init()
{
register_message(SVC_TEMPENTITY, "message_tempentity")
}
public message_tempentity(msgid, dest, id)
{
if(get_msg_arg_int(1) != TE_SPRAY) return
static Float:start[3]
start[0] = get_msg_arg_float(2)
start[1] = get_msg_arg_float(3)
start[2] = get_msg_arg_float(4)
static Float:end[3]
end[0] = get_msg_arg_float(5)
end[1] = get_msg_arg_float(6)
end[2] = get_msg_arg_float(7)
static spriteId; spriteId = get_msg_arg_int(8)
static count; count = get_msg_arg_int(9)
static speed; speed = get_msg_arg_int(10)
static noise; noise = get_msg_arg_int(11)
static rendermode; rendermode = get_msg_arg_int(12)
set_msg_arg_int(8, ARG_BYTE, 15)
}
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
-
артист666
-
- Сообщения: 2706
- Зарегистрирован: 09 апр 2013, 17:46
- Благодарил (а): 284 раз.
- Поблагодарили: 639 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn
hren_morjovui » 18 апр 2019, 19:33
артист666 писал(а):Таким макаром - нет.
Через emessage_* - да.
- Код: Выделить всё
public plugin_init()
{
register_message(SVC_TEMPENTITY, "message_tempentity")
}
public message_tempentity(msgid, dest, id)
{
if(get_msg_arg_int(1) != TE_SPRAY) return
static Float:start[3]
start[0] = get_msg_arg_float(2)
start[1] = get_msg_arg_float(3)
start[2] = get_msg_arg_float(4)
static Float:end[3]
end[0] = get_msg_arg_float(5)
end[1] = get_msg_arg_float(6)
end[2] = get_msg_arg_float(7)
static spriteId; spriteId = get_msg_arg_int(8)
static count; count = get_msg_arg_int(9)
static speed; speed = get_msg_arg_int(10)
static noise; noise = get_msg_arg_int(11)
static rendermode; rendermode = get_msg_arg_int(12)
set_msg_arg_int(8, ARG_BYTE, 15)
}
Спасибо!
Добавлено спустя 12 минут 56 секунд:Я так понимаю на TE_SPRAY должно срабатывать, но ничего не происходит
На разбитие стекла нормально проходит, на TE_SPRAY глухо
"В этом мире неизбежны три вещи: смерть, налоги и гравитация."
-
hren_morjovui
-
- Сообщения: 258
- Зарегистрирован: 29 май 2018, 09:15
- Благодарил (а): 88 раз.
- Поблагодарили: 22 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Pawn
PHP
jQuery
артист666 » 18 апр 2019, 20:09
А что именно пробуешь отловить?
Спрайт и другим сообщением может выводиться...
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
-
артист666
-
- Сообщения: 2706
- Зарегистрирован: 09 апр 2013, 17:46
- Благодарил (а): 284 раз.
- Поблагодарили: 639 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn
hren_morjovui » 18 апр 2019, 21:30
артист666, ну из первого поста код, и не знаешь у выкидываемых спрайтов можно как-то посмотреть класснейм или отловить соприкосновение с игроком?
"В этом мире неизбежны три вещи: смерть, налоги и гравитация."
-
hren_morjovui
-
- Сообщения: 258
- Зарегистрирован: 29 май 2018, 09:15
- Благодарил (а): 88 раз.
- Поблагодарили: 22 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Pawn
PHP
jQuery
артист666 » 18 апр 2019, 22:02
Из первого поста и не должен отлавливаться.
Отлавливаются только мессаги движка, и отправленные через emessage_begin.
Класснейма нет, и прикосновений тоже.
Это уже клиент рисует.
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
-
артист666
-
- Сообщения: 2706
- Зарегистрирован: 09 апр 2013, 17:46
- Благодарил (а): 284 раз.
- Поблагодарили: 639 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn
hren_morjovui » 18 апр 2019, 22:32
артист666 писал(а):Из первого поста и не должен отлавливаться.
Отлавливаются только мессаги движка, и отправленные через emessage_begin.
Класснейма нет, и прикосновений тоже.
Это уже клиент рисует.
Спасибо!
"В этом мире неизбежны три вещи: смерть, налоги и гравитация."
-
hren_morjovui
-
- Сообщения: 258
- Зарегистрирован: 29 май 2018, 09:15
- Благодарил (а): 88 раз.
- Поблагодарили: 22 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Pawn
PHP
jQuery
hren_morjovui » 19 апр 2019, 10:28
Не, всё равно не то
- Код: Выделить всё
static Float:end[3]
end[0] = get_msg_arg_float(5)
end[1] = get_msg_arg_float(6)
end[2] = get_msg_arg_float(7)
это не конечные координаты, это скорость
"В этом мире неизбежны три вещи: смерть, налоги и гравитация."
-
hren_morjovui
-
- Сообщения: 258
- Зарегистрирован: 29 май 2018, 09:15
- Благодарил (а): 88 раз.
- Поблагодарили: 22 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Pawn
PHP
jQuery
артист666 » 19 апр 2019, 17:24
А, без разницы. Это всего лишь название массива.
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
-
артист666
-
- Сообщения: 2706
- Зарегистрирован: 09 апр 2013, 17:46
- Благодарил (а): 284 раз.
- Поблагодарили: 639 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn
Вернуться в Скриптинг
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19