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

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

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

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

14 страниц V  « 8 9 10 ... 12 13 »

Crux Ansata. Плагин добавляет талисман жизни.

Статус пользователя Dukkhaz0r
сообщение 11.6.2015, 11:23
Сообщение #161


Стаж: 12 лет

Сообщений: 343
Благодарностей: 294
Полезность: 812

Спасибо ssx за то, что делает мою работу :D


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 11.6.2015, 11:33
Сообщение #162


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата(Dukkhaz0r @ 11.6.2015, 12:23) *
Спасибо ssx за то, что делает мою работу :D

Я лишь подкидываю идеи для развития...

У меня еще много идей.. например то что бы при поднимании сходу давать +25hp или +25ap если 100хп
Или же только ХП а если больше 100 то отнимать по 1хп каждую секунду пока 100 не станет.
Или же сделать талисману накопление жизней.. чем дольше лежит - тем больше при поднятии даст хп\ап

Сейчас буду реализовывать таймер в течении которого времени надо поднять талисман или его выдаст кому-то рандомно (пока что с точками спавна не хочу заморачиваться)

Ауру нормальную надо сделать.. как для выпавшего талисмана так и для игрока бегающего с ним. рендеринга максимально зеленым недостаточно.. нужно что бы обладатель талисмана привлекал внимание и все его первым валили. (Только HardGame)

Отредактировал: ssx, - 11.6.2015, 11:35


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя Dukkhaz0r
сообщение 11.6.2015, 11:45
Сообщение #163


Стаж: 12 лет

Сообщений: 343
Благодарностей: 294
Полезность: 812

ssx, идеи действительно стоящие, что-нибудь из этого обязательно реализую.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя sot100
сообщение 11.6.2015, 13:22
Сообщение #164


Стаж: 18 лет

Сообщений: 1695
Благодарностей: 500
Полезность: 711

Круто, последние поправки поставил (кроме AP)


https://vk.com/club_megamozg
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 11.6.2015, 13:56
Сообщение #165


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Нашел как сделать ауру игроку или модельке.. пример как игроку



в функцию public RegenerationHealth() добавить
Код:
		static Float:origin[3];
pev(g_iPlayerId,pev_origin,origin);

message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
write_byte(27); // TE_DLIGHT
write_coord(floatround(origin[0])); // x
write_coord(floatround(origin[1])); // y
write_coord(floatround(origin[2])); // z
write_byte(50); // radius
write_byte(0); // r
write_byte(255); // g
write_byte(0); // b
write_byte(20); // life 20 = 2 sec
write_byte(60); // decay rate
message_end();


Отредактировал: ssx, - 11.6.2015, 13:58


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 11.6.2015, 14:28
Сообщение #166


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Заметил падения сервера при смене карты а конкретнее при amx_rcon restart

Код
L 06/11/2015 - 15:19:03: [admincmd.amxx] Cmd: "MyName<1><STEAM_0:0:6661488228><>" server console (cmdline "restart ")
L 06/11/2015 - 15:19:03: [META] (debug:3) Calling dproto.dll:ServerDeactivate()
L 06/11/2015 - 15:19:03: [META] (debug:3) Calling amxmodx_mm.dll:ServerDeactivate()
Host_Error: no precache: models/crux_ansata.mdl

L 06/11/2015 - 15:19:03: [META] (debug:3) Calling dproto.dll:ServerDeactivate()
L 06/11/2015 - 15:19:03: [META] (debug:3) Calling amxmodx_mm.dll:ServerDeactivate()
L 06/11/2015 - 15:19:03: [META] (debug:3) Calling hl.dll:Sys_Error()
L 06/11/2015 - 15:19:03: FATAL ERROR (shutting down): Host_Error: recursively entered


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
gamerman
сообщение 11.6.2015, 16:32
Сообщение #167
Стаж: 11 лет

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

Может релиз запилите. ато одна болтовня, куча доработок а потестить нечего
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя sot100
сообщение 11.6.2015, 16:41
Сообщение #168


Стаж: 18 лет

Сообщений: 1695
Благодарностей: 500
Полезность: 711

Цитата(gamerman @ 11.6.2015, 17:32) *
Может релиз запилите. ато одна болтовня, куча доработок а потестить нечего


Собирай и компилируй.


https://vk.com/club_megamozg
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
gamerman
сообщение 11.6.2015, 17:02
Сообщение #169
Стаж: 11 лет

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

дак всё смешалось, кто обычный плагин под паблик пилит,
подмешались ещё с ДМ сервером
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Dukkhaz0r
сообщение 11.6.2015, 17:05
Сообщение #170


Стаж: 12 лет

Сообщений: 343
Благодарностей: 294
Полезность: 812

gamerman, релиз давно в шапке висит, то чем занимается ssx это добровольное дело.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
gamerman
сообщение 11.6.2015, 17:08
Сообщение #171
Стаж: 11 лет

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

Цитата(Dukkhaz0r @ 11.6.2015, 21:05) *
gamerman, релиз давно в шапке висит, то чем занимается ssx это добровольное дело.

так он сырой.
1. нужно убрать повторы сообщений при поднятие талисмана
2. вывод модели сделать на 30-50 см ниже
3. добавить возможность чтобы талисман не терялся если игрок жив и начинается новый раунд
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Dukkhaz0r
сообщение 11.6.2015, 17:32
Сообщение #172


Стаж: 12 лет

Сообщений: 343
Благодарностей: 294
Полезность: 812

gamerman, 2 и 3 это уже больше твои потребности, а не баги плагина. В этом и вся фишка, что талисман дается рандомному игроку каждый раунд.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
gamerman
сообщение 11.6.2015, 22:07
Сообщение #173
Стаж: 11 лет

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

Хотя бы повторы сообщений уберите, бывает по 2-3, а очень редко по 4-5 подряд
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 11.6.2015, 23:41
Сообщение #174


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата(gamerman @ 11.6.2015, 23:07) *
Хотя бы повторы сообщений уберите, бывает по 2-3, а очень редко по 4-5 подряд

Я как не пытался - повторы убрать не могу. Мне для ДМ нужен плагин, поэтому я в скором времени вообще уберу вывод в чат сообщения ибо чат флуд сильный .

Не знаю на счет релиза под паблик, я пилю в своем направлении под ДМ (ХЛДМ/КСДМ)


На этом этапе код:
Код:
#include <amxmodx>
#include <engine>
#include <fakemeta_util>

#define GIVE_HEALTH 2
#define GIVE_ARMOR 1
#define INTERVAL_REGENERATION 1.0

new const g_szModel[] = "models/crux_ansata.mdl";
new g_iPlayerId, szName[32];

public plugin_init()
{
register_plugin("Crux Ansata", "1.0", "DUKKHAZ0R");
register_touch("crux_ansata", "player", "fw_TouchEntity");
register_event("DeathMsg", "eDeathMsg", "a", "1>0");
register_concmd("talisman", "GiveTalisman");
set_task(INTERVAL_REGENERATION, "RegenerationHealth", .flags="b");
}

public plugin_precache()
{
precache_model(g_szModel);
}

public client_disconnect(id)
{
if(g_iPlayerId == id)
{
static Float:flOrigin[3];
new iEnt = create_entity("info_target");

if(!is_valid_ent(iEnt))
return;

entity_get_vector(id, EV_VEC_origin, flOrigin);
entity_set_vector(iEnt, EV_VEC_origin, flOrigin);
entity_set_string(iEnt, EV_SZ_classname, "crux_ansata");
entity_set_int(iEnt, EV_INT_solid, SOLID_TRIGGER);
// entity_set_int(iEnt, EV_INT_movetype, MOVETYPE_NONE);
entity_set_int(iEnt, EV_INT_movetype, MOVETYPE_TOSS);
// entity_set_int(iEnt, EV_INT_effects, 8);
fm_set_rendering(iEnt,kRenderFxGlowShell,0,250,0,kRenderNormal,32);
entity_set_model(iEnt, g_szModel);
entity_set_size(iEnt, Float:{-16.0,-16.0,-16.0}, Float:{16.0,16.0,16.0});

client_print(0,print_chat,"%s lost the talisman!", szName);
g_iPlayerId = 0;
}
}

public GiveTalisman(id)
{
static iEnt;

while((iEnt = find_ent_by_class(iEnt, "crux_ansata")))
remove_entity(iEnt);

g_iPlayerId = id
get_user_name(g_iPlayerId, szName, charsmax(szName));
client_print(0,print_chat,"%s have the talisman!", szName);

fm_set_rendering(id,kRenderFxGlowShell,0,250,0,kRenderNormal,32);

}

public eDeathMsg()
{
static pVictim, Float:flOrigin[3]; pVictim = read_data(2);

if(pVictim == g_iPlayerId)
{
new iEnt = create_entity("info_target");

if(!is_valid_ent(iEnt))
return;

entity_get_vector(pVictim, EV_VEC_origin, flOrigin);
entity_set_vector(iEnt, EV_VEC_origin, flOrigin);
entity_set_string(iEnt, EV_SZ_classname, "crux_ansata");
entity_set_int(iEnt, EV_INT_solid, SOLID_TRIGGER);
// entity_set_int(iEnt, EV_INT_movetype, MOVETYPE_NONE);
entity_set_int(iEnt, EV_INT_movetype, MOVETYPE_TOSS);
// entity_set_int(iEnt, EV_INT_effects, 8);
fm_set_rendering(iEnt,kRenderFxGlowShell,0,250,0,kRenderNormal,32);
entity_set_model(iEnt, g_szModel);
entity_set_size(iEnt, Float:{-16.0,-16.0,-16.0}, Float:{16.0,16.0,16.0});

client_print(0,print_chat,"%s lost the talisman!", szName);
g_iPlayerId = 0;


}
}

