Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

11 страниц V  « 6 7 8 ... 9 10 »

[Новогодний] Вместо бомбы снеговик (Анимация)

Статус пользователя s0h
сообщение 23.12.2014, 19:19
Сообщение #121


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Меня начали доставать в скайпе\вк\лс, по поводу этого плагина.
Поэтому тему решил вновь открыть, все таки нормальные люди еще остались.

Для тех у кого, что-то не работает.
Во-первых, я ничего никому не должен.
Во-вторых, если вам нужен фикс других плагинов из-за которых снеговик пропадает чудным образом, то за час я беру 500 рублей, думаю в час уложусь с фиксом.
В-третьих, с наступающим.

В первом посту выложил стабильную версию.

Отредактировал: s0h, - 23.12.2014, 19:28
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
magiczoltrix
сообщение 23.12.2014, 19:30
Сообщение #122
Стаж: 12 лет

Сообщений: 234
Благодарностей: 22
Полезность: 0

Нервишки шалят или критику не принемаеш?
Тебе написали что есть глюк, ну исправил или тут посоветовались и народ подсказал шо делать. Зачем сразу удалять... ну ты понял.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 23.12.2014, 19:40
Сообщение #123


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

s0h, в общем народ у меня начал жаловаться что в снеговике можно ныкаться и он не простреливается. Надо ему плотность поставить или как то так.
Жалуются так же (но это не критично) что бомба в снеговике не закреплена, т.е. что вываливается на парапетах.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s0h
сообщение 23.12.2014, 19:46
Сообщение #124


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Цитата(magiczoltrix @ 23.12.2014, 18:26) *
Нервишки шалят или критику не принемаеш?
Тебе написали что есть глюк, ну исправил или тут посоветовались и народ подсказал шо делать. Зачем сразу удалять... ну ты понял.

Окей. Для таких школолошек как ты объясню, почему глюк не в моем плагине, и почему у всех работает а у вас двоих бедных, нет.

Поехали!

Доказательство, что снеговик работает исправно и не может убираться из-за тача с другого entity(объекта). В вашем случае другой объект, это пятилетняя аптечка(хыхыхы).

Убирает снеговика функция
Clean()
Код:
public clean()
{
new entity = -1;

while((entity = find_ent_by_class(entity, gClassname_bomb)))
{
remove_entity(entity);
}
}
, теперь разберем, что тут написано. Если есть класс снеговика, то мы его убираем, только класс снеговика! Только его! Смотрим на код.

Дальше.
Функция Clean() (которая описана выше), вызывается всего в двух случаях.
Давайте рассмотрим эти случаи из кода

Первый случай - взрыв бомбы

Код:
public bomb_explode()
{
clean()
}


Второй случай - проигрывание анимации номер 104, после разминирования бомбы

Код:
public logevent_BombDefused()
{
#if defined SOUND
emit_sound(0, CHAN_AUTO, g_szBombSounds[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
#endif

if(pev_valid(iEntity)) __Anim(iEntity, 104, 1.0); //dead
}

stock __Anim(index, sequence, Float: framerate = 1.0)
{
static className[32];
entity_get_string(iEntity, EV_SZ_classname, className, charsmax(className))
if(equali(className, gClassname_bomb) && pev_valid(index))
{
entity_set_float(index, EV_FL_animtime, get_gametime());
entity_set_float(index, EV_FL_framerate, framerate);
entity_set_float(index, EV_FL_frame, 0.0);
entity_set_int(index, EV_INT_sequence, sequence);
}

if(sequence == 104)
{
set_task(1.0, "clean")
}
}




У Вас же мои "любимые", снеговик пропадает когда происходит touch с аптечкой.
Вот такой маленький гайд получится, для newbie.

Я дал развернутый ответ, почему снеговик не виноват когда берут вашу пятилетию аптечку.

Следующие слова по поводу якобы глюка снеговика в этой теме можно расценивать как оффтоп.

Спасибо за внимание.

Цитата(Bloo @ 23.12.2014, 18:36) *
s0h, в общем народ у меня начал жаловаться что в снеговике можно ныкаться и он не простреливается. Надо ему плотность поставить или как то так.
Жалуются так же (но это не критично) что бомба в снеговике не закреплена, т.е. что вываливается на парапетах.

По другому народ в нем будет застревать. Есть пару идей, ноо..

Насчет того, что бомба падает вниз, а снеговик остается на сверху, я знаю.
Как пофиксить - не знаю.

Буду думать.

Отредактировал: s0h, - 23.12.2014, 19:54
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 24.12.2014, 2:15
Сообщение #125


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

s0h, а сделать модель простреливаемой можешь? Пусть ныкаются это как бы компенсация для тт за то что бомбу кт видят сразу) Но вот что в нем ныкаются и не могут убить это трабл.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s0h
сообщение 24.12.2014, 2:29
Сообщение #126


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Цитата(Bloo @ 24.12.2014, 2:15) *
s0h, а сделать модель простреливаемой можешь? Пусть ныкаются это как бы компенсация для тт за то что бомбу кт видят сразу) Но вот что в нем ныкаются и не могут убить это трабл.

Он и так простреливается, чтобы не было преимущества, просто можно убрать его ))
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 23.12.2014, 19:30
Сообщение #127


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

s0h, странно, значит у меня нубы кто жалуется, тупо не попадают :D
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя usercn
сообщение 23.12.2014, 20:37
Сообщение #128


Стаж: 12 лет

Сообщений: 341
Благодарностей: 140
Полезность: 495

Цитата(s0h @ 23.12.2014, 19:46) *
Окей. Для таких школолошек как ты объясню, почему глюк не в моем плагине, и почему у всех работает а у вас двоих бедных, нет.

Поехали!

Доказательство, что снеговик работает исправно и не может убираться из-за тача с другого entity(объекта). В вашем случае другой объект, это пятилетняя аптечка(хыхыхы).

Убирает снеговика функция
Clean()
Код:
public clean()
{
new entity = -1;

while((entity = find_ent_by_class(entity, gClassname_bomb)))
{
remove_entity(entity);
}
}
, теперь разберем, что тут написано. Если есть класс снеговика, то мы его убираем, только класс снеговика! Только его! Смотрим на код.

Дальше.
Функция Clean() (которая описана выше), вызывается всего в двух случаях.
Давайте рассмотрим эти случаи из кода

Первый случай - взрыв бомбы

Код:
public bomb_explode()
{
clean()
}


Второй случай - проигрывание анимации номер 104, после разминирования бомбы

