[ZP] Как добавить к гранатам спрайты и вывести их в INI файл?
Как добавить к гранатам спрайты и вывести их в INI файл?

Последнее время, в ЛС мне пришло куча сообщений на тему, как добавить спрайты к гранатам Так-же все наши пути к спрайтам мы выведем в отдельный INI файл для удобства

Работать мы будем в zombieplague40.sma
1) В начале исхода создаём переменные:
new g_fire_exp, g_fire_gibs
new g_frost_exp, g_frost_gibs
new g_inf_exp, g_inf_gibs
new sprite_g_fire_exp[64], sprite_g_fire_gibs[64]
new sprite_g_frost_exp[64], sprite_g_frost_gibs[64]
new sprite_g_inf_exp[64], sprite_g_inf_gibs[64]

2) Ищем plugin_precache и добавляем туда это:
g_fire_exp = engfunc(EngFunc_PrecacheModel, sprite_g_fire_exp)
g_fire_gibs = engfunc(EngFunc_PrecacheModel, sprite_g_fire_gibs)
g_frost_exp = engfunc(EngFunc_PrecacheModel, sprite_g_frost_exp)
g_frost_gibs = engfunc(EngFunc_PrecacheModel, sprite_g_frost_gibs)
g_inf_exp = engfunc(EngFunc_PrecacheModel, sprite_g_inf_exp)
g_inf_gibs = engfunc(EngFunc_PrecacheModel, sprite_g_inf_gibs)

engfunc(EngFunc_PrecacheModel, sprite_g_inf_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_inf_exp)
engfunc(EngFunc_PrecacheModel, sprite_g_frost_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_frost_exp)
engfunc(EngFunc_PrecacheModel, sprite_g_fire_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_fire_exp)

3) Ищем // Fire Grenade Explosion и добавляем после // Fire nade explode sound это:
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_EXPLOSION) // Temporary entity ID
engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
engfunc(EngFunc_WriteCoord, originF[1])
engfunc(EngFunc_WriteCoord, originF[2] + 40)
write_short(g_fire_exp) // Sprite index
write_byte(13) // Scale
write_byte(18) // Framerate
write_byte(TE_EXPLFLAG_NOSOUND) // Flags
message_end()

message_begin (MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_SPRITETRAIL) // Throws a shower of sprites or models
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // start pos
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 200.0)
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // velocity
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 30.0)
write_short(g_fire_gibs) // spr
write_byte(30) // (count)
write_byte(5) // (life in 0.1's)
write_byte(2) // byte (scale in 0.1's)
write_byte(50) // (velocity along vector in 10's)
write_byte(10) // (randomness of velocity in 10's)
message_end()

4) Ищем // Infection Bomb Explosion и добавляем после // Infection nade explode sound это:
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_EXPLOSION) // Temporary entity ID
engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
engfunc(EngFunc_WriteCoord, originF[1])
engfunc(EngFunc_WriteCoord, originF[2] + 40)
write_short(g_inf_exp) // Sprite index
write_byte(13) // Scale
write_byte(18) // Framerate
write_byte(TE_EXPLFLAG_NOSOUND) // Flags
message_end()

message_begin (MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_SPRITETRAIL) // Throws a shower of sprites or models
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // start pos
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 200.0)
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // velocity
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 30.0)
write_short(g_inf_gibs) // spr
write_byte(30) // (count)
write_byte(5) // (life in 0.1's)
write_byte(2) // byte (scale in 0.1's)
write_byte(50) // (velocity along vector in 10's)
write_byte(10) // (randomness of velocity in 10's)
message_end()

5) Ищем // Frost Grenade Explosion и добавляем после // Frost nade explode sound sound это:
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_EXPLOSION) // Temporary entity ID
engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
engfunc(EngFunc_WriteCoord, originF[1])
engfunc(EngFunc_WriteCoord, originF[2] + 40)
write_short(g_frost_exp) // Sprite index
write_byte(13) // Scale
write_byte(18) // Framerate
write_byte(TE_EXPLFLAG_NOSOUND) // Flags
message_end()

message_begin (MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_SPRITETRAIL) // Throws a shower of sprites or models
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // start pos
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 200.0)
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // velocity
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 30.0)
write_short(g_frost_gibs) // spr
write_byte(30) // (count)
write_byte(5) // (life in 0.1's)
write_byte(2) // byte (scale in 0.1's)
write_byte(50) // (velocity along vector in 10's)
write_byte(10) // (randomness of velocity in 10's)
message_end()

Фух, спрайты к гранам добавлены, осталось лишь вывести их в
zombieplague.ini
Ищем:
case SECTION_GRENADE_SPRITES:

Добавляем туда это:
else if (equal(key, "EXPLODEFIRE"))
copy(sprite_g_fire_exp, charsmax(sprite_g_fire_exp), value)
else if (equal(key, "EXPLODEFROST"))
copy(sprite_g_frost_exp, charsmax(sprite_g_frost_exp), value)
else if (equal(key, "EXPLODEINFECT"))
copy(sprite_g_inf_exp, charsmax(sprite_g_inf_exp), value)
else if (equal(key, "GIBSFIRE"))
copy(sprite_g_fire_gibs, charsmax(sprite_g_fire_gibs), value)
else if (equal(key, "GIBSFROST"))
copy(sprite_g_frost_gibs, charsmax(sprite_g_frost_gibs), value)
else if (equal(key, "GIBSINFECT"))
copy(sprite_g_inf_gibs, charsmax(sprite_g_inf_gibs), value)

Добавляем в zombieplague.ini
EXPLODEFIRE = sprites/BuB9neC/grenade/exp_fire.spr
EXPLODEFROST = sprites/BuB9neC/grenade/exp_frost.spr
EXPLODEINFECT = sprites/BuB9neC/grenade/exp_infect.spr

GIBSFIRE = sprites/BuB9neC/grenade/gibs_fire.spr
GIBSFROST = sprites/BuB9neC/grenade/gibs_frost.spr
GIBSINFECT = sprites/BuB9neC/grenade/gibs_infect.spr

Вот таким не хитрым образом мы добавили спрайты к гранам и вывели их .ini файл... Таким же методом реализовано здесь:
https://cs-fade.ru/counter-strike/mods/1554-mod-zpl-zombie-plague-liberty-20-dlya-cs-16.html


Комментариев 1
  1. Dambas
    Dambas
    • +1
    Ну ладно, вот это хорошо
    • 21 февраля 2019 11:06
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Задать вопрос
Ragamafona
Ragamafona
Сегодня в 17:11:49

материалов нету у вас что-то
babafooka
babafooka
Вчера в 19:54:00

Zm English Version Servers New 2019 ????
Ragamafona
Ragamafona
17 марта 2019

Dim4ik,
лест го
Dim4ik
Dim4ik
16 марта 2019

Кто сейчас за заказы берётся? Нужно пофиксить и добавить пару плюшек
Wizard
Wizard
16 марта 2019

Думал скачать а тут уже нету !!бля
Wizard
Wizard
16 марта 2019

Так где слив Руслана ??
DeMNiX
DeMNiX
15 марта 2019

IIyLLIaPa,
постани там модель в модерации
эхмэн'у некогда
IIyLLIaPa
IIyLLIaPa
15 марта 2019

Rainbowdash1998,
owner sold it to another person.
Rainbowdash1998
Rainbowdash1998
14 марта 2019

Hell you guy can i ask you guy a question please what happen to your old website ???
DeMNiX
DeMNiX
12 марта 2019

админ ты уволен
Саша Адидас
Саша Адидас
12 марта 2019

Когда новые сливы сборок , то?)
Ewer
Ewer
12 марта 2019

Mort3m,
у меня таких нету, всё от Диаса :)
Mort3m
Mort3m
12 марта 2019

Ewer,
плагины с хорошим кодом как у мкода
Ewer
Ewer
11 марта 2019

xman2030,
что сливать то? )))
xman2030
xman2030
10 марта 2019

Ewer, сливы будут?
DeMNiX
DeMNiX
10 марта 2019

028-monkey-1
HELLIK
HELLIK
10 марта 2019

Mort3m,
Большая чаsть как раз таки от него.
Mort3m
Mort3m
9 марта 2019

HELLIK,
советую плагины от мкода, говорят очень оптимизированные
HELLIK
HELLIK
8 марта 2019

Я тут плагинов взял , sчитай что sервер s 0 sделал :DD
DeMNiX
DeMNiX
8 марта 2019

Октябрьская эволюция
xman2030
xman2030
8 марта 2019

Серёга оно примерно +- одно и тоже
DeMNiX
DeMNiX
8 марта 2019

че пацаны, революшен?
xUnicorn
xUnicorn
7 марта 2019

MayTov,
Зато там нет актива
MayTov
MayTov
7 марта 2019

За то нету такого крутого логотипа :)
DeMNiX
DeMNiX
7 марта 2019

ахахах
и цветовая палитра такая же 092-laughing-1
xman2030
xman2030
7 марта 2019

Администратор (zombie-dev.ru) Дениска ты просто наглый воришка
DeMNiX
DeMNiX
6 марта 2019

Ragamafona,
чувствуешь себя как бабка у подъезда? все вокруг шл.хи и наркоманы, а все те кто на скамье - нормальные 059-sad-8
для этой игры понятие 'нормальный сервер' уже давно кануло в лету
Phanautoy
Phanautoy
6 марта 2019