public fw_TouchEntity(iEnt, id)
{
if(!is_valid_ent(iEnt) || !is_user_alive(id))
return;

entity_set_int(iEnt, EV_INT_flags, FL_KILLME);
fm_set_rendering(id,kRenderFxGlowShell,0,250,0,kRenderNormal,32);

get_user_name(g_iPlayerId = id, szName, charsmax(szName));
client_print(0,print_chat,"%s took the talisman!", szName);
}

public RegenerationHealth()
{
if(!g_iPlayerId)
return;

static Float:fHealth, MsgId_Health; fHealth = entity_get_float(g_iPlayerId, EV_FL_health);
static Float:fArmor, MsgId_Armor; fArmor = entity_get_float(g_iPlayerId, EV_FL_armorvalue);

if(!MsgId_Health) MsgId_Health = get_user_msgid("Health");

if(fHealth < 100 && is_user_alive(g_iPlayerId))
{
static Float:giveHealth; giveHealth = (fHealth + GIVE_HEALTH) < 100 ? float(GIVE_HEALTH) : (100 - fHealth);
entity_set_float(g_iPlayerId, EV_FL_health, fHealth + giveHealth);
}
else if(fArmor < 100 && is_user_alive(g_iPlayerId))
{
static Float:giveArmor; giveArmor = (fArmor + GIVE_ARMOR) < 100 ? float(GIVE_ARMOR) : (100 - fArmor);
entity_set_float(g_iPlayerId, EV_FL_armorvalue, fArmor + giveArmor);
}


// static Float:origin[3];
// pev(g_iPlayerId,pev_origin,origin);

// message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
// write_byte(27); // TE_DLIGHT
// write_coord(floatround(origin[0])); // x
// write_coord(floatround(origin[1])); // y
// write_coord(floatround(origin[2])); // z
// write_byte(15); // radius
// write_byte(0); // r
// write_byte(100); // g
// write_byte(0); // b
// write_byte(100); // life <<<<<<<<
// write_byte(10); // decay rate
// message_end();
}

То что писал выше - не просто болтовня, со временем (если кто раньше не выкладывал) запилю всё задуманное.

П.С. Для пабликов лучше не рендомом давать а лучшему в предыдущем раунде.

Отредактировал: ssx, - 11.6.2015, 23:43


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
gamerman
сообщение 12.6.2015, 15:11
Сообщение #175
Стаж: 11 лет

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

К сожалению, наверно не только вывод сообщения о поднятии выполняется по нескольку раз,
там наверно вся функция по 2-3-4-5 раз выполняется.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
gamerman
сообщение 13.6.2015, 8:33
Сообщение #176
Стаж: 11 лет

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

Цитата(gamerman @ 12.6.2015, 19:11) *
К сожалению, наверно не только вывод сообщения о поднятии выполняется по нескольку раз,
там наверно вся функция по 2-3-4-5 раз выполняется.


Может опытные скриптеры помогут?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Dukkhaz0r
сообщение 14.6.2015, 11:41
Сообщение #177


Стаж: 12 лет

Сообщений: 343
Благодарностей: 294
Полезность: 812

Обновленный архив в первом посте.
-Исправлен баг с повторением сообщения о поднятии талисмана.
-Добавлен макрос SCREENFADE для включения/выключения затемнения экрана при регенерации здоровья.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя ssx
сообщение 14.6.2015, 12:03
Сообщение #178


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Правильней будет:

Код:
public fw_TouchEntity(iEnt, id)
{
if(!is_valid_ent(iEnt) || g_iPlayerId)


-->
Код:
public fw_TouchEntity(iEnt, id)
{
if(!is_valid_ent(iEnt) || !is_user_alive(id))


Что бы не было так что тебя убили и ты потерял и сразу поднял , появляешься живым с талисманом.


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Dukkhaz0r
сообщение 14.6.2015, 12:07
Сообщение #179


Стаж: 12 лет

Сообщений: 343
Благодарностей: 294
Полезность: 812

ssx, такого не будет, потому что после убийства появляется талисман, когда человек уже мертвый.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 14.6.2015, 12:08
Сообщение #180


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Цитата(Dukkhaz0r @ 14.6.2015, 13:07) *
ssx, такого не будет, потому что после убийства появляется талисман, когда человек уже мертвый.

Ну я вот тестирую и у меня так.

Отредактировал: ssx, - 14.6.2015, 12:13
Прикрепленные файлы:
Прикрепленное изображение


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
14 страниц V  « 8 9 10 ... 12 13 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: