AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Suggestions / Requests (https://forums.alliedmods.net/forumdisplay.php?f=12)
-   -   Request to put an logs in this plugin. (https://forums.alliedmods.net/showthread.php?t=232304)

GBLTeam 12-28-2013 16:41

Request to put an logs in this plugin.
 
Hello, i really need help because i wanna implent something in this plugin by the way i want to have logs of the gifts like when someone getgifted that log to be saved like "Nick" or "STEAMID" and message of the gift.


Script:
PHP Code:

#include < amxmodx >
#include < amxmisc >
#include < fakemeta >
#include < hamsandwich >
#include < engine >
#include < cellarray >
#include < xs >


#define fm_find_ent_by_class( %1, %2 ) engfunc( EngFunc_FindEntityByString, %1, "classname", %2 )
#define fm_create_entity(%1) engfunc( EngFunc_CreateNamedEntity, engfunc( EngFunc_AllocString, %1 ) )


#define SS_MIN_DISTANCE 500.0
#define SS_MAX_LOOPS 100000

#pragma semicolon 1;

/* Modele cadouri */
new const model_present[ ][ ] = { "models/present/w_present.mdl","models/present/w_present2.mdl" };

new Array:
g_vecSsOrigins;
new Array:
g_vecSsSpawns;
new Array:
g_vecSsUsed;
new 
Float:g_flSsMinDist;
new 
g_iSsTime;

new const 
g_szStarts[ ][ ] = { "info_player_start""info_player_deathmatch" };
new const 
Float:g_flOffsets[ ] = { 3500.03500.01500.0 };

/* Offset-uri */
#if cellbits == 32
const OFFSET_CSMONEY 115;
#else
const OFFSET_CSMONEY 140;
#endif
const OFFSET_LINUX  5;

new 
pcvar_respawn_timepcvar_presents_on_map;
new 
g_money;
new 
g_bonus33 ];

public 
plugin_init( )
{
    
register_plugin"XMAS GIFTS""2.3.2""KronoS" );

    
// Eventuri
    
register_event"HLTV""spawn_gifts""a""1=0""2=0" );
    
RegisterHamHam_Spawn"player""round_start");
    
RegisterHamHam_Killed"player""client_death");
        
RegisterHamHam_Item_PreFrame"player""FwdPreFramePost");
    
register_forwardFM_Touch"forward_touch" );

    
// Cvar-uri
    
pcvar_respawn_time register_cvar"presents_respawn_time""60.0" );
    
pcvar_presents_on_map register_cvar"presents_on_map""11" );

    
SsInit800.0 );
    
SsScan( );
    
XGIFTS_Spawn( );

    
g_money get_user_msgid"Money" );
}

public 
plugin_precache( )
{
    for ( new 
0sizeof model_present i++ )
        
engfuncEngFunc_PrecacheModelmodel_present] );
}

public 
spawn_gifts( )
    
XGIFTS_Spawn( );

public 
round_startid )
{
    if ( 
g_bonus[id] > )
    {
        switch ( 
g_bonusid ] )
        {
            case 
1fm_set_user_healthidget_user_healthid ) + 50 );
            case 
2fm_set_user_gravityid800 );
        }
    }
}

public 
XGIFTS_Spawn( )
{
    new 
Float:fOrigin];

    for ( new 
0get_pcvar_numpcvar_presents_on_map ) ; i++ )
    {
            if ( 
SsGetOriginfOrigin ) )
            
XGIFTS_CreatefOrigin );
    }
}

public 
XGIFTS_Create( const Float:fOrigin] )
{
    new 
ent engfuncEngFunc_CreateNamedEntityengfuncEngFunc_AllocString"info_target" ) );

    if ( 
pev_valident ) )
    {
        
engfuncEngFunc_SetModelentmodel_presentrandom_num0sizeof model_present ) ] );
        
engfuncEngFunc_SetOriginentfOrigin );
        static 
Float:fMaxs] = { 2.02.04.0 };
        static 
Float:fMins] = { -2.0, -2.0, -4.0 };
        
set_peventpev_solidSOLID_BBOX );
        
engfuncEngFunc_SetSizeentfMinsfMaxs );
        
engfuncEngFunc_DropToFloorent );

        switch ( 
random_num0) )
        {
            case 
0set_peventpev_classname"small_present" );
            case 
1set_peventpev_classname"large_present" );
        }
    }
}

public 
XGIFTS_RespawniOrigin[ ] )
{
    new 
Float:fOrigin], auxOrigin];

    
auxOrigin] = iOrigin];
    
auxOrigin] = iOrigin];
    
auxOrigin] = iOrigin];

    
IVecFVecauxOriginfOrigin );
    
XGIFTS_CreatefOrigin );
}

public 
client_deathid )
{
    if ( 
g_bonusid ] > )
        
g_bonusid ] = 0;
}

public 
FwdPreFramePostiClient )
{
    if ( 
is_user_connectediClient ) )
    {
        if ( 
g_bonusiClient ] == )
                
fm_set_user_maxspeediClient350.0 );
        else if ( 
g_bonusiClient ] == )
                
fm_set_user_maxspeediClient200.0 );
    }
}

public 
forward_touchentid )
{
    if ( !
pev_valident ) )
        return 
FMRES_IGNORED;

    static class[ 
20 ];

    
peventpev_classname, class, sizeof class - );

    if ( ( !
equali( class, "small_present" ) && !equali( class, "large_present" ) ) )
        return 
FMRES_IGNORED;

    if ( !
is_user_aliveid ) )
        return 
FMRES_IGNORED;

    
set_peventpev_solidSOLID_NOT );
    
set_peventpev_effectsEF_NODRAW );

    if ( 
get_pcvar_floatpcvar_respawn_time ) > 0.0 )
    {
        new 
Float:flOrigin], iOrigin];

        
entity_get_vectorentEV_VEC_originflOrigin );

        
FVecIVecflOriginiOrigin );

        
set_taskget_pcvar_floatpcvar_respawn_time ), "XGIFTS_Respawn"_iOrigin3  );
    }

    if ( 
equali( class, "small_present" ) )
    {
        switch ( 
random_num0) )
        {
            case 
0:
            {
                
fm_set_user_moneyidfm_get_user_moneyid ) + 500 );
                
set_hudmessage25516500.020.7306.012.0 );
                
show_hudmessageid"[NG Xmas Gift] Dedo Mraz ti dade 500$" );
            }
            case 
1:
            {
                
fm_set_user_moneyid16000 );
                
set_hudmessage25516500.020.7306.012.0 );
                
show_hudmessageid"[NG Xmas Gift] Dedo Mraz ti dade 16000$" );
            }
            case 
2:
            {
                
fm_set_user_moneyid);
                
set_hudmessage25516500.020.7306.012.0 );
                
show_hudmessageid"[NG Xmas Gift] Dedo Mraz ti gi ukrade parite." );
            }
            case 
3:
            {
                
fm_set_user_moneyidfm_get_user_moneyid ) - 500 );
                
set_hudmessage25516500.020.7306.012.0 );
                
show_hudmessageid"[NG Xmas Gift] Mosul ti-a furat 500$" );
            }
            case 
4:
            {
                
fm_give_itemid"weapon_awp" );
                
set_hudmessage25516500.020.7306.012.0 );
                
show_hudmessageid"[NG Xmas Gift] Dedo Mraz ti dade awp" );
            }
        }
    }
    else if ( 
equali( class,"large_present" ) && !g_bonusid ] )
    {
        switch (
random_num(0,3))
        {
            case 
0:
            {
                
fm_set_user_healthidget_user_healthid ) + 50);
                
g_bonusid ] = 1;
                
large_present_hudid );
            }
            case 
1:
            {
                
fm_set_user_gravityid800 );
                
g_bonusid ] = 2;
                
large_present_hudid );
            }
            case 
2:
            {
                
fm_set_user_maxspeedid350.0 );
                
g_bonusid ] = 3;
                
large_present_hudid );
            }
            case 
3:
            {
                
fm_set_user_maxspeedid200.0 );
                
g_bonusid ] = 4;
                
large_present_hudid );
            }
        }
    }

    return 
FMRES_IGNORED;
}

public 
large_present_hudid )
{
    if ( 
is_user_aliveid ) )
    {
        if ( 
g_bonusid ] > )
        {
            switch( 
g_bonusid ] )
            {
                case 
1:
                {
                    
set_hudmessage025500.020.7306.012.0);
                    
show_hudmessageid"[NG Xmas Gift] Zdravje+" );
                }
                case 
2:
                {
                    
set_hudmessage025500.020.7306.012.0 );
                    
show_hudmessageid"[NG Xmas Gift] Dedo mraz ti ja zema dade Gravitacija." );
                }
                case 
3:
                {
                    
set_hudmessage025500.020.7306.012.0 );
                    
show_hudmessageid"[NG Xmas Gift] Dedo Mraz ti dade Brzina." );
                }
                case 
4:
                {
                    
set_hudmessage200000.020.7306.012.0 );
                    
show_hudmessageid"[NG Xmas Gift] Dedo Mraz ti ja zema brzinata." );
                }
            }

            
set_task12.0"large_present_hud"id );
        }
    }
}

public 
client_disconnectid )
    
g_bonusid ] = 0;

// Fakemeta Util
stock fm_set_user_moneyidmoneyflash )
{
    
set_pdata_intidOFFSET_CSMONEYmoneyOFFSET_LINUX );

    
message_beginMSG_ONEg_money, { 00}, id );
    
write_longmoney );
    
write_byteflash );
    
message_end( );
}

stock fm_get_user_moneyid )
    return 
get_pdata_intidOFFSET_CSMONEYOFFSET_LINUX );

stock fm_set_user_healthidhealth )
{
    ( 
health ) ? set_pevidpev_healthfloathealth ) ) : dllfuncDLLFunc_ClientKillid );

    return 
1;
}

stock fm_give_itemindex, const item[ ] )
{
    if ( !
equalitem"weapon_") && !equalitem"ammo_") && !equalitem"item_") && !equalitem"tf_weapon_"10 ) )
        return 
0;

    new 
ent fm_create_entityitem) ;

    if ( !
pev_valident ) )
        return 
0;

    new 
Float:origin];
    
pevindexpev_originorigin );
    
set_peventpev_originorigin );
    
set_peventpev_spawnflagspeventpev_spawnflags ) | SF_NORESPAWN );
    
dllfuncDLLFunc_Spawnent );

    new 
save peventpev_solid );
    
dllfuncDLLFunc_Touchentindex );
    if ( 
peventpev_solid ) != save )
        return 
ent;

    
engfuncEngFunc_RemoveEntityent );

    return -
1;
}

stock fm_set_user_gravityindexFloat:gravity 800 )
{
    
set_pevindexpev_gravitygravity );

    return 
1;
}

stock fm_set_user_maxspeedindexFloat:speed 800 )
{
    
engfuncEngFunc_SetClientMaxspeedindexspeed );
    
set_pevindexpev_maxspeedspeed );

    return 
1;
}


// Super spawns
public SsInitFloat:mindist )
{
    
g_flSsMinDist mindist;
    
g_vecSsOrigins ArrayCreate3);
    
g_vecSsSpawns ArrayCreate3);
    
g_vecSsUsed ArrayCreate3);
}

stock SsClean( )
{
    
g_flSsMinDist 0.0;
    
ArrayClearg_vecSsOrigins );
    
ArrayClearg_vecSsSpawns );
    
ArrayClearg_vecSsUsed );
}

stock SsGetOriginFloat:origin] )
{
    new 
Float:data[3], size;
    new 
ok 1;

    while ( ( 
size ArraySizeg_vecSsOrigins ) ) )
    {
        new 
idx random_num0size );

        
ArrayGetArrayg_vecSsOriginsidxorigin );

        new 
used ArraySizeg_vecSsUsed );
        for ( new 
0used i++ )
        {
            
ok 0;
            
ArrayGetArrayg_vecSsUsedidata );
            if ( 
get_distance_fdataorigin ) >= g_flSsMinDist )
            {
                
ok 1;
                break;
            }
        }

        
ArrayDeleteItemg_vecSsOriginsidx );

        if ( 
ok )
        {
            
ArrayPushArrayg_vecSsUsedorigin );
            return 
true;
        }
    }

    return 
false;
}

public 
SsScan( )
{
    new 
startFloat:origin], starttime;

    
starttime get_systime( );

    for ( 
start start sizeofg_szStarts ) ; start++ )
    {
        
server_print"Searching for %s"g_szStartsstart ] );

        new 
ent;

        if ( ( 
ent engfuncEngFunc_FindEntityByStringent"classname"g_szStartsstart ] ) ) )
        {
            new 
counter;

            
peventpev_originorigin );
            
ArrayPushArrayg_vecSsSpawnsorigin );

            while ( 
counter SS_MAX_LOOPS )
                
counter GetLocationorigincounter );
        }
    }

    
g_iSsTime get_systime( );
    
g_iSsTime -= starttime;
}

GetLocationFloat:start], &counter )
{
    new 
Float:end];

    for ( new 
i++ )
        
end] += random_float0.0 g_flOffsets], g_flOffsets] );

    if ( 
IsValidstartend ) )
    {
        
start] = end];
        
start] = end];
        
start] = end];

        
ArrayPushArrayg_vecSsOriginsend );
    }

    
counter++;
    return 
counter;
}

IsValidFloat:start], Float:end] )
{
    
SetFloorend );
    
end] += 36.0;
    new 
point engfuncEngFunc_PointContentsend );
    if ( 
point == CONTENTS_EMPTY )
    {
        if ( 
CheckPointsend ) && CheckDistanceend ) && CheckVisibilitystartend ) )
        {
            if ( !
trace_hullendHULL_LARGE, -) )
                return 
true;
        }
    }

    return 
false;
}

CheckVisibilityFloat:start], Float:end] )
{
    new 
tr;

    
engfuncEngFunc_TraceLinestartendIGNORE_GLASS, -1tr );

    return ( 
get_tr2trTR_pHit ) < );
}

SetFloorFloat:start] )
{
    new 
trFloat:end];

    
end] = start];
    
end] = start];
    
end] = -99999.9;

    
engfuncEngFunc_TraceLinestartendDONT_IGNORE_MONSTERS, -1tr );
    
get_tr2trTR_vecEndPosstart );
}

CheckPointsFloat:origin] )
{
    new 
Float:data], trpoint;

    
data] = origin];
    
data] = origin];
    
data] = 99999.9;

    
engfuncEngFunc_TraceLineorigindataDONT_IGNORE_MONSTERS, -1tr );
    
get_tr2trTR_vecEndPosdata );
    
point engfuncEngFunc_PointContentsdata );

    if ( 
point == CONTENTS_SKY && get_distance_forigindata ) < 250.0 )
        return 
false;

    
data] = -99999.9;

    
engfuncEngFunc_TraceLineorigindataDONT_IGNORE_MONSTERS, -1tr );
    
get_tr2trTR_vecEndPosdata );
    
point engfuncEngFunc_PointContentsdata );

    if ( 
point CONTENTS_SOLID )
        return 
false;

    return 
true;
}

CheckDistanceFloat:origin] )
{
    new 
Float:distFloat:data];

    new 
count ArraySizeg_vecSsSpawns );

    for ( new 
0count i++ )
    {
        
ArrayGetArrayg_vecSsSpawnsidata );
        
dist get_distance_forigindata );
        if ( 
dist SS_MIN_DISTANCE )
            return 
false;
    }

    
count ArraySizeg_vecSsOrigins );

    for ( new 
count i++ )
    {
        
ArrayGetArrayg_vecSsOriginsidata );
        
dist get_distance_forigindata );
        if ( 
dist SS_MIN_DISTANCE )
            return 
false;
    }

    return 
true;


Because im searching for /gift something script with logs i need it for "Happy New Year" day i wanna implent an gift message "You won an admin" and i want to get a log from the STEAMID and NICK if is possible.


All times are GMT -4. The time now is 20:38.

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