Код:
public logevent_BombDefused()
{
#if defined SOUND
emit_sound(0, CHAN_AUTO, g_szBombSounds[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
#endif

if(pev_valid(iEntity)) __Anim(iEntity, 104, 1.0); //dead
}

stock __Anim(index, sequence, Float: framerate = 1.0)
{
static className[32];
entity_get_string(iEntity, EV_SZ_classname, className, charsmax(className))
if(equali(className, gClassname_bomb) && pev_valid(index))
{
entity_set_float(index, EV_FL_animtime, get_gametime());
entity_set_float(index, EV_FL_framerate, framerate);
entity_set_float(index, EV_FL_frame, 0.0);
entity_set_int(index, EV_INT_sequence, sequence);
}

if(sequence == 104)
{
set_task(1.0, "clean")
}
}




У Вас же мои "любимые", снеговик пропадает когда происходит touch с аптечкой.
Вот такой маленький гайд получится, для newbie.

Я дал развернутый ответ, почему снеговик не виноват когда берут вашу пятилетию аптечку.


Дорогой наш разработчик, не нервируйся и выслушай до конца.
Ты всё правильно расписал и указал функцию clean которая убирает снеговика и откуда она вызывается,
но не учёл самого главного - снеговик убирается до вызова этой функции, т.е. без вызова этой функции!!

Более того, я закоментировал внутренности функции
Код:
public clean()
{
// new entity = -1;

// while((entity = find_ent_by_class(entity, gClassname_bomb)))
// {
// remove_entity(entity);
// }
}

и всё равно модель снеговика удаляется!!!

Твоя модель снеговика чувствительна к стороннему плагину.
Можно ли создать модель снеговика так, чтобы она могла удалиться только функциями вашего плагина,
а к сторонним плагинам быть нечувствительной.


Просунутий сервер з максимумом зброї, можливо старійший в Україні
[UA] DNET CS Public Server #1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя s0h
сообщение 24.12.2014, 10:05
Сообщение #129


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Цитата(usercn @ 23.12.2014, 20:37) *
Дорогой наш разработчик, не нервируйся и выслушай до конца.
Ты всё правильно расписал и указал функцию clean которая убирает снеговика и откуда она вызывается,
но не учёл самого главного - снеговик убирается до вызова этой функции, т.е. без вызова этой функции!!

Более того, я закоментировал внутренности функции
Код:
public clean()
{
// new entity = -1;

// while((entity = find_ent_by_class(entity, gClassname_bomb)))
// {
// remove_entity(entity);
// }
}

и всё равно модель снеговика удаляется!!!

Твоя модель снеговика чувствительна к стороннему плагину.
Можно ли создать модель снеговика так, чтобы она могла удалиться только функциями вашего плагина,
а к сторонним плагинам быть нечувствительной.

Так причем тут мой плагин, если это не он удаляет? Объясни мне глупому человеку. Я тебе уже подробно все расписал.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qvadro
сообщение 24.12.2014, 10:36
Сообщение #130


Стаж: 16 лет

Сообщений: 358
Благодарностей: 147
Полезность: 579

Решил протестировать этот "чудо" плагин с аптечками, на тестовом стоял кроме плагина s0h и Grenade Trail .... Могу только *CENSORED* сказать такая пляска с гранатами началась и глюки с пропаданием и залипанием ентити .... Во-первых это не оригинальный плагин tuty а переделка, вот к переделкину и обратитесь, виноваты аптечки.


Достойно парировать, к сожалению, умеют далеко не многие. Нельзя наказывать людей за критику.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя s0h
сообщение 24.12.2014, 10:59
Сообщение #131


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Цитата(qvadro @ 24.12.2014, 10:36) *
Решил протестировать этот "чудо" плагин с аптечками, на тестовом стоял кроме плагина s0h и Grenade Trail .... Могу только *CENSORED* сказать такая пляска с гранатами началась и глюки с пропаданием и залипанием ентити .... Во-первых это не оригинальный плагин tuty а переделка, вот к переделкину и обратитесь, виноваты аптечки.

Человек этого не понимает.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя usercn
сообщение 24.12.2014, 16:52
Сообщение #132


Стаж: 12 лет

Сообщений: 341
Благодарностей: 140
Полезность: 495

Цитата(s0h @ 24.12.2014, 10:05) *
Так причем тут мой плагин, если это не он удаляет? Объясни мне глупому человеку. Я тебе уже подробно все расписал.

На картах можно удалять много объектов - модели игроков, стрейфы, оружие, эффекты и кучу всего.
Плагин аптечек ничего этого не удаляет. Ничего!!! Только твоего снеговика!!!
Вывод:
Ваш плагин должен создавать снеговика, с такими параметрами модели, чтобы его можно было удалить только функциями вашего плагина.
Тоесть глюк в параметрах создания снеговика, как объекта на карте!



Просунутий сервер з максимумом зброї, можливо старійший в Україні
[UA] DNET CS Public Server #1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 24.12.2014, 17:02
Сообщение #133


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

usercn, только ваш плагин аптечек удаляет снеговика.
Вывод:
Ваш плагин аптечек должен удалять модели только аптечек что бы не мешать работе других плагинов.
Так сойдет?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 4 раз
   + Цитировать сообщение
Статус пользователя usercn
сообщение 24.12.2014, 21:04
Сообщение #134


Стаж: 12 лет

Сообщений: 341
Благодарностей: 140
Полезность: 495

Цитата(Bloo @ 24.12.2014, 17:02) *
usercn, только ваш плагин аптечек удаляет снеговика.
Вывод:
Ваш плагин аптечек должен удалять модели только аптечек что бы не мешать работе других плагинов.
Так сойдет?


Нужно учесть дату разработки плагинов. Плагины разработанные недавно должны быть совместимыми и учитывать работу плагинов разработанных до них.
Плагин аптечек работает несколько лет без нареканий. Плагин снеговика создан 2 недели назад и глючит при работе аптечек.
Следовательно, плагин снеговика, созданный позже должен быть совместимый с аптечками, которые созданы намного раньше.

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


Просунутий сервер з максимумом зброї, можливо старійший в Україні
[UA] DNET CS Public Server #1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 24.12.2014, 21:06
Сообщение #135


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

usercn, это что, ты хочешь сказать, авторы должны адаптировать свои плагины ко всем глюкам и недочетом древних как навоз мамонта плагинов?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя usercn
сообщение 24.12.2014, 21:18
Сообщение #136


Стаж: 12 лет

Сообщений: 341
Благодарностей: 140
Полезность: 495

Цитата(Bloo @ 24.12.2014, 22:06) *
usercn, это что, ты хочешь сказать, авторы должны адаптировать свои плагины ко всем глюкам и недочетом древних как навоз мамонта плагинов?


Давайте поговорим конструктивно.
Где в плагине аптечек, эти аптечки удаляются?
Что там нужно исправить, чтобы не трогался снеговик?
Код:

#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>

#pragma semicolon 1

// Шансы и количества

#define HK_FULL_CHANCE 0 // Процент вероятности выпадение полной аптечки (0 - никогда, 100 - всегда)
#define HK_FULL_HEALTH 100 // Сколько восстанавливает полная аптечка? (Лимит не привышаем)
#define HK_HEADSHOT_CHANCE 100 // Процент вероятности выпадения аптечки при убийстве в голову (0 - никогда, 100 - всегда)
#define HK_HEADSHOT_HEALTH 30 // Сколько восстанавливает аптечка при убийстве в голову? (Лимит не привышаем)
#define HK_NORMAL_CHANCE 100 // Процент вероятности выпадения простой аптечки 0 - никогда, 100 - всегда)
#define HK_NORMAL_HEALTH 20 // Сколько восстанавливает простая аптечка? (Лимит не привышаем)
#define HK_LIMIT_HEALTH 100 // Сколько максимум HP может быть у игроков?

// Эффекты

#define HK_HEALTHKIT_GLOW 1 // Подсвечивать аптечки? (0 - нет, 1 - да)
#define HK_PLAYER_FADE 0 // Затемнять игроку экран при поднятии аптечки? (0 - нет, 1 - да)
#define HK_PLAYER_HUD 1 // Показывать игроку HUD сообщение при поднятии аптечки? (0 - нет, 1 - да)
#define HK_PLAYER_SOUND 1 // Проигрывать звук при поднятии аптечки? (0 - нет, 1 - да)
#define HK_HEALTHKIT_EFFECT 1 // Включить эффект плавного исчезания аптечки? (0 - нет, 1 - да) --- НЕЛЬЗЯ МЕНЯТЬ НА 0

// Другое

#define HK_TOGGLE 0 // Разрешать игрокам отключать и включать поднятие аптечек командой /hk? (0 - нет, 1 - да)
#define HK_ROUND_REMOVE 1 // Убирать аптечки в начале раунда? (0 - нет, 1 - да)
#define HK_LIFE_TIME 30 // Сколько секунд может лежать аптечка? (0 - бесконечно)
#define HK_OWNER_ONLY 0 // Только убийца может подобрать аптечку? (0 - нет, 1 - да, но после смерти или выхода могут все, 2 - да, но после смерти или выхода убрать аптечки, 3 - всегда, но после выхода могут все, 4 - всегда, но после выхода убрать аптечки) [Не советовал бы ставить 1 или 2]

// Дальше трогаем только если есть хоть чутка мозгов

#define min_ex(%1,%2) (%1 <= %2 ? %1 : %2)

new msg_pickup, bool:ham_registred;

#if HK_PLAYER_FADE == 1
new msg_fade;
#endif

#if HK_TOGGLE == 1
new toggle;
#define is_bit(%1) (toggle & (1 << (%1 - 1)))
#define add_bit(%1) (toggle |= (1 << (%1 - 1)))
#define remove_bit(%1) (toggle &= ~(1 << (%1 - 1)))
#endif

public plugin_init()
{
register_plugin("Healthkit", "3.3.1", "Tuty ft. Sho0ter");
#if HK_ROUND_REMOVE == 1
register_event("HLTV", "ev_start", "a", "1=0", "2=0");
#endif
register_event("DeathMsg", "ev_death", "a", "1>0");
#if HK_PLAYER_FADE == 1
msg_fade = get_user_msgid("ScreenFade");
#endif
msg_pickup = get_user_msgid("ItemPickup");
#if HK_TOGGLE == 1
register_clcmd("say /hk", "cmd_toggle");
register_clcmd("say_team /hk", "cmd_toggle");
#endif
return PLUGIN_CONTINUE;
}

#if HK_TOGGLE == 1
public client_putinserver(client_id)
{
if(!is_bit(client_id))
{
add_bit(client_id);
}
return PLUGIN_CONTINUE;
}

public cmd_toggle(client_id)
{
if(!is_bit(client_id))
{
add_bit(client_id);
client_cmd(client_id, "spk activated");
}
else
{
remove_bit(client_id);
client_cmd(client_id, "spk deactivated");
}
return PLUGIN_HANDLED;
}
#endif

public plugin_precache()
{
#if HK_PLAYER_SOUND == 1
precache_sound("items/smallmedkit1.wav");
#endif
return precache_model("models/w_medkit.mdl");
}

public ev_death()
{
#if HK_OWNER_ONLY > 0
new killer_id = read_data(1);
#if HK_TOGGLE == 1
if(!is_bit(killed_id))
{
killed_id = 0;
else
{
#endif
if(!is_user_connected(killer_id))
{
killer_id = 0;
}
#if HK_TOGGLE == 1
}
#endif
#endif
new type, victim_id = read_data(2), chance = random_num(1, 100);
#if HK_OWNER_ONLY == 1 || HK_OWNER_ONLY == 2
remove_owner(victim_id);
#endif
if(chance <= HK_FULL_CHANCE)
{
type = 1;
}
else if(read_data(3))
{
if(chance <= HK_HEADSHOT_CHANCE)
{
type = 2;
}
else
{
return PLUGIN_CONTINUE;
}
}
else if(chance <= HK_NORMAL_CHANCE)
{
type = 3;
}
else
{
return PLUGIN_CONTINUE;
}
new entity;
if(!pev_valid((entity = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target")))))
{
return PLUGIN_CONTINUE;
}
set_pev(entity, pev_classname, "healthkit_entity");
#if HK_OWNER_ONLY > 0
set_pev(entity, pev_owner, killer_id);
#endif
set_pev(entity, pev_iuser1, 0);
engfunc(EngFunc_SetSize, entity, Float:{-23.160000, -13.660000, -0.050000}, Float:{11.470000, 12.780000, 6.720000});
set_pev(entity, pev_solid, SOLID_TRIGGER);
set_pev(entity, pev_movetype, MOVETYPE_TOSS);
new Float:angles[3] = {0.0, 0.0, 0.0};
angles[1] = float(random_num(0, 180));
set_pev(entity, pev_angles, angles);
new Float:origin[3];
pev(victim_id, pev_origin, origin);
engfunc(EngFunc_SetOrigin, entity, origin);
engfunc(EngFunc_SetModel, entity, "models/w_medkit.mdl");
#if HK_HEALTHKIT_GLOW == 1
set_pev(entity, pev_renderfx, kRenderFxGlowShell);
set_pev(entity, pev_rendercolor, type == 1 ? (Float:{255.0, 0.0, 0.0}) : (type == 2 ? (Float:{255.0, 255.0, 0.0}) : (Float:{255.0, 255.0, 255.0})));
set_pev(entity, pev_rendermode, kRenderFxNone);
set_pev(entity, pev_renderamt, 25.0);
#endif
set_pev(entity, pev_health, type == 1 ? float(HK_FULL_HEALTH) : (type == 2 ? float(HK_HEADSHOT_HEALTH) : float(HK_NORMAL_HEALTH)));
#if HK_LIFE_TIME > 0
set_pev(entity, pev_nextthink, get_gametime() + float(HK_LIFE_TIME));
#endif
if(!ham_registred)
{
#if HK_LIFE_TIME > 0
RegisterHamFromEntity(Ham_Think, entity, "ham_think", 1);
#endif
RegisterHamFromEntity(Ham_Touch, entity, "ham_touch", 1);
ham_registred = true;
}
return PLUGIN_CONTINUE;
}

public ham_touch(entity, touch_id)
{
#if HK_TOGGLE == 1
if(!is_bit(touch_id))
{
return HAM_IGNORED;
}
#endif
if(!pev_valid(entity) || !is_user_connected(touch_id))
{
return HAM_IGNORED;
}
#if HK_OWNER_ONLY > 0
new owner = pev(entity, pev_owner);
if(owner && owner != touch_id)
{
return HAM_IGNORED;
}
#endif
new current_hp = pev(touch_id, pev_health);
if(current_hp >= HK_LIMIT_HEALTH)
{
return HAM_IGNORED;
}
new healthkit_value = pev(entity, pev_health);
#if HK_HEALTHKIT_EFFECT == 1
if(!healthkit_value)
{
return HAM_IGNORED;
}
#endif
#if HK_PLAYER_HUD == 1
switch(healthkit_value)
{
case HK_FULL_HEALTH: set_hudmessage(255, 0, 0, -1.0, 0.55, 0, 1.0, 2.0, 1.0, 1.0);
case HK_HEADSHOT_HEALTH: set_hudmessage(255, 255, 0, -1.0, 0.55, 0, 1.0, 2.0, 1.0, 1.0);
case HK_NORMAL_HEALTH: set_hudmessage(255, 255, 255, -1.0, 0.55, 0, 1.0, 2.0, 1.0, 1.0);
}
show_hudmessage(touch_id, "+ %d HP", healthkit_value);
#endif
set_pev(touch_id, pev_health, float(min_ex(current_hp + healthkit_value, HK_LIMIT_HEALTH)));
#if HK_PLAYER_SOUND == 1
emit_sound(touch_id, CHAN_ITEM, "items/smallmedkit1.wav", VOL_NORM, ATTN_NORM , 0, PITCH_NORM);
#endif
message_begin(MSG_ONE_UNRELIABLE, msg_pickup, _, touch_id);
write_string("item_healthkit");
message_end();
#if HK_PLAYER_FADE == 1
message_begin(MSG_ONE_UNRELIABLE, msg_fade , _, touch_id);
write_short(1 << 10);
write_short(1 << 10);
write_short(0x0000);
write_byte(healthkit_value == HK_FULL_HEALTH ? 255 : 0);
write_byte(healthkit_value == HK_HEADSHOT_HEALTH ? 255 : 0);
write_byte(healthkit_value == HK_NORMAL_HEALTH ? 255 : 0);
write_byte(100);
message_end();
#endif
#if HK_HEALTHKIT_EFFECT == 1
return ham_think(entity);
#else
return remove_entity(entity);
#endif
}

public ham_think(entity)
{
if(!pev_valid(entity))
{
return HAM_IGNORED;
}
#if HK_HEALTHKIT_EFFECT == 1
if(pev(entity, pev_rendermode) != kRenderTransAlpha)
{
set_pev(entity, pev_solid, SOLID_NOT);
set_pev(entity, pev_health, 0.0);
set_pev(entity, pev_rendercolor, Float:{0.0, 0.0, 0.0});
set_pev(entity, pev_rendermode, kRenderTransAlpha);
set_pev(entity, pev_renderamt, 250.0);
}
else
{
new amount = pev(entity, pev_renderamt);
if(amount <= 10)
{
return engfunc(EngFunc_RemoveEntity, entity);
}
set_pev(entity, pev_renderamt, float(amount - 10));
}
return set_pev(entity, pev_nextthink, get_gametime() + 0.02);
#else
return engfunc(EngFunc_RemoveEntity, entity);
#endif
}

#if HK_ROUND_REMOVE == 1
public ev_start()
{
new entity;
while((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", "healthkit_entity")))
{
engfunc(EngFunc_RemoveEntity, entity);
}
return PLUGIN_CONTINUE;
}
#endif

#if HK_OWNER_ONLY > 0
public client_disconnect(client_id)
{
return remove_owner(client_id);
}

stock remove_owner(client_id)
{
new entity;
while((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", "healthkit_entity")))
{
if(pev(entity, pev_owner) == client_id)
{
#if HK_OWNER_ONLY == 1 || HK_OWNER_ONLY == 3
set_pev(entity, pev_owner, 0);
#else
#if HK_HEALTHKIT_EFFECT == 1
ham_think(entity);
#else
engfunc(EngFunc_RemoveEntity, entity);
#endif
#endif
}
}
return PLUGIN_CONTINUE;
}
#endif


Просунутий сервер з максимумом зброї, можливо старійший в Україні
[UA] DNET CS Public Server #1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qvadro
сообщение 24.12.2014, 21:23
Сообщение #137


Стаж: 16 лет

Сообщений: 358
Благодарностей: 147
Полезность: 579

Цитата(usercn @ 24.12.2014, 22:04) *
Плагин аптечек работает несколько лет без нареканий.

Он компилируется то с нареканиями сразу же. Не , если как есть тупо скомпилировать как есть всё нормально и без ошибок. Меняем одну цифру #define HK_HEALTHKIT_EFFECT 0 , уже вышибает error 017 .


Достойно парировать, к сожалению, умеют далеко не многие. Нельзя наказывать людей за критику.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s0h
сообщение 24.12.2014, 22:00
Сообщение #138


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Цитата(usercn @ 24.12.2014, 21:18) *
Давайте поговорим конструктивно.
Где в плагине аптечек, эти аптечки удаляются?
Что там нужно исправить, чтобы не трогался снеговик?

Ошибку нашёл за 20 секунд, но сам понимаешь) за бесплатно никто ничего не делает.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 24.12.2014, 22:06
Сообщение #139


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

s0h, Jumpy.gif good.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя usercn
сообщение 24.12.2014, 23:12
Сообщение #140


Стаж: 12 лет

Сообщений: 341
Благодарностей: 140
Полезность: 495

Цитата(qvadro @ 24.12.2014, 21:23) *
Он компилируется то с нареканиями сразу же. Не , если как есть тупо скомпилировать как есть всё нормально и без ошибок. Меняем одну цифру #define HK_HEALTHKIT_EFFECT 0 , уже вышибает error 017 .

В коментариях прямо написано
#define HK_HEALTHKIT_EFFECT 1 // Включить эффект плавного исчезания аптечки? (0 - нет, 1 - да) --- НЕЛЬЗЯ МЕНЯТЬ НА 0

Попрошу опытных программистов рассказать в чем дело.
Где в плагине аптечек, эти аптечки удаляются?
Что там нужно исправить, чтобы не трогался снеговик?




Просунутий сервер з максимумом зброї, можливо старійший в Україні
[UA] DNET CS Public Server #1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
11 страниц V  « 6 7 8 ... 9 10 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: