Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

RSSSprites win CT y TT


MYGO.pl
 Udostępnij

Rekomendowane odpowiedzi

  • RSSy
I am using this Sprites win plugin, it works fine. but the thing that sprites move around a lot doesn't freeze. I would like them to stay away.

I leave a video of how it moves: https://youtu.be/xbFMcP_oTL8

these are the two sma that the plugin has. Can somebody help me?

PHP Code:

/***************************************************************************\
            ====================================           
             * || Sprites On HUD v1.1 || *
            ====================================
                *by @bdul!*

    -------------------
     *||DESCRIPTION||*
    -------------------

    This plugins allows you to display a sprite on a user's HUD display
    It also features an easy-to-use API natives include file
    Animated sprites are also supported
    
    ---------------
     *||CREDITS||*
    ---------------

    - MeRcyLeZZ -----------> For his awesome Zombie Plague Mod
    - Quim' / Conner ------> For helping me in vector calculations and
                 helping me with FM_AddToFullPack forward
    - Arkshine ------------> For helping me with animating sprites
    - kketan77 ------------> For helping me to create normal mod sprite

    ------------------
     *||CHANGE LOG||*
    ------------------
    
    v1.0 ====> Initial Release
    v1.1 ====> Added support for animated sprites
    
\***************************************************************************/

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

// Distance at which the sprite is placed from the users screen
// DO NOT EDIT UNNECESSARILY!
#define DISTANCE     12

new g_player_ent[33], g_bit_connected_userg_stop_frame[33]

// Connected players macros
#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 the plugin and the main forward
    
register_plugin("Addon: Sprites On HUD""1.0""@bdul!");
    
register_forward(FM_AddToFullPack"fm_add_to_fullpack"1)
}

public 
plugin_natives()
{
    
// Lets register some 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)
{
    
// Valid player ?
    
if (!is_player_connected(host))
        return 
FMRES_IGNORED;
    
    
// Player haves a valid sprite entity
    
if (ent == g_player_ent[host])
    {
        static 
Float:origin[3], Float:forvec[3], Float:voffsets[3]
        
        
// Retrieve player's origin
        
pev(hostpev_originorigin)
        
pev(hostpev_view_ofsvoffsets)
        
xs_vec_add(originvoffsetsorigin)
        
        
// Get a forward vector in the direction of player's aim
        
velocity_by_aim(hostDISTANCEforvec)
        
        
// Set the sprite on the new origin
        
xs_vec_add(originforvecorigin)
        
engfunc(EngFunc_SetOriginentorigin)
        
set_es(esES_Originorigin)
        
        
// Make the sprite visible
        
set_es(esES_RenderModekRenderNormal)
        
set_es(esES_RenderAmt200)
        
        
// Sprite animation already stopped ?
        
if (!g_stop_frame[host])
            return 
FMRES_IGNORED
        
        
// Stop the animation at the desired frame
        
if (pev(entpev_frame) == g_stop_frame[host])
        {
            
set_pev(entpev_framerate0.0)
            
g_stop_frame[host] = 0
        
}
    }
    
    
// Stupid compiler !!
    
return FMRES_IGNORED
}

public 
client_putinserver(id)
{
    
// Player connected
    
player_is_connected(id)
    
    
// Marks bots as disconnected players (so sprites are'nt displayed to them)
    
if (is_user_bot(id)) player_disconnected(id)
    
    
// Remove sprite entity if present
    
if (pev_valid(g_player_ent[id]))
        
remove_sprite_entity(id)
}

public 
client_disconnected(id)
{
    
// Player disconnected
    
player_disconnected(id)
    
    
// Remove sprite entity if present
    
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)
{
    
// Invalid player ?
    
if (!is_player_connected(id))
        return -
1;
    
    
// Already haves a sprite on his hud
    
if (g_player_ent[id])
        return -
1;
    
    
// Strings passed byref
    
param_convert(2)
    
    
// Invalid sprite ?
    
if (!sprite_name[0])
        return -
1;
    
    
// Create an entity for the player
    
g_player_ent[id] = engfunc(EngFunc_CreateNamedEntityengfunc(EngFunc_AllocString"env_sprite"))
    
    
// Invalid entity ?
    
if (!pev_valid(g_player_ent[id]))
        return -
1;
    
    
// Set some basic properties
    
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)
    
    
// Set the sprite model
    
engfunc(EngFunc_SetModelg_player_ent[id], sprite_name)
    
    
// Set the rendering on the entity
    
set_pev(g_player_ent[id], pev_rendermodekRenderTransAlpha)
    
set_pev(g_player_ent[id], pev_renderamt0.0)
    
    
// Set the sprite size
    
set_pev(g_player_ent[id], pev_scalesprite_size)
    
    
// Update sprite's stopping frame
    
g_stop_frame[id] = sprite_stopframe
    
    
// Allow animation of sprite ?
    
if (g_stop_frame[id] && sprite_framerate 0.0)
    {
        
// Set the sprites animation time, framerate and stop frame
        
set_pev(g_player_ent[id], pev_animtimeget_gametime())
        
set_pev(g_player_ent[id], pev_frameratesprite_framerate)
        
        
// Spawn the sprite entity (necessary to play the sprite animations)
        
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)
{
    
// Invalid player ?
    
if (!is_player_connected(id))
        return -
1;
    
    
// Doesnt haves any sprite on his screen ?
    
if (!pev_valid(g_player_ent[id]))
        return -
1;
    
    
// Remove sprite entity
    
remove_sprite_entity(id)
    
    return 
1;
}

// Removes a sprite entity from world
remove_sprite_entity(id)
{
    
engfunc(EngFunc_RemoveEntityg_player_ent[id])
    
    
g_player_ent[id] = 0
    g_stop_frame
[id] = 0


PHP Code:

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

// Win sprites dirs'
new const g_ct_win[] = "sprites/teamwin/ctwin_cso.spr"
new const g_t_win[] = "sprites/teamwin/trwin_cso.spr"

new g_maxplayers

public plugin_init()
{
    
register_plugin("Advanced Win Msgs.""1.0""@bdul!");
    
    
// Round start event
    
register_event("HLTV""event_round_start""a""1=0""2=0")
    
    
// Hook win team
    
register_logevent("Event_CTWin"6"3=CTs_Win""3=All_Hostages_Rescued")
    
register_logevent("Event_TerroristWin" 6"3=Terrorists_Win""3=Target_Bombed")
    
    
// Retrieve max players
    
g_maxplayers get_maxplayers()
}

// Prechache the sprites
public plugin_precache()
{
    
precache_model(g_t_win)
    
precache_model(g_ct_win)
}

// Remove win sprites on new round
public event_round_start()
{
    static 
id
    
for (id 1id <= g_maxplayersid++)
        
remove_hud_sprite(id)
}

// Set "ctwin" sprites on players HUD
public Event_CTWin(id)
{
    static 
id
    
for (id 1id <= g_maxplayersid++)
    {
        
display_hud_sprite(idg_ct_win0.04)
    }
}

// Set "twin" sprites on players HUD
public Event_TerroristWin(id)
{
    static 
id
    
for (id 1id <= g_maxplayersid++)
    {
        
display_hud_sprite(idg_t_win0.05)
    }
}

// no sprites on players HUD
public Event_Draw(id)
{
    return


Przeczytaj cały wpis

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...