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

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

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

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

No Fail Death

[РЕШЕНО]
Статус пользователя onetwothree
сообщение 19.3.2017, 5:34
Сообщение #1


Стаж: 9 лет 4 месяца
Город: Toronto

Сообщений: 406
Благодарностей: 133
Полезность: 522

всем привет

установил No Fail Death, вроде бы все было замечательно, но спустя несколько минут или при смены карты перестает работать..
посмотрите, пожалуйста thank_you2.gif

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

// ------------------------------------
new const PLUGIN[] = "No Fall Death"
#define VERSION "1.0"
// ------------------------------------

#define RANDOM_MIN_VALUE 1.0
#define REGENERATE_MIN_VALUE 1.0

new Float: Health[ 33 ];

const PermissionFlag = ADMIN_MENU
new HasPermissions[32]

new toggle_plugin, toggle_interval, toggle_amount;
new p_plugin, p_int, p_amount;
new g_msghealth;

public plugin_init()
{
register_plugin( PLUGIN, VERSION, "anakin_cstrike" );

register_logevent( "roundstart", 2, "1=Round_Start" );
RegisterHam( Ham_TakeDamage, "player", "ham_damage" );

toggle_plugin = register_cvar( "nfd_plugin", "1" );
toggle_interval = register_cvar( "nfd_interval", "5" );
toggle_amount = register_cvar( "ndf_amount", "3" );

g_msghealth = get_user_msgid( "Health" );
}
public roundstart()
{
p_plugin = get_pcvar_num( toggle_plugin );
p_int = get_pcvar_num( toggle_interval );
p_amount = get_pcvar_num( toggle_amount );
}

public client_authorized(id)
{
HasPermissions[id] = get_user_flags(id) & PermissionFlag
}

public ham_damage( this, inflictor, attacker, Float:damage, damagebits )
{
if( !p_plugin )
return FMRES_IGNORED;
if (!HasPermissions[this])
return HAM_IGNORED;
if( !( damagebits & DMG_FALL ) )
return HAM_IGNORED;

if( task_exists( this+123 ) )
remove_task( this+123 );

pev( this, pev_health, Health[ this ] );

switch( p_plugin )
{
case 1: return HAM_SUPERCEDE;
case 2:
{
if( Check( damage, Health[ this ] ) )
{
SetHealth( this, random_float( RANDOM_MIN_VALUE, Health[ this ] ) );
return HAM_SUPERCEDE;
}
}
case 3:
{
if( Check( damage, Health[ this ] ) )
{
if( task_exists( this+123 ) )
remove_task( this+123 );

SetHealth( this, REGENERATE_MIN_VALUE );
set_task( float( p_int ), "give", this+123, _, _, "b" );

return HAM_SUPERCEDE;
}
}
}

return HAM_IGNORED;
}

public give( index )
{
index -= 123;

new Float: hp;
pev( index, pev_health, hp );

new Float: total = hp + float( p_amount );
SetHealth( index, total );

if( hp >= Health[ index ] )
{
SetHealth( index, Health[ index ] );
remove_task( index );
return 0;
}

return 0;
}

SetHealth( index, Float: hp )
{
message_begin( MSG_ONE, g_msghealth, {0,0,0}, index );
write_byte( floatround( hp ) );
message_end();

set_pev( index, pev_health, hp );
}

bool: Check( Float:value, Float:compare )
return ( value >= compare ) ? true : false;


здесь могла бы быть ваша реклама.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя VEN
сообщение 19.3.2017, 16:53
Сообщение #2
Стаж: 9 лет 1 месяц

Сообщений: 418
Благодарностей: 129
Полезность: 199

Лучше исходник прикрепляй такое смотреть мало кому приятно.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onetwothree
сообщение 19.3.2017, 18:43
Сообщение #3


Стаж: 9 лет 4 месяца
Город: Toronto

Сообщений: 406
Благодарностей: 133
Полезность: 522

при рестарте сервера и после смены карты отключается


здесь могла бы быть ваша реклама.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя VEN
сообщение 19.3.2017, 20:22
Сообщение #4
Стаж: 9 лет 1 месяц

Сообщений: 418
Благодарностей: 129
Полезность: 199

new HasPermissions[33]
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 19.3.2017, 21:53
Сообщение #5


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

VEN, тебя так воодушевил Вен, что ты решил скомуниздить его ник ?)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя onetwothree
сообщение 20.3.2017, 9:14
Сообщение #6


Стаж: 9 лет 4 месяца
Город: Toronto

Сообщений: 406
Благодарностей: 133
Полезность: 522

Цитата(VEN @ 19.3.2017, 21:22) *
new HasPermissions[33]


Бесполезно..


здесь могла бы быть ваша реклама.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя VEN
сообщение 20.3.2017, 16:06
Сообщение #7
Стаж: 9 лет 1 месяц

Сообщений: 418
Благодарностей: 129
Полезность: 199

Ставь debug смотри логи)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя fl0werD
сообщение 20.3.2017, 22:50
Сообщение #8
Стаж: 9 лет 2 месяца

Сообщений: 155
Благодарностей: 114
Полезность: 692


public client_authorized(id)
{
HasPermissions[id] = get_user_flags(id) & PermissionFlag ? 1: 0;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onetwothree
сообщение 21.3.2017, 0:59
Сообщение #9


Стаж: 9 лет 4 месяца
Город: Toronto

Сообщений: 406
Благодарностей: 133
Полезность: 522

fl0werD, fl0werD,

все равно...


здесь могла бы быть ваша реклама.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя fl0werD
сообщение 22.3.2017, 2:47
Сообщение #10
Стаж: 9 лет 2 месяца

Сообщений: 155
Благодарностей: 114
Полезность: 692

Не тестировал, но должно работать.
Код:
#include < amxmodx >
#include < hamsandwich >
#include < hlsdk_const >


public plugin_init( )
{
register_plugin("No Fall Damage", "Best", "whore (fl0wer)" );

RegisterHam( Ham_TakeDamage, "player", "CPlayer__TakeDamage_Pre", .Post = 0 );
}

public CPlayer__TakeDamage_Pre( iEntity, iInflictor, iAttacker, Float: flDamage, bitsDamageType )
{
return ( bitsDamageType & DMG_FALL
&& get_user_flags( iEntity ) & ADMIN_MENU ) ?
HAM_SUPERCEDE : HAM_IGNORED;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onetwothree
сообщение 22.3.2017, 15:21
Сообщение #11


Стаж: 9 лет 4 месяца
Город: Toronto

Сообщений: 406
Благодарностей: 133
Полезность: 522

[b]fl0werD, Спасибо! Работает!


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