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

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

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

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

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

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

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

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

Помогите с плагином VAMPIRE

Статус пользователя Rumaru
сообщение 16.10.2012, 0:06
Сообщение #1


Стаж: 13 лет

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

Всем привет.
В общем столкнулся с таким плагином, который в паблике лежит под названием "Vampire".
Суть его в том, что когда вы попадаете в врага, то вам прибавляет жизнь, но мне это не нужно.
В общем вот сам .sma код.
Помогите сделать так, что бы после убийства только экран менялся цветом на некоторое время и все.

P.S. Если есть такой плагин, то скиньте его, пожаоуйста.

КОД ИЗ .SMA ФАЙЛА
Код
/*
*   [url="http://c-s.net.ua/url?u=http%3A%2F%2Fgames.qwerty.ru"]http://games.qwerty.ru[/url]
*
*    AmxModX
*   Vampire plugin
*    by Shalfey
*
*   CVars
*   amx_vampire_hp - hp add for kill
*   amx_vampire_hp_hs - hp add for kill in head
*   amx_vampire_max_hp - max player hp
*
*   Players gets HP for kills.
*/
#include <amxmodx>
#include <fun>

#define PLUGIN_VERSION "1.0c"

new health_add
new health_hs_add
new health_max

new nKiller
new nKiller_hp
new nHp_add
new nHp_max

public plugin_init()
{
   register_plugin("Vampire", PLUGIN_VERSION, "Shalfey")

   health_add = register_cvar("amx_vampire_hp", "15")
   health_hs_add = register_cvar("amx_vampire_hp_hs", "40")
   health_max = register_cvar("amx_vampire_max_hp", "100")

   register_event("DeathMsg", "hook_death", "a", "1>0")     
}

public hook_death()
{
   // Killer id
   nKiller = read_data(1)

   if ( (read_data(3) == 1) && (read_data(5) == 0) )
   {
      nHp_add = get_pcvar_num (health_hs_add)
   }
   else
      nHp_add = get_pcvar_num (health_add)

   nHp_max = get_pcvar_num (health_max)

   // Updating Killer HP
   nKiller_hp = get_user_health(nKiller)
   nKiller_hp += nHp_add

   // Maximum HP check
   if (nKiller_hp > nHp_max) nKiller_hp = nHp_max

   set_user_health(nKiller, nKiller_hp)

   // Hud message "Healed +15/+40 hp"
   set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
   show_hudmessage(nKiller, "Healed +%d hp", nHp_add)

   // Screen fading
   message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
   write_short(1<<10)
   write_short(1<<10)
   write_short(0x0000)
   write_byte(0)
   write_byte(0)
   write_byte(200)
   write_byte(75)
   message_end()
  
}



Отредактировал: Rumaru, - 16.10.2012, 0:07
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя eldon
сообщение 16.10.2012, 0:07
Сообщение #2
Стаж: 17 лет

Сообщений: 70
Благодарностей: 19
Полезность: 76

эм, может поставить чтобы давалось 0 хп? )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
cah9
сообщение 16.10.2012, 0:24
Сообщение #3
Стаж: 13 лет

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

Ищи плагин screenfade
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 16.10.2012, 0:57
Сообщение #4


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

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

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

в amxx.cfg пропиши
amx_vampire_hp 0
amx_vampire_hp_hs 0

Отредактировал: Legenda, - 16.10.2012, 0:58
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 16.10.2012, 1:21
Сообщение #5
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Rumaru, вам нужно, чтобы 'экран менялся цветом' только при убийстве врагов или и на TK? Если, например, DM FFA - то и на TK нужно.

Мне несложно будет из Vampire-плагина от ConnorMcLeod вырезать всё, что hp прибавляет.
Там и с проверками cool всё)

Legenda, совет не ахти, потому что:
- зря будет выполняться код
- зря будут выводиться глупые HUD-сообщения 'Healed +0 hp'
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 16.10.2012, 9:07
Сообщение #6


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

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Цитата(Safety1st @ 16.10.2012, 2:21) *
Rumaru, вам нужно, чтобы 'экран менялся цветом' только при убийстве врагов или и на TK? Если, например, DM FFA - то и на TK нужно.

Мне несложно будет из Vampire-плагина от ConnorMcLeod вырезать всё, что hp прибавляет.
Там и с проверками cool всё)

Legenda, совет не ахти, потому что:
- зря будет выполняться код
- зря будут выводиться глупые HUD-сообщения 'Healed +0 hp'

не зря
в плагине написана комментарии, как он работает - понятно сразу
можно и самому разобраться о том, что удалять надо

автору надо как бы приложить немного усилий к своей голове, а если он не хочет этого - я написал выше то, что надо сделать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя iLLuSioN
сообщение 16.10.2012, 9:14
Сообщение #7
Иконка группы

Стаж: 19 лет

Сообщений: 6911
Благодарностей: 7990
Полезность: 1639

Код
#include <amxmodx>
#include <fun>

new g_Fade

public plugin_init()
{
   register_plugin("KillFade", "1,0", "ill")

   register_event("DeathMsg", "hook_death", "a", "1>0")     
  
   g_Fade = get_user_msgid("ScreenFade")
}

public hook_death()
{
    new nKiller
    nKiller = read_data(1)
    
    if(!is_user_alive(nKiller))
        return
  
    message_begin(MSG_ONE, g_Fade, {0,0,0}, nKiller)
    write_short(1<<10)
    write_short(1<<10)
    write_short(0x0000)
    write_byte(0)
    write_byte(0)
    write_byte(200)
    write_byte(75)
    message_end()
}


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
Статус пользователя Rumaru
сообщение 19.10.2012, 17:47
Сообщение #8


Стаж: 13 лет

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

Спасибо большое, помогло.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 3 гостей читают эту тему: