Версия : 1.0
Описание : Плагин выдаёт каждому из игроков одну из шести имеющихся хэллоуинских шапок. Выдача шапки происходит рандомно.
Имеется команда /shat , с помощью которой игрок может убрать , а также вернуть шапку.
P.S Быть может уже и поздно , но всё же решил поделиться.
Используемые модули :
- Engine
- Hamsandwich
- Код: Выделить всё
#include < amxmodx >
#include < engine >
#include < hamsandwich >
const MAX_PLAYERS = 32;
const iNumSubModel = 6;
new const g_szModelHats[ ] = "models/HalloweenHats/HalloweenHats.mdl";
new g_iHatPlayer[ MAX_PLAYERS + 1 ];
public plugin_precache( ) precache_model( g_szModelHats );
public plugin_init( )
{
register_clcmd( "say /shat" , "Clcmd_SwitchHats" );
RegisterHam( Ham_Spawn , "player" , "FwdHamSpawnPlayer_Post" , 1 );
}
public Clcmd_SwitchHats( indexPl )
{
if( !RemoveHatPlayer( indexPl , false ) )
CreateHatPlayer( indexPl );
return 1;
}
public FwdHamSpawnPlayer_Post( indexPl )
{
new indexHat = g_iHatPlayer[ indexPl ];
if( !is_user_alive( indexPl ) || indexHat == -1 || is_valid_ent( indexHat ) )
return 1;
CreateHatPlayer( indexPl );
return 1;
}
public client_disconnect( indexPl )
RemoveHatPlayer( indexPl );
CreateHatPlayer( indexPl )
{
new indexHat = g_iHatPlayer[ indexPl ] = create_entity( "info_target" );
entity_set_string( indexHat , EV_SZ_classname , "HalloweenHat" );
entity_set_int( indexHat , EV_INT_movetype , MOVETYPE_FOLLOW ) ;
entity_set_int( indexHat , EV_INT_body , random( iNumSubModel ) );
entity_set_edict( indexHat , EV_ENT_aiment, indexPl );
entity_set_model( indexHat , g_szModelHats );
}
RemoveHatPlayer( indexPl , bool:Switch = true )
{
if( !is_valid_ent( g_iHatPlayer[ indexPl ] ) )
return 0;
entity_set_int( g_iHatPlayer[ indexPl ] , EV_INT_flags , FL_KILLME );
entity_set_float( g_iHatPlayer[ indexPl ] , EV_FL_nextthink , get_gametime( ) );
g_iHatPlayer[ indexPl ] = Switch ? 0 : -1;
return 1;
}
Благодарности :
Вы должны зарегистрироваться, чтобы видеть ссылки. - за модели шапок.
Вы должны зарегистрироваться, чтобы видеть ссылки. - за замечание в коде.
Утверждено.//sa1me