AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Image in hud (https://forums.alliedmods.net/showthread.php?t=189537)

Artifact 07-08-2012 07:24

Image in hud
 
How to show some spr in hud?

<VeCo> 07-08-2012 07:26

Re: Image in hud
 
Take a look at this:
http://forums.alliedmods.net/showthread.php?t=159584

Artifact 07-08-2012 07:53

Re: Image in hud
 
Advanced_win_msgs.sma:
PHP Code:

#include <amxmodx>
#include <fakemeta>
#include <fakemeta_util>
#include <dsohud>

new const g_zombie_win[] = "sprites/zombie_win.spr"
new const g_human_win[] = "sprites/human_win.spr"

new g_maxplayers

public plugin_init()
{
    
register_plugin("[ZP] Advanced Win Msgs.""1.0""@bdul!");
    
register_messageget_user_msgid"TextMsg" ), "message_textmsg" );
    
register_event("HLTV""event_round_start""a""1=0""2=0")
    
    
g_maxplayers get_maxplayers()
}

public 
plugin_precache()
{
    
precache_model(g_zombie_win)
    
precache_model(g_human_win)
}

public 
event_round_start()
{
    static 
id
    
for (id 1id <= g_maxplayersid++)
        
remove_hud_sprite(id)
}
/*
public zp_round_ended(win_team)
{
    if (win_team == WIN_NO_ONE)
        return
    
    static id
    for (id = 1; id <= g_maxplayers; id++)
    {
        if (win_team == WIN_HUMANS)
            display_hud_sprite(id, g_human_win, 0.04)
        else
            display_hud_sprite(id, g_zombie_win, 0.05)
    }
}
*/
public message_textmsgmsg_idmsg_destmsg_entity )
{
    static 
sMessage[16];
    
get_msg_arg_string2sMessagesizeof  sMessage );
    
    new 
iLen strlensMessage );
    
    if( 
sMessage[1] == 'C' && iLen == )
//        set_msg_arg_string( 2, "Counter-Terrorists Won!" );
        
display_hud_sprite(2g_zombie_win0.05)
    
    else if( 
sMessage[1] == 'T' && iLen == 15 )
//        set_msg_arg_string( 2, "Terrorists Won!" );
        
display_hud_sprite(2g_human_win0.04)
    
    return 
PLUGIN_CONTINUE;


spr_on_hud.sma:
PHP Code:

#include <amxmodx>
#include <fakemeta>
#include <xs>

#define DISTANCE     12

new g_player_ent[33], g_bit_connected_userg_stop_frame[33]

#define player_is_connected(%1)        (g_bit_connected_user |=  (1 << (%1 & 31)))
#define player_disconnected(%1)        (g_bit_connected_user &= ~(1 << (%1 & 31)))
#define is_player_connected(%1)        ((1 <= %1 <= 32) && (g_bit_connected_user & (1 << (%1 & 31))))

public plugin_init() 
{
    
register_plugin("Sprites On HUD""1.0""@bdul!");
    
register_forward(FM_AddToFullPack"fm_add_to_fullpack"1)
}

public 
plugin_natives()
{
    
register_native("display_hud_sprite""native_display_hud_sprite"1)
    
register_native("remove_hud_sprite""native_remove_hud_sprite"1)
}

public 
fm_add_to_fullpack(eseenthosthost_flagsplayerp_set)
{
    if (!
is_player_connected(host))
        return 
FMRES_IGNORED;
    
    if (
ent == g_player_ent[host])
    {
        static 
Float:origin[3], Float:forvec[3], Float:voffsets[3]

        
pev(hostpev_originorigin)
        
pev(hostpev_view_ofsvoffsets)
        
xs_vec_add(originvoffsetsorigin)
        
        
velocity_by_aim(hostDISTANCEforvec)
        
        
xs_vec_add(originforvecorigin)
        
engfunc(EngFunc_SetOriginentorigin)
        
set_es(esES_Originorigin)

        
set_es(esES_RenderModekRenderNormal)
        
set_es(esES_RenderAmt200)
        
        if (!
g_stop_frame[host])
            return 
FMRES_IGNORED
        
        
if (pev(entpev_frame) == g_stop_frame[host])
        {
            
set_pev(entpev_framerate0.0)
            
g_stop_frame[host] = 0
        
}
    }

    return 
FMRES_IGNORED
}

public 
client_putinserver(id)
{
    
player_is_connected(id)
    
    if (
is_user_bot(id)) player_disconnected(id)
    if (
pev_valid(g_player_ent[id]))
        
remove_sprite_entity(id)
}

public 
client_disconnect(id)
{
    
player_disconnected(id)
    
    if (
pev_valid(g_player_ent[id]))
        
remove_sprite_entity(id)
}

public 
native_display_hud_sprite(id, const sprite_name[], Float:sprite_sizesprite_stopframeFloat:sprite_framerate)
{
    if (!
is_player_connected(id))
        return -
1;
    
    if (
g_player_ent[id])
        return -
1;
    
    
param_convert(2)
    
    if (!
sprite_name[0])
        return -
1;
    
    
g_player_ent[id] = engfunc(EngFunc_CreateNamedEntityengfunc(EngFunc_AllocString"env_sprite"))

    if (!
pev_valid(g_player_ent[id]))
        return -
1;
    
    
set_pev(g_player_ent[id], pev_takedamage0.0)
    
set_pev(g_player_ent[id], pev_solidSOLID_NOT)
    
set_pev(g_player_ent[id], pev_movetypeMOVETYPE_NONE)
    
    
engfunc(EngFunc_SetModelg_player_ent[id], sprite_name)
    
    
set_pev(g_player_ent[id], pev_rendermodekRenderTransAlpha)
    
set_pev(g_player_ent[id], pev_renderamt0.0)
    
    
set_pev(g_player_ent[id], pev_scalesprite_size)
    
    
g_stop_frame[id] = sprite_stopframe
    
    
if (g_stop_frame[id] && sprite_framerate 0.0)
    {
        
set_pev(g_player_ent[id], pev_animtimeget_gametime())
        
set_pev(g_player_ent[id], pev_frameratesprite_framerate)
        
        
set_pev(g_player_ent[id], pev_spawnflagsSF_SPRITE_STARTON)
        
dllfunc(DLLFunc_Spawng_player_ent[id])
    }
    
    return 
g_player_ent[id];
}

public 
native_remove_hud_sprite(id)
{
    if (!
is_player_connected(id))
        return -
1;
    
    if (!
pev_valid(g_player_ent[id]))
        return -
1;
    
    
remove_sprite_entity(id)
    
    return 
1;
}

remove_sprite_entity(id)
{
    
engfunc(EngFunc_RemoveEntityg_player_ent[id])
    
    
g_player_ent[id] = 0
    g_stop_frame
[id] = 0


dsohud.inc:
PHP Code:

#if defined zp_dsohud_included
  #endinput
#endif
#define _dsohud_included

/**
 * Allows you to display a sprite on a user's HUD display
 *
 * Note: The sprite which is to be displayed must be precached
 * in your sub-plugin
 * 
 * @param id            Player index.
 * @param sprite_name        The sprite's name which is to be displayed
 * @param sprite_scale        The sprite's scale/size, must be a float
 * @param sprite_stopframe    The frame at which to halt the sprite's animation
 * @param sprite_framerate    The framerate of the sprite's animation
 * @return            Index of the sprite's entity or -1 on failure
 * 
**/
native display_hud_sprite(id, const sprite_name[], Float:sprite_scale 0.03sprite_stopframe 0Float:sprite_framerate 0.0)

/**
 * Allows you to remove the sprite from a player's screen
 *
 * @param id        Player index.
 * @return        1 on success otherwise -1 on failure
 * 
**/
native remove_hud_sprite(id

Why dont work?

ShaoKahn 07-09-2012 11:52

Re: Image in hud
 
You Cannot do it in Standard Mode .
The Spr file will be visible on the Front of Camera not on player's screen.
:grrr:


All times are GMT -4. The time now is 15:11.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.