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

Работа с TE_SPRITETRAIL

Статьи или фрагменты кода для новичков и уже опытных скриптеров по AMXX.

Модератор: Chuvi

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

В данном разделе форума разрешено создавать темы, касающие только обучающему материалу по AMX Mod X.

Работа с TE_SPRITETRAIL

Сообщение defa » 03 сен 2010, 23:25

Автор: defa

TE_SPRITETRAIL - это движущийся светящийся спрайт с гравитацией, затуханием и столкновениями.

Приступим:
Создаём макрос и обзываем её, даём значение 15, так как под этим номером и находится TE_SPRITETRAIL:
Код: Выделить всё
#define TE_SPRITETRAIL 15    

Дальше создаём глобальную переменную, в которой будет хранится precache_model("sprites/3dmflaora.spr"), т.е. наш спрайт:
Код: Выделить всё
new g_short


Ну и собственно:
Код: Выделить всё
public plugin_precache()
{
    g_short=precache_model("sprites/3dmflaora.spr")


Дальше нам нужно узнать координаты, к примеру, игрока для использования, так как у TE_SPRITETRAIL имеются начальные и конечные координаты:
Код: Выделить всё

new origin
[3]
    
get_user_origin
(id,origin

Создаём сообщение, которое будет отправляться одному игроку:
Код: Выделить всё
message_begin(MSG_ONE,SVC_TEMPENTITY,{0,0,0},id

Передаём свойства:
Код: Выделить всё
write_byte(TE_SPRITETRAIL) //Движущийся светящийся спрайт с гравитацией, затуханием и столкновениями
write_coord(origin[0]) //начальная позиция по x
write_coord(origin[1]) //начальная позиция по y
write_coord(origin[2]+20) //начальная позиция по z
write_coord(origin[0]) //конечная позиция по x
write_coord(origin[1]) //конечная позиция по y
write_coord(origin[2]+80) //конечная позиция по z
write_short(g_short) //index модели
write_byte(1) //количество
write_byte(15) //время отображения спрайта в секундах
write_byte(4) //масштаб отрисовки модели спрайта
write_byte(20) //скорость
write_byte(10) //произвольность в скорости      

Завершаем сообщение:
Код: Выделить всё
message_end() 

Целый примерный код:
Код: Выделить всё
#include <amxmodx>
#include <amxmisc>

#define TE_SPRITETRAIL 15
new g_short

public plugin_precache
()
{
    g_short=precache_model("sprites/3dmflaora.spr")
}
public plugin_init()
{
    register_plugin("TestTeSpriteTrail","1.0","defa")
    register_clcmd("say /test","testing")
}
public testing(id)
{
    new origin[3]
    
    get_user_origin
(id,origin)
    
    message_begin
(MSG_ONE,SVC_TEMPENTITY,{0,0,0},id)
    write_byte(TE_SPRITETRAIL) //Движущийся светящийся спрайт с гравитацией, затуханием и столкновениями
    write_coord(origin[0]) 
    write_coord
(origin[1]) 
    write_coord
(origin[2]+20) 
    write_coord
(origin[0]) 
    write_coord
(origin[1]) 
    write_coord
(origin[2]+80) 
    write_short
(g_short) 
    write_byte
(1) 
    write_byte
(15) 
    write_byte
(4) 
    write_byte
(20) 
    write_byte
(10) 
    message_end
()

Видео:
Аватара пользователя
defa
 
Сообщения: 870
Зарегистрирован: 26 авг 2010, 18:22
Забанен
Благодарил (а): 34 раз.
Поблагодарили: 399 раз.

Re: Работа с TE_SPRITETRAIL

Сообщение ILZM » 26 фев 2011, 14:22

А какой TE_ делает дым?? Напишите пожалуйста! :-[
Аватара пользователя
ILZM
 
Сообщения: 270
Зарегистрирован: 04 фев 2011, 15:21
Благодарил (а): 55 раз.
Поблагодарили: 43 раз.
Опыт программирования: Меньше месяца
Языки программирования: Counter-Strike 1.6

Re: Работа с TE_SPRITETRAIL

Сообщение Northon » 26 фев 2011, 14:57

TE_SPRITE
Аватара пользователя
Northon
 
Сообщения: 269
Зарегистрирован: 30 май 2010, 15:42
Благодарил (а): 9 раз.
Поблагодарили: 91 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6

Re: Работа с TE_SPRITETRAIL

Сообщение Retro-kolt Lincoln » 29 окт 2011, 15:02

Вот у меня есть анимированный спрайт в котором 4 кадра, как сделать чтобы каждый кадр длился 10секунд? Хочу сделать рекламу на стене в виде рекламного щита с анимацией, думаю будет смотреться как плазменный телик :-D
Предлагаю услуги гаранта. Написание плагинов на заказ.
Статус:
на заслуженном отдыхе
Отзывы: Нажми
Обратиться ко мне: Нажми

- - - - - - - - - - - - - - - -
Если ваше ЛС было проигнорировано мною, знайте, оно мне не интересно.
Аватара пользователя
Retro-kolt Lincoln
 
Сообщения: 1283
Зарегистрирован: 28 авг 2010, 19:16
Благодарил (а): 321 раз.
Поблагодарили: 581 раз.
Опыт программирования: Больше трех лет
Языки программирования: ╚►Counter-Strike 1.6

Re: Работа с TE_SPRITETRAIL

Сообщение fl0wer » 29 окт 2011, 15:12

[pawn]
  1. #define TE_SPRITETRAIL              15       // Line of moving glow sprites with gravity, fadeout, and collisions

  2. // write_byte(TE_SPRITETRAIL)

  3. // write_coord(startposition.x)

  4. // write_coord(startposition.y)

  5. // write_coord(startposition.z)

  6. // write_coord(endposition.x)

  7. // write_coord(endposition.y)

  8. // write_coord(endposition.z)

  9. // write_short(sprite index)

  10. // write_byte(count)

  11. // write_byte(life in 0.1's)

  12. // write_byte(scale in 0.1's)

  13. // write_byte(velocity along vector in 10's)

  14. // write_byte(randomness of velocity in 10's)
[/pawn]
Аватара пользователя
fl0wer
 
Сообщения: 1687
Зарегистрирован: 27 фев 2011, 21:35
Откуда: Россия, Ижевск
Благодарил (а): 240 раз.
Поблагодарили: 508 раз.
Опыт программирования: Больше трех лет
Языки программирования: C++, Java, PAWN

Re: Работа с TE_SPRITETRAIL

Сообщение Retro-kolt Lincoln » 29 окт 2011, 15:29

fl0wer писал(а):[pawn]
  1.  // write_byte(count) / количество кадров?

  2. // write_byte(life in 0.1's) // длительность одного кадра?
[/pawn]
Последний раз редактировалось Retro-kolt Lincoln 29 окт 2011, 15:31, всего редактировалось 2 раз(а).
Предлагаю услуги гаранта. Написание плагинов на заказ.
Статус:
на заслуженном отдыхе
Отзывы: Нажми
Обратиться ко мне: Нажми

- - - - - - - - - - - - - - - -
Если ваше ЛС было проигнорировано мною, знайте, оно мне не интересно.
Аватара пользователя
Retro-kolt Lincoln
 
Сообщения: 1283
Зарегистрирован: 28 авг 2010, 19:16
Благодарил (а): 321 раз.
Поблагодарили: 581 раз.
Опыт программирования: Больше трех лет
Языки программирования: ╚►Counter-Strike 1.6

Re: Работа с TE_SPRITETRAIL

Сообщение fl0wer » 29 окт 2011, 15:29

Retro-kolt Lincoln писал(а):[pawn]
  1. #define TE_SPRITETRAIL 15
[/pawn]
Это и есть задержка в секундах?
По моему я несу бред..

// write_byte(life in 0.1's)


Очки купи.
Аватара пользователя
fl0wer
 
Сообщения: 1687
Зарегистрирован: 27 фев 2011, 21:35
Откуда: Россия, Ижевск
Благодарил (а): 240 раз.
Поблагодарили: 508 раз.
Опыт программирования: Больше трех лет
Языки программирования: C++, Java, PAWN

Re: Работа с TE_SPRITETRAIL

Сообщение Retro-kolt Lincoln » 29 окт 2011, 15:30

Да голова не варит, что-то протупил...
Предлагаю услуги гаранта. Написание плагинов на заказ.
Статус:
на заслуженном отдыхе
Отзывы: Нажми
Обратиться ко мне: Нажми

- - - - - - - - - - - - - - - -
Если ваше ЛС было проигнорировано мною, знайте, оно мне не интересно.
Аватара пользователя
Retro-kolt Lincoln
 
Сообщения: 1283
Зарегистрирован: 28 авг 2010, 19:16
Благодарил (а): 321 раз.
Поблагодарили: 581 раз.
Опыт программирования: Больше трех лет
Языки программирования: ╚►Counter-Strike 1.6

Re: Работа с TE_SPRITETRAIL

Сообщение PRoSToTeM@ » 29 окт 2011, 16:48

Вообще обычно за это отвечает Frame Rate.
Аватара пользователя
PRoSToTeM@
Скриптер
 
Сообщения: 2498
Зарегистрирован: 26 мар 2010, 00:12
Благодарил (а): 438 раз.
Поблагодарили: 1125 раз.

Re: Работа с TE_SPRITETRAIL

Сообщение Retro-kolt Lincoln » 29 окт 2011, 16:51

В скрипте или его можно выставить как-то в самом спрайте?
Предлагаю услуги гаранта. Написание плагинов на заказ.
Статус:
на заслуженном отдыхе
Отзывы: Нажми
Обратиться ко мне: Нажми

- - - - - - - - - - - - - - - -
Если ваше ЛС было проигнорировано мною, знайте, оно мне не интересно.
Аватара пользователя
Retro-kolt Lincoln
 
Сообщения: 1283
Зарегистрирован: 28 авг 2010, 19:16
Благодарил (а): 321 раз.
Поблагодарили: 581 раз.
Опыт программирования: Больше трех лет
Языки программирования: ╚►Counter-Strike 1.6

Re: Работа с TE_SPRITETRAIL

Сообщение PRoSToTeM@ » 29 окт 2011, 17:10

Обычно такой параметр есть в мессаге, но не всегда... А что ты хочешь сделать?
Аватара пользователя
PRoSToTeM@
Скриптер
 
Сообщения: 2498
Зарегистрирован: 26 мар 2010, 00:12
Благодарил (а): 438 раз.
Поблагодарили: 1125 раз.

Пред.След.

Вернуться в Статьи / фрагменты кода

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

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