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

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

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

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

Черепок не падает на земплю

Статус пользователя DRIVE37
сообщение 25.1.2016, 18:58
Сообщение #1


Стаж: 11 лет

Сообщений: 146
Благодарностей: 14
Полезность: 69

Привет все, подскажите пожалуйста, как сделать чтобы он на земле лежал, а не зависал в воздухе?

Код:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <engine>
#include <cstrike>
#include <fun>

#define PLUGIN "4erepki"
#define VERSION "1.0"
#define AUTHOR "Crash94"

enum _: iCoinSequences
{
CoinIdle = 0,
CoinFloat,
CoinSpin
};

new const gCoinModel[ ] = "models/cherepki/skull.mdl";

new cherep[33]
new Float:HudTime[33]

new const gCoinClassname[ ] = "cherep$";

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_event( "DeathMsg", "Hook_DeathMessage", "a" );
register_touch( gCoinClassname, "player", "Forward_TouchCoin" );
RegisterHam(Ham_Spawn, "player", "Spawn_player", 1)
RegisterHam( Ham_Player_PreThink, "player", "bacon_PlayerPreThink" );
}

stock ChatColor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)

replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!team", "^3")

if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}

public Spawn_player(id)
{
if(is_user_alive(id) && is_user_connected(id))
{
++cherep[id]
}
}

public plugin_precache( )
{
precache_model( gCoinModel );
precache_sound("chepepki/pickup_sound.wav")
}

public Hook_DeathMessage( )
{
new iVictim = read_data( 2 );

if( read_data( 1 ) == iVictim )
{
return;
}

new Float:flPlayerOrigin[ 3 ];
pev( iVictim, pev_origin, flPlayerOrigin );

flPlayerOrigin[ 2 ] += 4.0;

new iEntity = create_entity( "info_target" );

if( !pev_valid( iEntity ) )
{
return;
}

if(get_user_team(iVictim) == 2)
{
engfunc( EngFunc_SetOrigin, iEntity, flPlayerOrigin )
set_pev( iEntity, pev_classname, gCoinClassname );
engfunc( EngFunc_SetModel, iEntity, gCoinModel );
set_pev( iEntity, pev_solid, SOLID_SLIDEBOX );
set_pev( iEntity, pev_movetype, MOVETYPE_NONE );
set_pev( iEntity, pev_framerate, 1.0 );
set_pev( iEntity, pev_sequence, CoinFloat );
engfunc( EngFunc_SetSize, iEntity, Float:{ -10.0, -10.0, -10.0 }, Float:{ 10.0, 10.0, 10.0 } );
engfunc( EngFunc_DropToFloor, iEntity );
set_pev( iEntity, pev_nextthink, get_gametime( ) + 1.0 );
set_rendering( iEntity, kRenderFxGlowShell, (random_num(1, 255)), (random_num(1, 255)), (random_num(1, 255)), kRenderNormal, 75 );
}
}

public Forward_TouchCoin( iEntity, id )
{
if( pev_valid( iEntity ) && get_user_team(id) ==1)
{
++cherep[ id ]
client_cmd(0, "spk chepepki/pickup_sound.wav")
set_pev( iEntity, pev_flags, FL_KILLME );
}

return PLUGIN_CONTINUE;
}

public bacon_PlayerPreThink( id )
{
if( is_user_alive( id ) && !is_user_bot( id ) && get_user_team(id) == 1)
{
new Float:flGameTime = get_gametime ( );

if( flGameTime - HudTime[ id ] >= 1.2 )
{
HudTime[ id ] = flGameTime;
set_hudmessage( 255, 127, 42, -1.1, 0.60, 0, 6.0, 1.2);
show_hudmessage(id, "Черепки [%i]", cherep[id]);
}
}
}

Прикрепленные файлы:
Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя 3BEPb
сообщение 26.1.2016, 23:40
Сообщение #2
Стаж: 11 лет

Сообщений: 49
Благодарностей: 8
Полезность: 31

Эта строчка за это отвечает.
Но при её использовании я заметил, что если высота большая и ещё по непонятным причинам. Энтити не всегда падает на землю...

Код:
engfunc( EngFunc_DropToFloor, iEntity );


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