Raised This Month: $12 Target: $400
 3% 

CSDM VIP Problem


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Titus
Junior Member
Join Date: Feb 2015
Old 02-09-2015 , 16:55   CSDM VIP Problem
Reply With Quote #1

Good evening guys, i have using a vip plugins who have thins things

- Vip has speed spawn : 400.0
- Vip has health : 200
- Vip has armor: 200
- Vip has gravity: 0.85
- Vip has kill reward: 10
- Vip has headshot reward: 25
- Vip has multi dmg: 2.0
- Vip has max healt: 300
- Vip has kill money: 800
- Vip has show dmg: 0
- Vip has model diffrent from the other players: 1
- Vip has imune to flashbang: 1
- Vip has event to some hours: 0
- Vip has multijump: 2
- Vip has scoreboard


ok them, all god, but the plugins doesn't work , he give me the model, scoreboard and hp/armor 100 not 200/200 no speed , no gravity . i use CSDM 2.1.2k

Code:
/*


        Credits:    Exolent - VIP in Scoreboard
            pharse - x2 Jump for VIP( for ZP 5.0.5 )
            Sn!ff3r - Show bullet dmg in HUD only VIP
            Askhanar - Change Model to VIP
            cheap.suit - No VIP Flash( extracted on Biohazard v2.00 beta )
            AMXX Dev Team - Add VIP's
            cyby - VIP Event
        

*/
#include < amxmodx >
#include < amxmisc >
#include < hamsandwich >
#include < cstrike >
#include < fakemeta >
#include < engine >
#include < fun >
#include < ColorChat >
#include < message_const >

//#define USING_SQL

#if defined USING_SQL
#include < sqlx >
#endif

// All the file will be in "users.ini" !
#define VIP_FLAGS        "bit"    // Flags for vip
#define VIP_FLAGS_TYPE        "a"    // a - Dissconect the vip with wrong password)
#define VIP_PASSWORD        "parola"    // Password for vip

#define is_user_player(%1) ( 1 <= %1 <= g_iMaxPlayers )

#define TASK_SECRET_MSG        216439

// Here sets the hours for vip event( for disable 0 cvar-ului "vip_enable_vip_event" )
#define FIRST_HOUR    12
#define LAST_HOUR    13

new const PLUGIN_VERSION[  ] = "1.0.2",
     PLUGIN_AUTHOR[  ] = "YONTU";

#if defined USING_SQL
new const PLUGIN_NAME_SQL[  ] = "VIP System( SQL )";
#else
new const PLUGIN_NAME[  ] = "VIP System";
#endif

new const g_szTag[  ] = "[VIP System]";    // TAG
new const g_szVipFlags[  ] =    "t";        // Flag for vip( ADMIN_LEVEL_H )

// Here you put your name for contact);
new const YourNick[  ] = "nuconteaza", 
     YourMessenger[  ] = "[email protected]";

static const COLORG[  ] = "^x04", COLORD[  ] = "^x01", COLORT[  ] = "^x03";

// Refil Ammo on headshot
new const g_Weapons[  ] = {

    CSW_M4A1,
    CSW_AK47,
    CSW_DEAGLE,
    CSW_USP
};

new const g_szWeapons[  ][  ] = {

    "weapon_m4a1",
    "weapon_ak47",
    "weapon_deagle",
    "weapon_usp"
};

new const g_iWeaponsAmmo[  ] = {

    30,
    30,
    7,
    12
};

enum {

        SCOREATTRIB_ARG_PLAYERID = 1,
        SCOREATTRIB_ARG_FLAGS
};

enum ( <<= 1 ) {

        SCOREATTRIB_FLAG_NONE = 0,
        SCOREATTRIB_FLAG_DEAD = 1,
        SCOREATTRIB_FLAG_BOMB,
        SCOREATTRIB_FLAG_VIP
};

enum _:WhatUserHas {

    Speed,
    Jump,
}
new bool:g_bUserHas[ 33 ][ WhatUserHas ];

new     g_cvar_speed_spawn,
    g_cvar_health_spawn,
    g_cvar_armor_spawn,
    g_cvar_gravity_spawn,
    g_cvar_multidmg,
    g_cvar_health_kill_reward,
    g_cvar_health_hs_reward,
    g_cvar_maxhealth,
    g_cvar_kill_money_reward,
    g_cvar_show_msgs,
    g_cvar_enable_show_dmg,
    g_cvar_ebable_vip_scoreboard,
    g_cvar_enable_vip_noflash,
    g_cvar_enable_vip_multijump,
    g_cvar_enable_vip_event,
    g_cvar_enable_vip_model;

new Ham:Ham_Player_ResetMaxSpeed = Ham_Item_PreFrame;

new bool:VipEvent;

new iJumpNum[ 33 ] = 0;
new g_iMultiJumps[ 33 ] = 0;
new g_iMaxJumps = 0;

new g_iMaxPlayers;
new SyncHudMessage;

public plugin_init(  ) {

    #if defined USING_SQL
    register_plugin( PLUGIN_NAME_SQL,
            PLUGIN_VERSION,
            PLUGIN_AUTHOR );
    #else
    register_plugin( PLUGIN_NAME,
            PLUGIN_VERSION,
            PLUGIN_AUTHOR );
    #endif

    register_clcmd( "say /wantvip", "ShowAbilityForVip" );
    register_clcmd( "say_team /wantvip", "ShowAbilityForVip" );

    register_concmd( "amx_addvips", "ClCmdAddVips", ADMIN_RCON, "< nume >" );

    register_event( "ResetHUD", "event_ResetModel", "b" );
    register_event( "DeathMsg", "event_DeathMsg", "a" );
    register_event( "DeathMsg", "event_DeathMsg2", "ae" );
    register_event( "Damage", "event_Damage", "b", "2!0", "3=0", "4!0" );

    register_logevent( "logevent_RoundStart", 2 , "1=Round_Start" );
    register_logevent( "logevent_RoundEnd", 2, "1=Round_End" );

    register_forward( FM_PlayerPreThink, "forward_PlayerPreThink" );
    register_forward( FM_PlayerPostThink, "forward_PlayerPostThink" );

    RegisterHam( Ham_Spawn, "player", "Ham_PlayerSpawnPost", 1 );
    RegisterHam( Ham_TakeDamage, "player", "Ham_TakeDamagePre" );
    RegisterHam( Ham_Player_ResetMaxSpeed, "player", "Ham_ResetMaxSpeedPost", 1 );

        register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
    register_message( get_user_msgid( "ScreenFade" ), "MessageScreenFade" );

    g_cvar_speed_spawn = register_cvar( "vip_speed_spawn", "400.0" );        //  Increase the speed.0 )
    g_cvar_health_spawn = register_cvar( "vip_health_spawn", "200" );        // How much health to have the vip to spawn
    g_cvar_armor_spawn = register_cvar( "vip_armor_spawn", "200" );        // How much armor to have the vip to  spawn
    g_cvar_gravity_spawn = register_cvar( "vip_gravity_spawn", "0.85" );    // how much gravity to have the vip to spawn
    g_cvar_multidmg = register_cvar( "vip_multi_dmg", "2.0" );        // how much the dmg to have the vip
    g_cvar_health_kill_reward = register_cvar( "vip_hp_kill_reward", "0" );    // how much hp to reward when kill
    g_cvar_health_hs_reward = register_cvar( "vip_hp_hs_reward", "0" );    // how much hp to reward when he do headshot
    g_cvar_maxhealth = register_cvar( "vip_maxhealth", "300" );        // maxium health for vip
    g_cvar_kill_money_reward = register_cvar( "vip_kill_money", "0" );    // how much many reward when kill
    g_cvar_show_msgs = register_cvar( "vip_show_messages", "30.0" );        // the interval messages for vip
    g_cvar_enable_show_dmg = register_cvar( "vip_show_dmg", "0" );        // show the dmg vip
    g_cvar_ebable_vip_scoreboard = register_cvar( "vip_on_scoreboard", "1" );    // 1 - vip will be in scoreboard 0 will not be
    g_cvar_enable_vip_noflash = register_cvar( "vip_imune_flashbang", "1" );    // 1 - Vip imun to  flashbang | 0 - Not
    g_cvar_enable_vip_multijump = register_cvar( "vip_enable_multijump", "2" );    // 1 - Vip jump | 0 - NO
    g_cvar_enable_vip_event = register_cvar( "vip_enable_vip_event", "0" );    // 1 - Some hours the players have VIP | 0 NO
    g_cvar_enable_vip_model = register_cvar( "vip_enable_model", "1" );    // 1 - VIP has a model | 0 - NO

    if( get_pcvar_num( g_cvar_enable_vip_event ) ) {

        check_time(  );
        set_task( 60.0, "check_time", _, _, _, "b" );
        set_task( 1.0, "hud_mess", _, _, _, "b" );
    }

    new szFile[ 64 ]
    get_configsdir( szFile, 63 );
    format( szFile, 63, "%s/vip_system.cfg", szFile );
    
    if( file_exists( szFile ) ) 
        server_cmd( "exec %s", szFile );

    g_iMaxPlayers = get_maxplayers(  );
    SyncHudMessage = CreateHudSyncObj(  );
}

public plugin_cfg(  )
    set_cvar_float( "sv_maxspeed", 1000.0 );

public plugin_precache(  ) {

    precache_model( "models/player/vip_ct/vip_ct.mdl" );
    precache_model( "models/player/vip_t/vip_t.mdl" );
}

public client_putinserver( id ) {

    g_iMultiJumps[ id ] = 0;
    iJumpNum[ id ] = 0;
    g_bUserHas[ id ][ Jump ] = false;
    g_bUserHas[ id ][ Speed ] = false;
}

public client_disconnect( id ) {

    g_iMultiJumps[ id ] = 0;
    iJumpNum[ id ] = 0;
    g_bUserHas[ id ][ Jump ] = false;
    g_bUserHas[ id ][ Speed ] = false;
}

public event_ResetModel( id ) {

    if( get_pcvar_num( g_cvar_enable_vip_model ) ) {

        if( is_user_vip( id ) ) {

            new CsTeams:userTeam = cs_get_user_team( id );

            if( userTeam == CS_TEAM_T ) {

                cs_set_user_model( id, "vip_t" );

                return 1;
            }

            else if( userTeam == CS_TEAM_CT ) {

                cs_set_user_model( id, "vip_ct" );

                return 1;
            }
        } else
            cs_reset_user_model( id );
    } else
        return 0;

    return 0;
}

public event_DeathMsg(  ) {

    new iAttacker = read_data( 1 );
    new iVictim = read_data( 2 );
    new iHeadshot = read_data( 3 );
    
    new HealthOnHeadShot = get_pcvar_num( g_cvar_health_hs_reward );
    new MaxHealth = get_pcvar_num( g_cvar_maxhealth );
    new HealthOnKill = get_pcvar_num( g_cvar_health_kill_reward );

    if( iAttacker == iVictim )
        return 0;

    if( is_user_vip( iAttacker ) && iAttacker != iVictim ) {
        
        if( get_user_health( iAttacker ) <= MaxHealth ) {

            if( iHeadshot ) {

                set_user_health( iAttacker, get_user_health( iAttacker ) + HealthOnHeadShot );

                set_hudmessage( 0, 250, 0, 0.85, 0.7, 0, 6.0, 5.0 );
                ShowSyncHudMsg( iAttacker, SyncHudMessage, "+ %i HP", HealthOnHeadShot );
            } else {

                set_user_health( iAttacker, get_user_health( iAttacker ) + HealthOnKill );

                set_hudmessage( 200, 200, 0, 0.85, 0.7, 0, 6.0, 5.0 );
                ShowSyncHudMsg( iAttacker, SyncHudMessage, "+ %i HP", HealthOnKill );
            }
        }

        if( is_user_alive( iAttacker ) && !is_user_bot( iAttacker ) )
            if( read_data( 3 ) )
                for( new w = 0; w < sizeof( g_Weapons ); w++ )
                    if( get_user_weapon( iAttacker ) == g_Weapons[ w ] )
                        if( find_ent_by_owner( -1, g_szWeapons[ w ], iAttacker ) )
                            cs_set_weapon_ammo( find_ent_by_owner( -1, g_szWeapons[ w ], iAttacker ), g_iWeaponsAmmo[ w ] );
    }

    return 0;
}

public event_DeathMsg2(  ) {

    new iAttacker = read_data( 1 ); 
    new iVictim = read_data( 2 );

    new BonusMoney = get_pcvar_num( g_cvar_kill_money_reward );
    
    if( iAttacker == iVictim )
        return 0;

    if( is_user_vip( iAttacker ) )
        if( iAttacker && is_user_alive( iAttacker ) )
            if( cs_get_user_team( iVictim ) == CS_TEAM_T || cs_get_user_team( iVictim ) == CS_TEAM_CT )
                if( cs_get_user_money( iAttacker ) < 16000 - BonusMoney - 300 )
                    cs_set_user_money( iAttacker, cs_get_user_money( iAttacker ) + BonusMoney - 300 );

    return 0;
}

public event_Damage( id ) {

    if( get_pcvar_num( g_cvar_enable_show_dmg ) ) {

        static iAttacker;
        static fDamage;
    
        iAttacker = get_user_attacker( id );
        fDamage = read_data( 2 );

        if( is_user_alive( id ) && is_user_vip( id ) ) {
            
            set_hudmessage( 255, 0, 0, 0.45, 0.50, 2, 0.1, 1.0, 0.1, 0.1, -1 );
            ShowSyncHudMsg( id, SyncHudMessage, "%i^n", fDamage );    
        }

        if( is_user_alive( iAttacker ) && is_user_vip( iAttacker ) ) {

            set_hudmessage( 0, 255, 15, -1.0, 0.55, 2, 0.1, 1.0, 0.02, 0.02, -1 );
            ShowSyncHudMsg( iAttacker, SyncHudMessage, "%i^n^n", fDamage );
        }
    }
}

public logevent_RoundStart(  ) {
    
    new szPlayers[ 32 ], iNum;
    get_players( szPlayers, iNum, "ch" );
    
    for( new i = 0; i < iNum; i++)  {

        g_bUserHas[ szPlayers[ i ] ][ Speed ] = false;
        g_bUserHas[ szPlayers[ i ] ][ Jump ] = false;
        g_iMultiJumps[ szPlayers[ i ] ] = 0;
        iJumpNum[ szPlayers[ i ] ] = 0;

        if( task_exists( szPlayers[ i ] + TASK_SECRET_MSG ) )
            remove_task( szPlayers[ i ] + TASK_SECRET_MSG );
        
        set_task( get_pcvar_float( g_cvar_show_msgs ), "task_ShowMessage", szPlayers[ i ] + TASK_SECRET_MSG );
    }
}

public logevent_RoundEnd(  ) {
    
    new szPlayers[ 32 ], iNum;
    get_players( szPlayers, iNum, "ch" );
    
    for( new i = 0; i < iNum; i++ )
        remove_task( szPlayers[ i ] );
}

public forward_PlayerPreThink( id ) {

    if( !is_user_alive( id ) || !g_iMultiJumps[ id ] )
        return 0;

    if( ( pev( id, pev_button ) & IN_JUMP ) && !( pev( id, pev_flags ) & FL_ONGROUND ) && !( pev( id, pev_oldbuttons ) & IN_JUMP ) ) {

        if( iJumpNum[ id ] < g_iMultiJumps[ id ] ) {

            g_bUserHas[ id ][ Jump ] = true;
            iJumpNum[ id ]++;

            return 0;
        }
    }

    if( ( pev( id, pev_button ) & IN_JUMP ) && ( pev( id, pev_flags ) & FL_ONGROUND ) ) {

        iJumpNum[ id ] = 0;
        return 0;
    }

    return 0;
}

public forward_PlayerPostThink( id ) {

    if( !is_user_alive( id ) || !g_iMultiJumps[ id ] )
        return 0;

    if( g_bUserHas[ id ][ Jump ] ) {

        new Float:fVelocity[ 3 ];

        pev( id, pev_velocity, fVelocity );

        fVelocity[ 2 ] = random_float( 265.0, 285.0 );

        set_pev( id, pev_velocity, fVelocity );

        g_bUserHas[ id ][ Jump ] = false;
        return 0;
    }

    return 0;
}

public Ham_PlayerSpawnPost( id ) {
    
    if( !is_user_alive( id ) && !is_user_vip( id ) )
        return HAM_IGNORED;
    
    if( is_user_vip( id ) && !is_user_bot( id ) )
        set_task( 5.0, "task_GiveSkillsAllVips", id );
    
    return HAM_IGNORED;
}

public task_GiveSkillsAllVips( id ) {

    //drop_prim( id );

    g_bUserHas[ id ][ Speed ] = true;
    fm_set_user_maxspeed( id, get_pcvar_float( g_cvar_speed_spawn ) );

    new szCommand[ 128 ];
    formatex( szCommand, sizeof( szCommand ) - 1, "cl_forwardspeed %.1f;cl_sidespeed %.1f;cl_backspeed %.1f", get_pcvar_float( g_cvar_speed_spawn ), get_pcvar_float( g_cvar_speed_spawn ), get_pcvar_float( g_cvar_speed_spawn ) );
    client_cmd( id, szCommand );

    if( get_pcvar_num( g_cvar_enable_vip_multijump ) )
        if( g_iMultiJumps[ id ] < g_iMaxJumps || !g_iMaxJumps )
            g_iMultiJumps[ id ]++;

    set_user_health( id, get_pcvar_num( g_cvar_health_spawn ) );
    set_user_armor( id, get_pcvar_num( g_cvar_armor_spawn ) );
    set_user_gravity( id, get_pcvar_float( g_cvar_gravity_spawn ) );

    fm_give_item( id, "weapon_hegrenade" );
    fm_give_item( id, "weapon_flashbang" );
    fm_give_item( id, "weapon_flashbang" );
    fm_give_item( id, "weapon_smokegrenade" );

    //GiveRifle( id );
}

public GiveRifle( id ) {

    fm_give_item( id, "weapon_m4a1" );
    cs_set_user_bpammo( id, CSW_M4A1, 300 );

    fm_give_item( id, "weapon_ak47" );
    cs_set_user_bpammo( id, CSW_AK47, 300 );

    fm_give_item( id, "weapon_awp" );
    cs_set_user_bpammo( id, CSW_AWP, 100 );

    fm_give_item( id, "weapon_deagle" );
    cs_set_user_bpammo( id, CSW_DEAGLE, 70 );
}

public task_ShowMessage( taskid ) {

    new id = taskid - TASK_SECRET_MSG;

    ColorChat( id, GREEN, "%s^x01 Vrei sa cumperi si tu^x03 Membru V.I.P^x01? Contacteaza-l pe^x03 %s^x01 la^x03 %s^x01 !!!", g_szTag, YourNick, YourMessenger );

    set_task( get_pcvar_float( g_cvar_show_msgs ) * 0.5, "task_ShowMessage2", id );

    if( task_exists( taskid ) )
        remove_task( taskid );
}

public task_ShowMessage2( id ) {

    ColorChat( id, GREEN, "%s^x01 Vrei sa faci rost de^x03 Membru VIP^x01 si nu stii cum? Tasteaza^x03 /wantvip^x01 !!!", g_szTag );

    set_task( get_pcvar_float( g_cvar_show_msgs ) * 1.2, "task_PrintVipList", id );
}

public task_PrintVipList( user ) {

    new szAdminNames[ 33 ][ 32 ];
    new szMessage[ 256 ];
    new iCount, iLen;
    
    for( new id = 1 ; id <= g_iMaxPlayers ; id++ )
        if( is_user_connected( id ) )
            if( is_user_vip( id ) )
                get_user_name( id, szAdminNames[ iCount++ ], 31 );

    iLen = format( szMessage, 255, "%sVIP's Online: ", COLORG );

    if( iCount > 0 ) {

        for( new i = 0 ; i < iCount ; i++ ) {

            iLen += format( szMessage[ iLen ], 255 - iLen, "^x03%s^x01 | ", szAdminNames[ i ], COLORT, COLORD );

            if( iLen > 96 ) {

                print_message( user, szMessage );
                iLen = format( szMessage, 255, "%s", COLORG );
            }
        }

        print_message( user, szMessage );
    } else {

        iLen += format( szMessage[ iLen ], 255 - iLen, "^x01Nu sunt VIP-i online.", COLORD );
        print_message( user, szMessage );
    }
}

public Ham_ResetMaxSpeedPost( id ) {

    if( is_user_alive( id ) && is_user_vip( id ) && get_user_maxspeed( id ) != 1.0 ) {

          new Float:flMaxSpeed;

          if( g_bUserHas[ id ][ Speed ] )
               flMaxSpeed = float( get_pcvar_num( g_cvar_speed_spawn ) );

          if( flMaxSpeed > 0.0 )
               set_pev( id, pev_maxspeed, flMaxSpeed );
    }
}

public Ham_TakeDamagePre( iVictim, iInflictor, iAttacker, Float:fDamage ) {

    if( iVictim == iAttacker || !is_user_player( iAttacker ) || !is_user_alive( iAttacker ) || is_user_bot( iAttacker ) )
        return HAM_HANDLED;

    if( is_user_vip( iAttacker ) && is_user_player( iAttacker ) )
        SetHamParamFloat( 4, fDamage * get_pcvar_float( g_cvar_multidmg ) );

    return HAM_IGNORED;
}

public MessageScoreAttrib( iMsgId, iMsgDest, id ) {

    if( get_pcvar_num( g_cvar_ebable_vip_scoreboard ) ) {

        new iPlayer = get_msg_arg_int( SCOREATTRIB_ARG_PLAYERID );
        
        if( access( iPlayer, read_flags( g_szVipFlags ) ) )
            set_msg_arg_int( SCOREATTRIB_ARG_FLAGS, ARG_BYTE, SCOREATTRIB_FLAG_VIP );
    }
}

public MessageScreenFade( iMsgId, iMsgDest, id ) {

    if( is_user_vip( id ) && is_user_alive( id ) && get_pcvar_num( g_cvar_enable_vip_noflash ) ) {

        static szData[ 4 ];

        szData[ 0 ] = get_msg_arg_int( 4 );
        szData[ 1 ] = get_msg_arg_int( 5 );
        szData[ 2 ] = get_msg_arg_int( 6 );
        szData[ 3 ] = get_msg_arg_int( 7 );
        
        if( szData[ 0 ] == 255 && szData[ 1 ] == 255 && szData[ 2 ] == 255 && szData[ 3] > 199 )
            return 1;
    }

    return 0;
}

public check_time(  ) {

    static preluare_ora[ 3 ], ora;
    get_time( "%H", preluare_ora, 2 );

    ora = str_to_num( preluare_ora );

    if( FIRST_HOUR >= ora || ora < LAST_HOUR ) {

        if( !VipEvent )
            ColorChat( 0, GREEN, "^x04%s^x01 Eventul^x03 Free VIP^x01 a fost activat!", g_szTag );

        VipEvent = true;
        server_cmd( "amx_default_access ^"t^"" );
    } else {

        if( VipEvent )
            ColorChat( 0, GREEN, "^x04%s^x01 Eventul^x03 Free VIP^x01 a fost activat!", g_szTag );

        VipEvent = false;
        server_cmd( "amx_default_access ^"z^"" );
    }

    server_cmd( "amx_reloadadmins" );
}

public hud_mess(  ) {

    if( VipEvent ) {

        set_hudmessage( 200, 200, 10, -1.0, 0.0, 1, 1.0, 1.0, 0.1, 0.1 );
        show_hudmessage( 0, "Toti jucatorii beneficiaza de VIP free aceasta ora!" );
    }
}

public ShowAbilityForVip( id ) {

    new iCfgDir[ 32 ], iFile[ 192 ];
        
    get_configsdir( iCfgDir, charsmax( iCfgDir ) );
    formatex( iFile, charsmax( iFile ), "%s/vip.html", iCfgDir );

    show_motd( id, iFile );
}

public ClCmdAddVips( id, level, cid ) {

    if( !cmd_access( id, level, cid, 2 ) )
        return 1;

    new szTarget[ 32 ];
    read_argv( 1, szTarget, 31 );

    new iPlayer = cmd_target( id, szTarget, 8 );

    if( !iPlayer )
        return 1;

    new szPlayerName[ 32 ], szAdminName[ 32 ];
    get_user_name( iPlayer, szPlayerName, charsmax( szPlayerName ) );
    get_user_name( id, szAdminName, charsmax( szAdminName ) );

    AddVIP( id, szPlayerName, VIP_FLAGS, VIP_PASSWORD, VIP_FLAGS_TYPE, szAdminName );
    server_cmd( "amx_reloadadmins" );

    console_print( id, "%s Vip-ul a fost adaugat in lista!", g_szTag );
    ColorChat( 0, GREEN, "^x04%s^x01 Adminul^x03 %s^x01 l-a adaugat ca VIP pe^x03 %s^x01 !", g_szTag, szAdminName, iPlayer );
    ColorChat( iPlayer, GREEN, "^x04%s^x01 Felicitari! Ai fost adaugat ca membru^x03 VIP^x01! VIP-ul se va activa harta viitoare!", g_szTag );

    return 1;
}

stock bool:is_user_vip( id ) {

    if( get_user_flags( id ) & read_flags( g_szVipFlags ) )
        return true;
    
    return false;
}

stock print_message( id, Msg[  ] ) {

    message_begin( MSG_ONE, get_user_msgid( "SayText" ), { 0, 0, 0 }, id );
    write_byte( id );
    write_string( Msg );
    message_end(  );
}

// stocks from "fakemeta_util"
stock fm_give_item( index, const item[  ] ) {

    if( !equal( item, "weapon_", 7 ) && !equal( item, "ammo_", 5 ) && !equal( item, "item_", 5 ) && !equal( item, "tf_weapon_", 10 ) )
        return 0;

    new ent = fm_create_entity( item );

    if( !pev_valid( ent ) )
        return 0;

    new Float:fOrigin[ 3 ];
    pev( index, pev_origin, fOrigin );

    set_pev( ent, pev_origin, fOrigin );
    set_pev( ent, pev_spawnflags, pev( ent, pev_spawnflags ) | SF_NORESPAWN );

    dllfunc( DLLFunc_Spawn, ent );

    new save = pev( ent, pev_solid );

    dllfunc( DLLFunc_Touch, ent, index );

    if( pev( ent, pev_solid ) != save )
        return ent;

    engfunc( EngFunc_RemoveEntity, ent );

    return -1;
}

stock fm_set_user_maxspeed( index, Float:speed = -1.0 ) {

    engfunc( EngFunc_SetClientMaxspeed, index, speed );

    set_pev( index, pev_maxspeed, speed );

    return 1;
}

stock Float:fm_get_user_maxspeed( index ) {

    new Float:speed;
    pev( index, pev_maxspeed, speed );

    return speed;
}

stock fm_set_rendering( entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16 ) {

    new Float:RenderColor[ 3 ];
    RenderColor[ 0 ] = float( r );
    RenderColor[ 1 ] = float( g );
    RenderColor[ 2 ] = float( b );

    set_pev( entity, pev_renderfx, fx );
    set_pev( entity, pev_rendercolor, RenderColor );
    set_pev( entity, pev_rendermode, render );
    set_pev( entity, pev_renderamt, float( amount ) );

    return 1;
}

stock fm_create_entity( const classname[  ] )
    return engfunc( EngFunc_CreateNamedEntity, engfunc( EngFunc_AllocString, classname ) );

AddVIP( id, name[  ], accessflags[  ], password[  ], flags[  ], comment[  ]="" ) {

#if defined USING_SQL
    new error[ 128 ], errno;

    new Handle:info = SQL_MakeStdTuple(  );
    new Handle:sql = SQL_Connect( info, errno, error, 127 );

    if( sql == Empty_Handle ) {

        server_print( "[AMXX] %L", LANG_SERVER, "SQL_CANT_CON", error );
#endif
        // Make sure that the users.ini file exists.
        new configsDir[ 64 ];
        get_configsdir( configsDir, 63 );
        format( configsDir, 63, "%s/users.ini", configsDir );

        if( !file_exists( configsDir ) ) {

            console_print( id, "%s File ^"%s^" doesn't exist.", g_szTag, configsDir );
            return;
        }

        // Make sure steamid isn't already in file.
        new line = 0, textline[ 256 ], len;
        const SIZE = 63;
        new line_steamid[ SIZE + 1 ], line_password[ SIZE + 1 ], line_accessflags[ SIZE + 1 ], line_flags[ SIZE + 1 ], parsedParams;

        // <name|ip|steamid> <password> <access flags> <account flags>
        while( ( line = read_file( configsDir, line, textline, 255, len ) ) ) {

            if ( len == 0 || equal( textline, ";", 1 ) )
                continue; // comment line

            parsedParams = parse( textline, line_steamid, SIZE, line_password, SIZE, line_accessflags, SIZE, line_flags, SIZE );

            if( parsedParams != 4 )
                continue;    // Send warning/error?
            
            if( containi( line_flags, flags ) != -1 && equal( line_steamid, name ) ) {

                console_print( id, "%s %s already exists!", g_szTag, name );
                return;
            }
        }
    
        // If we came here, steamid doesn't exist in users.ini. Add it.
        new linetoadd[ 512 ];
        
        if( comment[ 0 ]==0 )
            formatex( linetoadd, 511, "^r^n^"%s^" ^"%s^" ^"%s^" ^"%s^"", name, password, accessflags, flags );

        else
            formatex( linetoadd, 511, "^r^n^"%s^" ^"%s^" ^"%s^" ^"%s^" ; %s", name, password, accessflags, flags, comment );

        console_print( id, "Adding:^n%s", linetoadd );
        
        if( !write_file( configsDir, linetoadd ) )
            console_print( id, "%s Failed writing to %s!", g_szTag, configsDir );
#if defined USING_SQL
    }
    
    new table[ 32 ];

    get_cvar_string( "amx_sql_table", table, 31 );

    new Handle:query = SQL_PrepareQuery( sql, "SELECT * FROM `%s` WHERE (`auth` = '%s')", table, name );
    
    if( !SQL_Execute( query ) ) {

        SQL_QueryError( query, error, 127 );
        server_print( "[AMXX] %L", LANG_SERVER, "SQL_CANT_LOAD_ADMINS", error );
        console_print( id, "[AMXX] %L", LANG_SERVER, "SQL_CANT_LOAD_ADMINS", error );
    } 
        
    else if( SQL_NumResults( query ) )
        console_print( id, "%s %s already exists!", g_szTag, name );

    else {

        console_print( id, "Adding to database:^n^"%s^" ^"%s^" ^"%s^" ^"%s^"", name, password, accessflags, flags );

        SQL_QueryAndIgnore( sql, "REPLACE INTO `%s` (`name`, `password`, `access`, `flags`) VALUES ('%s', '%s', '%s', '%s')", table, name, password, accessflags, flags );
    }

    SQL_FreeHandle( query );
    SQL_FreeHandle( sql);
    SQL_FreeHandle( info );
#endif
}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/
Code:
I have this error in server console: 
L 02/09/2015 - 17:47:56: [AMXX] Run time error 10 (plugin "vip.amxx") (native "set_user_health") - debug not enabled!
L 02/09/2015 - 17:47:56: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 02/09/2015 - 18:12:16: Start of error session.
L 02/09/2015 - 18:12:16: Info (map "de_kabul32") (file "addons/amxmodx/logs/error_20150209.log")
L 02/09/2015 - 18:12:16: [FUN] Player out of range (0)
L 02/09/2015 - 18:12:16: [AMXX] Displaying debug trace (plugin "vip.amxx")
L 02/09/2015 - 18:12:16: [AMXX] Run time error 10: native error (native "set_user_health")
L 02/09/2015 - 18:12:16: [AMXX]    [0] vip.sma::event_DeathMsg (line 284)
i have the cvars setted in amx.cfg , everything ! i use amxmodx + csdm 2.1.2k if i do something wrong ... please help me with this. Thanks.

Last edited by Titus; 02-09-2015 at 17:07.
Titus is offline
Titus
Junior Member
Join Date: Feb 2015
Old 02-11-2015 , 07:29   Re: CSDM VIP Problem
Reply With Quote #2

UP !!!!! nobody can help me
Titus is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:08.


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