Phanautoy,
Ну можно заказать или купить
HELLIK
HELLIK
6 марта 2019

ВВ готовых не нашёл ничего норамльного.
Phanautoy
Phanautoy
6 марта 2019

HELLIK,
На сайте посмотри, в разделе готовые сервера
Ragamafona
Ragamafona
5 марта 2019

HELLIK,
это - не нормальная.
HELLIK
HELLIK
5 марта 2019

Ребят , у кого то есть зм сборка нормальная ? 6 привилегий и 9 ножей 3 для игроков и 6 донатных ?)
BuB9neC
BuB9neC
4 марта 2019

kHRYSTAL, звуки это лишнее, не каждому они нужны.
Ragamafona
Ragamafona
4 марта 2019

BuB9neC,
измени натив регистрации зомби, добавь поле в котором указываешь руки с гранатой. Дабы в каждом классе не пичкать проверки.
Ragamafona
Ragamafona
4 марта 2019

kHRYSTAL,
а в чём сок? собственно
kHRYSTAL
kHRYSTAL
3 марта 2019

BuB9neC,
звуки для зомби*
BuB9neC
BuB9neC
3 марта 2019

kHRYSTAL,
эм, а разве они не в плагине Jump гранаты?
kHRYSTAL
kHRYSTAL
3 марта 2019

BuB9neC,
звуки и граната jump для зомби через гл.мод, как тебе, сможешь сделать?
BuB9neC
BuB9neC
3 марта 2019

kHRYSTAL,
да идей нету, добавил лишь нужный плагин - парашют.
kHRYSTAL
kHRYSTAL
3 марта 2019

BuB9neC,
где новая версия мода?
xUnicorn
xUnicorn
3 марта 2019

DeMNiX, патау
DeMNiX
DeMNiX
3 марта 2019

xUnicorn,
там нету ре, поэтому не
Mort3m
Mort3m
2 марта 2019

3RA1N,
да, он плагины пишет вообще то, не то что эти ссаные рескины
3RA1N
3RA1N
2 марта 2019

Mort3m,
И как? нравиться!
Mort3m
Mort3m
2 марта 2019

xUnicorn,
я дрочу только на мкода, извиняюсб
xUnicorn
xUnicorn
2 марта 2019

Mort3m, DeMNiX, BuB9neC, Лайки где? Я не понял
Mort3m
Mort3m
28 февраля 2019

жду новые плагины, я кодить не умею, поэтому жду от других
ну и где? 011-suspicious
DeMNiX
DeMNiX
28 февраля 2019

BuB9neC,
Бан
Lunky
Lunky
28 февраля 2019

Жду больше extra items , если их не буит седня,отписка 062-angry-3
BuB9neC
BuB9neC
27 февраля 2019

Остались лишь бубенцы :011-суспициоус: 022-thinking-1

Только зарегистрированные посетители могут писать в чате.
Статистика
  • +0 Всего статей 1328
  • +2 Комментариев 2781
  • +12 Пользователей : 5647
  • Новичок denis33122
  • Сейчас на сайте 2
  • Гостей 2
  • Пользователей 0
  • []
Основа для вашей сборки
ReHLDS 3.4.0.654

ReHLDS (Reverse-engineered) - это новый шаг вперед, который дает второе дыхание нашим серверам. ReHLDS работает в 2 раза быстрей, чем HLDS.

AmxModx 1.8.3

AMXModX - это Metamod дополнение, которое позволяет создавать новые модификации для Half-Life на языке Pawn

Reunion 0.1.92

Reunion является продолжением Dproto для ReHLDS. Это metamod плагин, который позволяет заходить 47/48 Non-Steam на сервер.

Revoice 0.1.0.32

Revoice - это Metamod plugin, который дает возможность общения голосовым чатом между non-steam и steam клиентами.

Metamod-r 1.3.0.127

Новый Metamod-r содержит огромное количество оптимизаций производительности и намного более чистый код. Ядро было написано с использованием JIT-компилятора.

Ultimate Unprecacher 1.1

Ultimate Unprecacher являет плагином для MetaMod, работает он по принципу отключение не нужных ресурсов на вашем сервере, тем самым вы сможете освободить места для ресурсов под ваши плагины, с помощью данного модуля можно избавиться от ошибки 512!

ReAuthCheck 0.1.6

ReAuthCheck - это Metamod плагин, который занимается проверкой ваших игроков на валидность, с помощью данного модуля для REHLDS вы сможете защитить свой сервер от ботов, которые постоянно спамят рекламу или просто забивают слот на сервере!

Чем пользуешься ты?
Информация

Добро пожаловать на CS-FADE.RU!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт