Veteran Member
Join Date: Feb 2007
Location: Tennessee
|
![Old](images/statusicon/post_old.svg)
11-04-2010
, 18:59
Re: End round .tga
|
#73
|
Quote:
Originally Posted by krededk99
It's the plugin in this thread.... that exolent posted. He is still working on it, its not finished yet.
|
I was waiting on someone to post the sprite, but I suppose I can work on the plugin now.
EDIT: Try this. Works for models (might not with weapon models) and sprites (must be angle-oriented, see bottom of post):
PHP Code:
#include < amxmodx > #include < xs > #include < engine > #include < cstrike > #include < fakemeta > #include < hamsandwich >
#define DISTANCE_FROM_PLAYER 32.0 #define HEIGHT_OFFSET 0.0
new const g_szWinModels[ CsTeams ][ ] = { "", "models/zombie_plague/zombie_win.mdl", "models/zombie_plague/human_win.mdl", "" };
new bool:g_bIsModel[ CsTeams ];
#define MAX_PLAYERS 32
new g_iEntity[ MAX_PLAYERS + 1 ]; new bool:g_bModel[ MAX_PLAYERS + 1 ];
#define HasWinMessage(%1) ( g_iEntity[ %1 ] != 0 )
new g_iMaxPlayers;
public plugin_precache( ) { precache_model( g_szWinModels[ CS_TEAM_T ] ); precache_model( g_szWinModels[ CS_TEAM_CT ] ); g_bIsModel[ CS_TEAM_T ] = ( contain( g_szWinModels[ CS_TEAM_T ], ".mdl" ) > 0 ); g_bIsModel[ CS_TEAM_CT ] = ( contain( g_szWinModels[ CS_TEAM_CT ], ".mdl" ) > 0 ); }
public plugin_init( ) { register_plugin( "Win Message on HUD", "0.0.1", "Exolent" ); register_event( "SendAudio", "EventSendAudio_MRAD_terwin", "a", "2&%!MRAD_terwin" ); register_event( "SendAudio", "EventSendAudio_MRAD_ctwin", "a", "2&%!MRAD_ctwin" ); register_event( "HLTV", "EventNewRound", "a", "1=0", "2=0" ); RegisterHam( Ham_Killed, "player", "FwdPlayerKilledPost", 1 ); g_iMaxPlayers = get_maxplayers( ); }
public client_disconnect( iPlayer ) { RemoveWinMessage( iPlayer ); }
public EventSendAudio_MRAD_terwin( ) { ShowRoundEndMessage( CS_TEAM_T ); }
public EventSendAudio_MRAD_ctwin( ) { ShowRoundEndMessage( CS_TEAM_CT ); }
public EventNewRound( ) { for( new i = 1; i <= g_iMaxPlayers; i++ ) { RemoveWinMessage( i ); } }
public FwdPlayerKilledPost( iVictim, iKiller, bShouldGib ) { RemoveWinMessage( iVictim ); }
public client_PreThink( iPlayer ) { if( HasWinMessage( iPlayer ) ) { new iEntity = g_iEntity[ iPlayer ]; new Float:vecOrigin[ 3 ], Float:vecAngles[ 3 ]; entity_get_vector( iPlayer, EV_VEC_origin, vecOrigin ); entity_get_vector( iPlayer, EV_VEC_view_ofs, vecAngles ); xs_vec_add( vecOrigin, vecAngles, vecOrigin ); entity_get_vector( iPlayer, EV_VEC_v_angle, vecAngles ); engfunc( EngFunc_MakeVectors, vecAngles ); get_global_vector( GL_v_forward, vecAngles ); xs_vec_mul_scalar( vecAngles, DISTANCE_FROM_PLAYER, vecAngles ); vecAngles[ 2 ] += HEIGHT_OFFSET; xs_vec_add( vecOrigin, vecAngles, vecAngles ); entity_set_origin( iEntity, vecAngles ); xs_vec_sub( vecAngles, vecOrigin, vecAngles ); xs_vec_normalize( vecAngles, vecAngles ); vecAngles[ 0 ] *= -1; vecAngles[ 1 ] *= -1; if( g_bModel[ iPlayer ] ) { vecAngles[ 2 ] *= -1; } vector_to_angle( vecAngles, vecAngles ); entity_set_vector( iEntity, EV_VEC_angles, vecAngles ); } }
ShowRoundEndMessage( CsTeams:iWinningTeam ) { for( new i = 1; i <= g_iMaxPlayers; i++ ) { if( is_user_alive( i ) ) { g_iEntity[ i ] = ShowWinMessage( iWinningTeam ); g_bModel[ i ] = g_bIsModel[ iWinningTeam ]; } } }
ShowWinMessage( CsTeams:iWinningTeam ) { new iEntity = create_entity( "info_target" ); if( !is_valid_ent( iEntity ) ) { return 0; } entity_set_model( iEntity, g_szWinModels[ iWinningTeam ] ); entity_set_int( iEntity, EV_INT_solid, SOLID_NOT ); entity_set_int( iEntity, EV_INT_movetype, MOVETYPE_NONE ); return iEntity; }
RemoveWinMessage( iPlayer ) { if( HasWinMessage( iPlayer ) ) { remove_entity( g_iEntity[ iPlayer ] ); g_iEntity[ iPlayer ] = 0; } }
How to make sprite angle-oriented:
Quote:
Sprite: Convert a bitmap to a sprite.
Detail:
1. Make a .bmp file, preferably with width and length that are multiples of 8. Remember, the width * height must not exceed 10752.
1. Make a .bmp file, with whatever dimensions you want! Sprite Explorer gave me warnings with oddly sized sprites but they work just fine.
If the width * height of the sprite exceeds 10752, or if the width or height of the sprite is not a multiple of 8, you may encounter the error below:
Fatal Error GL_Upload16: s&3
To resolve the problem, recreate the sprite and try again. There is no definite solution that I am aware of.
2. You must save the .bmp in Indexed Mode, NOT RGB Mode. RGB will work, but the sprite will have odd colors.
3. Open a sprite creator like Sprite Explorer. Select "File>New Sprite", add your .bmp file(s), and save your sprite. To make an animated sprite just add all the frames during this step.
4. To make the sprite stop rotating, use ORIENTED rather than VP_PARALLEL.
5. To make a sprite with an invisible background, use a solid color background in your bmp and use AlphaTest when creating the sprite.
|
__________________
No private work or selling mods.
Quote:
Originally Posted by xPaw
I love you exolent!
|
Last edited by Exolent[jNr]; 11-04-2010 at 20:46.
|
|