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

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

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

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

> Правила форума

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

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

Аптечка с HP.

, Изменить.
Статус пользователя izymcs
сообщение 6.1.2014, 5:33
Сообщение #1


Стаж: 12 лет

Сообщений: 203
Благодарностей: 9
Полезность: 48

CODE

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

new g_Smoke;

public plugin_init()
{
register_plugin("Health Box", "1.0, "Ons")

register_event("HLTV", "EventNewRound", "a", "1=0", "2=0")

register_touch("player", "health_box", "PlayerTouchHealthBox")
register_think("health_box", "ThinkHealthBox")

RegisterHam(Ham_Killed, "player", "PlayerKilledPost", 1)
}

public plugin_precache()
{
precache_model("models/HealthBox.mdl")
g_Smoke = precache_model("sprites/steam1.spr")
}

public EventNewRound()
{
static entity;
entity = -1;

while((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", "health_box")))
{
remove_entity(entity)
}
}

public ThinkHealthBox(entity)
{
static Float:vecOrigin[3];
entity_get_vector(entity, EV_VEC_origin, vecOrigin)

engfunc(EngFunc_MessageBegin, MSG_BROADCAST, SVC_TEMPENTITY, vecOrigin, 0)
write_byte(5)
engfunc(EngFunc_WriteCoord, vecOrigin[0])
engfunc(EngFunc_WriteCoord, vecOrigin[1])
engfunc(EngFunc_WriteCoord, vecOrigin[2])
write_short(g_Smoke)
write_byte(10)
write_byte(15)
message_end()

remove_entity(entity)
}

public PlayerTouchHealthBox(player, box)
{
SetUserHealth(player, entity_get_float(player, EV_FL_health) + 10.0, 100.0)
remove_entity(box)
}

public PlayerKilledPost(victim, attacker)
{
if(!is_user_connected(attacker))
return;

static Float:vecOrigin[3];
entity_get_vector(victim, EV_VEC_origin, vecOrigin)

CreateHealthBox(vecOrigin)
}

SetUserHealth(id, Float:amount, Float:max)
{
if(amount > max)
amount = max;

entity_set_float(id, EV_FL_health, amount)
}

CreateHealthBox(Float:vecOrigin[3])
{
new iEnt = create_entity("info_target");

if(!is_valid_ent(iEnt))
return;

entity_set_string(iEnt, EV_SZ_classname, "health_box")
entity_set_model(iEnt, "models/HealthBox.mdl")
entity_set_size(iEnt, Float:{ -10.0, -10.0, 0.0 }, Float:{ 10.0, 10.0, 25.0 })
entity_set_int(iEnt, EV_INT_solid, SOLID_BBOX)
entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 10.0)
entity_set_origin(iEnt, vecOrigin)
entity_set_int(iEnt, EV_INT_movetype, MOVETYPE_NOCLIP)
drop_to_floor(iEnt)
}


Ребята, помогите, пожалуйста, изменить кол-во выдаваемых хп и время, сколько пролежит моделька аптечки на земле. Быстро пропадает.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя winzh1
сообщение 6.1.2014, 6:30
Сообщение #2


Стаж: 14 лет

Сообщений: 1414
Благодарностей: 600
Полезность: 838

Возможно, эта строка отвечает за время и количество хп
Код:
SetUserHealth(player, entity_get_float(player, EV_FL_health) + 10.0, 100.0)


Установлю и настрою FreshBans, DopBan.
Писать в ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя izymcs
сообщение 6.1.2014, 6:31
Сообщение #3


Стаж: 12 лет

Сообщений: 203
Благодарностей: 9
Полезность: 48

Цитата(winzh1 @ 6.1.2014, 8:30) *
Возможно, эта строка отвечает за время и количество хп
Код:
SetUserHealth(player, entity_get_float(player, EV_FL_health) + 10.0, 100.0)


Спасибо, но хотелось бы точно узнать. Тут только, наверное, только сколько хп прибавится.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fred Perry
сообщение 6.1.2014, 6:33
Сообщение #4


Иконка группы

Стаж: 16 лет

Сообщений: 6594
Благодарностей: 2370
Полезность: 813

А вот время
Код
entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 10.0)


Гнилой фашистской нечисти
Загоним пулю в лоб,
Отродью человечества
Сколотим крепкий гроб!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя winzh1
сообщение 6.1.2014, 6:33
Сообщение #5


Стаж: 14 лет

Сообщений: 1414
Благодарностей: 600
Полезность: 838

Цитата(izymcs @ 6.1.2014, 11:31) *
Спасибо, но хотелось бы точно узнать. Тут только, наверное, только сколько хп прибавится.

Вот ещё время
Код:
entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 10.0)


Установлю и настрою FreshBans, DopBan.
Писать в ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Fred Perry
сообщение 6.1.2014, 6:36
Сообщение #6


Иконка группы

Стаж: 16 лет

Сообщений: 6594
Благодарностей: 2370
Полезность: 813

Цитата(izymcs @ 6.1.2014, 6:31) *
Спасибо, но хотелось бы точно узнать. Тут только, наверное, только сколько хп прибавится.

Что именно Вас интересует?


Гнилой фашистской нечисти
Загоним пулю в лоб,
Отродью человечества
Сколотим крепкий гроб!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя izymcs
сообщение 6.1.2014, 6:37
Сообщение #7


Стаж: 12 лет

Сообщений: 203
Благодарностей: 9
Полезность: 48

Цитата(Fred Perry @ 6.1.2014, 8:36) *
Что именно Вас интересует?


То, что изменили кол-во прибавляемых HP не скажется на максимальное кол-во hp у игрока? Вместо 100 не станет 110? Не будет конфликтов?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fred Perry
сообщение 6.1.2014, 6:40
Сообщение #8


Иконка группы

Стаж: 16 лет

Сообщений: 6594
Благодарностей: 2370
Полезность: 813

Смотрите внимательно на эту строку
Код
SetUserHealth(player, entity_get_float(player, EV_FL_health) + 10.0, 100.0)

И на этот кусок кода
Код
SetUserHealth(id, Float:amount, Float:max){
if(amount > max)
amount = max;

Entity_set_float(id, EV_FL_health, amount)
}


Вы прибавляете по 10 до максимума, где максимум это 100


Гнилой фашистской нечисти
Загоним пулю в лоб,
Отродью человечества
Сколотим крепкий гроб!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя izymcs
сообщение 6.1.2014, 11:27
Сообщение #9


Стаж: 12 лет

Сообщений: 203
Благодарностей: 9
Полезность: 48

Цитата(Fred Perry @ 6.1.2014, 8:40) *
Смотрите внимательно на эту строку
Код
SetUserHealth(player, entity_get_float(player, EV_FL_health) + 10.0, 100.0)

И на этот кусок кода
Код
SetUserHealth(id, Float:amount, Float:max){
if(amount > max)
amount = max;

Entity_set_float(id, EV_FL_health, amount)
}


Вы прибавляете по 10 до максимума, где максимум это 100


Спасибо!!! =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: