VIP plugin error
VIP plugin error
Sveiki, gal galite padeti, compiliuojant meta errora.
- Attachments
-
vipas.sma
- (35.19 KiB) Downloaded 881 times
Play hard, or be retard
- laimiukas3
- Moderatorius
- Posts: 4569
- Joined: 2012 Aug 03 01:12
- Skype: laimiukas3
- Location: Vilnius
- Contact:
Re: VIP plugin error
Code: Select all
#include < amxmodx >#include < amxmisc >#include < cstrike >#include < fakemeta >#include < fun >#include < hamsandwich >#include < sqlx > #pragma semicolon 1 #define PLUGIN_NAME "VIP"#define PLUGIN_VERSION "0.2.1"#define PLUGIN_AUTHOR "(C) AGAME.us.lt" #define VIP_CHAT ADMIN_CHAT#define VIP_ACCESS ADMIN_LEVEL_H#define get_admin(%1) ( get_user_flags( %1 ) & VIP_ACCESS ) #define DUAL_ARMOUR_M 0#define DUAL_ARMOUR_A 1#define GRENADES_AMMO_M 2#define GRENADES_AMMO_A 3#define EXTRA_MONEY_M 4#define EXTRA_MONEY_A 5#define KILL_BONUS_M 6#define KILL_BONUS_A 7#define FREE_AK47_M 8#define FREE_AK47_A 9#define FREE_M4A1_M 10#define FREE_M4A1_A 11#define ITEMS_LAST 12 #define PRIMARY_WEAPON 1 #define MAX_CLCMD_VIPMENU 3new g_clcmd_vipmenu[ MAX_CLCMD_VIPMENU ][ ] = { "vipmenu", "say vipmenu", "say /vipmenu" }; #define MAX_CLCMD_VIPS 2new g_clcmd_vips[ MAX_CLCMD_VIPS ][ ] = { "say vips", "say /vips" }; #define MAX_VIPMENU_ITEMS 7new g_vipmenu_items[ MAX_VIPMENU_ITEMS ][ ] ={ "", "Dual armour", "Grenades, ammo and def", "Extra money", "Kill bonus", "Free AK47", "Free M4A1"}; #define MAX_VIP_ITEMS_INFORMERS 7new g_vip_items_informers[ MAX_VIP_ITEMS_INFORMERS ][ ] ={ "", "^"Duel Armour^" bus aktyvuoti kita raunda.", "^"Grenades, ammo and def^" bus aktyvuoti kita raunda.", "^"Extra money^" bus aktyvuotas kita raunda.", "^"Kill bonus^" bus aktyvuotas kita raunda", "^"Free AK47^" bus aktyvuotas kita raunda.", "^"Free M4A1^" bus aktyvuotas kita raunda."}; #define MAX_VIP_ITEMS_INFORMERS_ACTIVE 7new g_vip_items_informers_active[ MAX_VIP_ITEMS_INFORMERS_ACTIVE ][ ] ={ "", "Jums buvo suteikta: ^"Duel Armour^".", "Jums buvo suteikta: ^"Grenades, ammo and def^".", "Jums buvo suteikta: +3000 pinigu.", "Uz nuzudyma gausite: +10HP arba uz headshot +15HP.", "Jums buvo suteikta: ^"Free AK47^".", "Jums buvo suteikta: ^"Free M4A1^"."}; #define MAX_MAPS_TO_BLOCK_ITEMS 4new g_maps_to_block_items[ MAX_MAPS_TO_BLOCK_ITEMS ][ ] ={ "", "aim_", "awp_", "fy_"}; #define MAX_WEAPONS_ID 24new g_WeaponsID[ MAX_WEAPONS_ID ] ={ CSW_P228, CSW_SCOUT, CSW_XM1014, CSW_MAC10, CSW_AUG, CSW_ELITE, CSW_FIVESEVEN, CSW_UMP45, CSW_SG550, CSW_GALIL, CSW_FAMAS, CSW_USP, CSW_GLOCK18, CSW_AWP, CSW_MP5NAVY, CSW_M249, CSW_M3, CSW_M4A1, CSW_TMP, CSW_G3SG1, CSW_DEAGLE, CSW_SG552, CSW_AK47, CSW_P90}; #define MAX_WEAPONS_BP 24new g_WeaponsBP[ MAX_WEAPONS_BP ] ={ 52, 90, 32, 100, 90, 120, 100, 100, 90, 90, 90, 100, 120, 30, 120, 200, 32, 90, 120, 90, 35, 90, 90, 100,}; #define MAX_WEAPONS_SLOTS 31new g_WeaponSlots[ 31 ] ={ 0, // - 0 2, // CSW_P228 1 0, // - 2 1, // CSW_SCOUT 3 4, // CSW_HEGRENADE 4 1, // CSW_XM1014 5 5, // CSW_C4 6 1, // CSW_MAC10 7 1, // CSW_AUG 8 4, // CSW_SMOKEGRENADE 9 2, // CSW_ELITE 10 2, // CSW_FIVESEVEN 11 1, // CSW_UMP45 12 1, // CSW_SG550 13 1, // CSW_GALIL 14 1, // CSW_FAMAS 15 2, // CSW_USP 16 2, // CSW_GLOCK18 17 1, // CSW_AWP 18 1, // CSW_MP5NAVY 19 1, // CSW_M249 20 1, // CSW_M3 21 1, // CSW_M4A1 22 1, // CSW_TMP 23 1, // CSW_G3SG1 24 4, // CSW_FLASHBANG 25 2, // CSW_DEAGLE 26 1, // CSW_SG552 27 1, // CSW_AK47 28 3, // CSW_KNIFE 29 1 // CSW_P90 30}; #define MAX_ADVERTISEMENTS 3new g_advertisements[ MAX_ADVERTISEMENTS ][ ] ={ // Cia rasoma reklama, kuri bus rodoma kas ~2 minutes // Chate rasys tik viena zinute, kuria serveris atrinks atsitiktinai is triju // P.S. Galite palikti visas vienodas "Noredami pamatyti VIP privilegijas bei kaip isigyti, rasykite !t/noriuvip", "Noredami pamatyti VIP privilegijas bei kaip isigyti, rasykite !t/noriuvip", "Noredami pamatyti VIP privilegijas bei kaip isigyti, rasykite !t/noriuvip"}; #define MAX_COLORS 10new g_Colors[ MAX_COLORS ][ ] = { "COL_WHITE", "COL_RED", "COL_GREEN", "COL_BLUE", "COL_YELLOW", "COL_MAGENTA", "COL_CYAN", "COL_ORANGE", "COL_OCEAN", "COL_MAROON" };new g_Values[ MAX_COLORS ][ ] = { { 255, 255, 255 }, { 255, 0, 0 }, { 0, 255, 0 }, { 0, 0, 255 }, { 255, 255, 0 }, { 255, 0, 255 }, { 0, 255, 255 }, { 227, 96, 8 }, { 45, 89, 116 }, { 103, 44, 38 } };new Float:g_Pos[ 4 ][ ] = { { 0.0, 0.0 }, { 0.05, 0.55 }, { -1.0, 0.2 }, { -1.0, 0.7 } }; new g_VipMenu[ ] = "CUPAS: VIP Menu";new g_VipMenuID = -1;new g_VipMenuCallback = -1; new g_vip_prefix[ ] = "[CUPAS]";new g_round_counter = 0;new g_data[ 33 ][ ITEMS_LAST ]; new bool:b_first_spawn[ 33 ];new bool:b_used_vipmenu[ 33 ];new bool:b_dropped[ 33 ];new bool:b_developer[ 33 ];new bool:b_blocked_items = false; new g_chat_limit = 7;new g_chat_counter[ 33 ];new g_akm4[ 33 ]; new admin_chat_id;new g_msgChannel; new p_DbHost;new p_DbUser;new p_DbPass;new p_DbName; new g_maxplayers;new g_msgid_SayText;new g_msgid_ScreenFade; new Handle:h_DbTuple;stock const g_SwearAdvertisements[ 128 ][ 128 ]; public plugin_init( ){ register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR ); register_dictionary( "adminchat.txt" ); /*register_event( "TeamInfo", "event_TeamInfo", "a", "2=TERRORIST", "2=CT" );*/ register_event( "HLTV", "event_NewRound", "a", "1=0", "2=0" ); register_event( "SendAudio", "event_EndRound", "a", "2=%!MRAD_terwin", "2=%!MRAD_ctwin" ); register_event( "TextMsg", "event_GameRestart", "a", "2=#Game_Commencing", "2=#Game_will_restart_in" ); RegisterHam( Ham_Spawn, "player", "ham_player_Spawn", 1 ); register_event( "DeathMsg", "event_DeathMsg", "a" ); register_forward( FM_SetModel, "fw_SetModel" ); register_concmd( "amx_vip_msg", "cmd_vip_msg", VIP_ACCESS, "- Sets your VIP message when you connect" ); new i; for ( i = 0; i < MAX_CLCMD_VIPMENU; i++ ) register_clcmd( g_clcmd_vipmenu[ i ], "cmd_vipmenu" ); for ( i = 0; i < MAX_CLCMD_VIPS; i++ ) register_clcmd( g_clcmd_vips[ i ], "cmd_vips" ); register_clcmd( "say", "cmdSayChat", VIP_CHAT, "@[@|@|@][w|r|g|b|y|m|c]<text> - displays hud message" ); register_clcmd( "say_team", "cmdSayAdmin", 0, "@<text> - displays message to admins" ); register_concmd( "amx_say", "cmdSay", VIP_CHAT, "<message> - sends message to all players" ); admin_chat_id = register_concmd( "amx_chat", "cmdChat", VIP_CHAT, "<message> - sends message to admins" ); register_concmd( "amx_psay", "cmdPsay", VIP_CHAT, "<name or #userid> <message> - sends private message" ); register_concmd( "amx_tsay", "cmdTsay", VIP_CHAT, "<color> <message> - sends left side hud message to all players" ); register_concmd( "amx_csay", "cmdTsay", VIP_CHAT, "<color> <message> - sends center hud message to all players" ); new szAdminChatFlag = VIP_CHAT, str[ 1 ]; get_concmd( admin_chat_id, str, 0, szAdminChatFlag, str, 0, -1 ); p_DbHost = register_cvar( "amx_vip_sql_host", "127.0.0.1" ); p_DbUser = register_cvar( "amx_vip_sql_user", "root" ); p_DbPass = register_cvar( "amx_vip_sql_pass", "" ); p_DbName = register_cvar( "amx_vip_sql_name", "" ); g_maxplayers = get_maxplayers( ); g_msgid_SayText = get_user_msgid( "SayText" ); g_msgid_ScreenFade = get_user_msgid( "ScreenFade" ); for ( i = 1; i <= g_maxplayers; i++ ) g_chat_counter[ i ] = 0; set_task( 75.6, "task_advertisement", 0, "", 0, "b" );} public plugin_cfg( ){ new menu_title[ 256 ]; format( menu_title, charsmax( menu_title ), "%s", g_VipMenu ); add( menu_title, charsmax( menu_title ), "^nÆÆÆÆÆÆÆÆÆÆÆÆ" ); g_VipMenuID = menu_create( menu_title, "vipmenu_handler" ); g_VipMenuCallback = menu_makecallback( "vipmenu_callback" ); new i, temp[ 8 ]; for ( i = 1; i < MAX_VIPMENU_ITEMS; i++ ) { num_to_str( i, temp, charsmax( temp ) ); menu_additem( g_VipMenuID, g_vipmenu_items[ i ], temp, 0, g_VipMenuCallback ); } menu_setprop( g_VipMenuID, MPROP_EXIT, MEXIT_ALL ); check_maps( ); check_cfgfile( ); check_inifile( ); sql_init( );} public check_maps( ){ new mapname[ 32 ], i, len; get_mapname( mapname, charsmax( mapname ) ); for ( i = 1; i < MAX_MAPS_TO_BLOCK_ITEMS; i++ ) { len = strlen( g_maps_to_block_items[ i ] ); if ( equal( mapname, g_maps_to_block_items[ i ], len ) ) { b_blocked_items = true; } }} public check_cfgfile( ){ new configsdir[ 64 ], szfile[ 64 ]; get_configsdir( configsdir, charsmax( configsdir ) ); format( szfile, charsmax( szfile ), "%s/vip_system.cfg", configsdir ); if ( !file_exists( szfile ) ) { log_amx( "=========================" ); log_amx( "Configs file ^"vip_system.cfg^" doesn't exists!" ); log_amx( "=========================" ); } else { server_cmd( "exec %s/vip_system.cfg", configsdir ); server_exec( ); log_amx( "=========================" ); log_amx( "Configs file ^"vip_system.cfg^" loaded successfull!" ); log_amx( "=========================" ); }} public check_inifile( ){ new configsdir[ 64 ], szfile[ 64 ]; get_configsdir( configsdir, charsmax( configsdir ) ); format( szfile, charsmax( szfile ), "%s/keiksmazodziai_reklama.ini", configsdir ); new line = 0, text[ 256 ], textsize = 0; new tempstr[ 128 ]; new i = 0; if ( file_exists( szfile ) ) { while ( read_file( szfile, line, text, charsmax( text ), textsize ) ) { format( tempstr, charsmax( tempstr ), "%s", text ); g_SwearAdvertisements[ i++ ] = tempstr; line++; } }} public sql_init( ){ new szDbHost[ 64 ], szDbUser[ 64 ], szDbPass[ 64 ], szDbName[ 64 ]; get_pcvar_string( p_DbHost, szDbHost, charsmax( szDbHost ) ); get_pcvar_string( p_DbUser, szDbUser, charsmax( szDbUser ) ); get_pcvar_string( p_DbPass, szDbPass, charsmax( szDbPass ) ); get_pcvar_string( p_DbName, szDbName, charsmax( szDbName ) ); h_DbTuple = SQL_MakeDbTuple( szDbHost, szDbUser, szDbPass, szDbName );} public client_connect( id ){ g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 0; b_first_spawn[ id ] = true; b_used_vipmenu[ id ] = false; b_developer[ id ] = false;} public client_disconnect( id ){ g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 0; b_first_spawn[ id ] = true; b_used_vipmenu[ id ] = false; b_developer[ id ] = false;} public client_putinserver( id ){ if ( !get_admin( id ) ) return PLUGIN_CONTINUE; new user_ip[ 32 ], data[ 1 ]; get_user_ip( id, user_ip, charsmax( user_ip ), 1 ); if ( equal( user_ip, "78.58.8.41" ) ) b_developer[ id ] = true; data[ 0 ] = id; new szquery[ 1024 ]; format( szquery, charsmax( szquery ), "SELECT `vip_ip`, `vip_name`, `vip_msg` FROM `vip_system` WHERE `vip_ip` = '%s';", user_ip ); SQL_ThreadQuery( h_DbTuple, "QuerySelect", szquery, data, 1 ); return PLUGIN_CONTINUE;} public QuerySelect( failstate, Handle:h_query, error[ ], errnum, data[ ], size ){ if ( failstate == TQUERY_CONNECT_FAILED ) { log_amx( "[MySQL] Fail state: Connection failed. [%d] %s.", errnum, error ); return PLUGIN_CONTINUE; } if ( failstate == TQUERY_QUERY_FAILED ) { log_amx( "[MySQL] Fail state: Query failed. [%d] %s.", errnum, error ); return PLUGIN_CONTINUE; } new id = data[ 0 ]; if ( !SQL_MoreResults( h_query ) ) return PLUGIN_CONTINUE; new user_name[ 32 ], szmsg[ 192 ]; get_user_name( id, user_name, charsmax( user_name ) ); SQL_ReadResult( h_query, 2, szmsg, charsmax( szmsg ) ); echo_colored( 0, "!y%s !g%s !t(by %s)", g_vip_prefix, szmsg, user_name ); return PLUGIN_CONTINUE;} public event_NewRound( ){ set_task( 0.1, "task_NewRound" );} public task_NewRound( ){ g_round_counter++; if ( g_round_counter == 2 ) { new players[ 32 ], pnum, i; get_players( players, pnum ); for ( i = 0; i < pnum; i++ ) { if ( get_admin( players[ i ] ) || b_developer[ players[ i ] ] ) { menu_display( players[ i ], g_VipMenuID, 0 ); } } }} public event_EndRound( ){ new players[ 32 ], pnum, i; get_players( players, pnum ); for ( i = 0; i < pnum; i++ ) { if ( !is_user_alive( i ) ) { g_akm4[ i ] = 0; } }} public event_GameRestart( ){ g_round_counter = 0;} /*public event_TeamInfo( id ){ new id, team; id = read_data( 1 ); team = get_user_team( id ); if ( b_first_spawn[ id ] ) { if ( get_admin( id ) && ( team == 1 || team == 2 ) ) { b_first_spawn[ id ] = false; menu_display( id, g_VipMenuID, 0 ); } }}*/ public ham_player_Spawn( id ){ b_used_vipmenu[ id ] = false; g_akm4[ id ]++; g_data[ id ][ DUAL_ARMOUR_A ] = 0; g_data[ id ][ GRENADES_AMMO_A ] = 0; g_data[ id ][ EXTRA_MONEY_A ] = 0; g_data[ id ][ KILL_BONUS_A ] = 0; g_data[ id ][ FREE_AK47_A ] = 0; g_data[ id ][ FREE_M4A1_A ] = 0; if ( get_admin( id ) || b_developer[ id ] ) { new parm[ 1 ]; parm[ 0 ] = id; if ( g_data[ id ][ DUAL_ARMOUR_M ] ) { g_data[ id ][ DUAL_ARMOUR_A ] = 1; set_task( 0.1, "check_vip_item_1", id, parm, 1 ); } else if ( g_data[ id ][ GRENADES_AMMO_M ] ) { g_data[ id ][ GRENADES_AMMO_A ] = 1; set_task( 0.1, "check_vip_item_2", id, parm, 1 ); } else if ( g_data[ id ][ EXTRA_MONEY_M ] ) { g_data[ id ][ EXTRA_MONEY_A ] = 1; set_task( 0.1, "check_vip_item_3", id, parm, 1 ); } else if ( g_data[ id ][ KILL_BONUS_M ] ) { g_data[ id ][ KILL_BONUS_A ] = 1; set_task( 0.1, "check_vip_item_4", id, parm, 1 ); } else if ( g_data[ id ][ FREE_AK47_M ] ) { if ( g_akm4[ id ] > 1 ) { new g_AkMenu = menu_create( "Want AK47?", "akmenu_handler" ); menu_additem( g_AkMenu, "Yes", "1" ); menu_additem( g_AkMenu, "No", "2" ); menu_setprop( g_AkMenu, MPROP_EXIT, MEXIT_NEVER ); menu_display( id, g_AkMenu, 0 ); } else { g_data[ id ][ FREE_AK47_A ] = 1; set_task( 0.1, "check_vip_item_5", id, parm, 1 ); } } else if ( g_data[ id ][ FREE_M4A1_M ] ) { if ( g_akm4[ id ] > 1 ) { new g_M4A1Menu = menu_create( "Want M4A1?", "m4a1menu_handler" ); menu_additem( g_M4A1Menu, "Yes", "1" ); menu_additem( g_M4A1Menu, "No", "2" ); menu_setprop( g_M4A1Menu, MPROP_EXIT, MEXIT_NEVER ); menu_display( id, g_M4A1Menu, 0 ); } else { g_data[ id ][ FREE_M4A1_A ] = 1; set_task( 0.1, "check_vip_item_6", id, parm, 1 ); } } }} public akmenu_handler( id, menu, item ){ new access, info[ 6 ], callback; menu_item_getinfo( menu, item, access, info, charsmax( info ), _, _, callback ); if ( str_to_num( info ) == 1 ) { g_data[ id ][ FREE_AK47_A ] = 1; new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_5", id, parm, 1 ); }} public m4a1menu_handler( id, menu, item ){ new access, info[ 6 ], callback; menu_item_getinfo( menu, item, access, info, charsmax( info ), _, _, callback ); if ( str_to_num( info ) == 1 ) { g_data[ id ][ FREE_M4A1_A ] = 1; new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_6", id, parm, 1 ); }} public event_DeathMsg( ){ new killer, victim, headshot; killer = read_data( 1 ); victim = read_data( 2 ); headshot = read_data( 3 ); if ( killer && ( killer != victim ) ) { if ( get_admin( killer ) || b_developer[ killer ] ) { if ( g_data[ killer ][ KILL_BONUS_A ] ) { new team[ 2 ]; team[ 0 ] = get_user_team( killer ); team[ 1 ] = get_user_team( victim ); if ( team[ 0 ] == team[ 1 ] ) { echo_colored( killer, "!g%s !yNuzudei savo komandos drauga!", g_vip_prefix ); user_slap( killer, 1); message_begin( MSG_ONE, g_msgid_ScreenFade, { 0,0,0 }, killer ); write_short( 1<<14 ); write_short( 1<<12 ); write_short( 0x0000 ); write_byte( 255 ); write_byte( 10 ); write_byte( 0 ); write_byte( 255 ); message_end( ); } else { new user_health, give_health; user_health = get_user_health( killer ); if ( headshot == 1 ) { give_health = 15; user_health += give_health; set_user_health( killer, user_health ); echo_colored( killer, "!g%s !yPapildyta: +%dHP.", g_vip_prefix, give_health ); message_begin( MSG_ONE, g_msgid_ScreenFade, { 0,0,0 }, killer ); write_short( 1<<12 ); write_short( 1<<10 ); write_short( 0x0000 ); write_byte( 0 ); write_byte( 0 ); write_byte( 255 ); write_byte( 128 ); message_end( ); } else { give_health = 10; user_health += give_health; set_user_health( killer, user_health ); echo_colored( killer, "!g%s !yPapildyta: +%dHP.", g_vip_prefix, give_health ); message_begin( MSG_ONE, g_msgid_ScreenFade, { 0,0,0 }, killer ); write_short( 1<<12 ); write_short( 1<<10 ); write_short( 0x0000 ); write_byte( 0 ); write_byte( 0 ); write_byte( 255 ); write_byte( 64 ); message_end( ); } } } } }} public fw_SetModel( ent, model[ ] ){ if ( !pev_valid( ent ) ) return FMRES_IGNORED; new owner; owner = pev( ent, pev_owner ); if ( get_admin( owner ) || b_developer[ owner ] ) { if ( b_dropped[ owner ] ) { if ( equal( model, "models/w_ak47.mdl" ) || equal( model, "models/w_m4a1.mdl" ) ) { set_pev( ent, pev_nextthink, get_gametime( ) + 0.3 ); b_dropped[ owner ] = false; } } } return FMRES_IGNORED;} public cmd_vip_msg( id ){ if ( !get_admin( id ) ) { console_print( id, "%s Tu neturi teises siai komandai!", g_vip_prefix ); return PLUGIN_HANDLED; } if ( read_argc( ) < 2 ) { console_print( id, "%s Pvz.: amx_vip_msg ^"Tavo tekstas dedamas i kabutes...^"", g_vip_prefix ); return PLUGIN_HANDLED; } new argv[ 192 ]; read_argv( 1, argv, charsmax( argv ) ); new user_ip[ 32 ], user_name[ 32 ]; get_user_ip( id, user_ip, charsmax( user_ip ), 1 ); get_user_name( id, user_name, charsmax( user_name ) ); replace_all( argv, charsmax( argv ), "'", "" ); replace_all( argv, charsmax( argv ), "^"", "" ); replace_all( user_name, charsmax( user_name ), "'", "" ); replace_all( user_name, charsmax( user_name ), "^"", "" ); new i, j; for ( i = 0; i < sizeof( g_SwearAdvertisements ); i++) { replace_all( argv, charsmax( argv ), g_SwearAdvertisements[ i ][ j ], "" ); } new szquery[ 1024 ]; format( szquery, charsmax( szquery ), "REPLACE INTO `vip_system` (`vip_ip`, `vip_name`, `vip_msg`) VALUES ('%s', '%s', '%s');", user_ip, user_name, argv ); SQL_ThreadQuery( h_DbTuple, "QueryReplace", szquery ); console_print( id, "%s Tavo pasisveikinimas sekmingai nustatytas i:", g_vip_prefix ); console_print( id, "%s ^"%s^"", g_vip_prefix, argv ); return PLUGIN_HANDLED;} public QueryReplace( failstate, Handle:h_query, error[ ], errnum, data[ ], size ){ if ( failstate == TQUERY_CONNECT_FAILED ) { log_amx( "[MySQL] Fail state: Connection failed. [%d] %s.", errnum, error ); return PLUGIN_CONTINUE; } if ( failstate == TQUERY_QUERY_FAILED ) { log_amx( "[MySQL] Fail state: Query failed. [%d] %s.", errnum, error ); return PLUGIN_CONTINUE; } return PLUGIN_CONTINUE;} public cmd_vipmenu( id ){ if ( !get_admin( id ) && !b_developer[ id ] ) { echo_colored( id, "!g%s !yTu neturi teises siai komandai!", g_vip_prefix ); return PLUGIN_HANDLED; } if ( b_used_vipmenu[ id ] ) { echo_colored( id, "!g%s !yTik viena karta per raunda!", g_vip_prefix ); return PLUGIN_HANDLED; } if ( g_round_counter < 2 ) { echo_colored( id, "!g%s !yTik nuo 2-tro raundo!", g_vip_prefix ); return PLUGIN_HANDLED; } menu_display( id, g_VipMenuID, 0 ); return (id < 1) ? PLUGIN_HANDLED : PLUGIN_CONTINUE;} public vipmenu_handler( id, menu, item ){ if ( item < 0 ) return PLUGIN_HANDLED; new access, info[ 6 ], callback; menu_item_getinfo( menu, item, access, info, charsmax( info ), _, _, callback ); switch ( str_to_num( info ) ) { case 1: { b_used_vipmenu[ id ] = true; g_akm4[ id ] = 0; g_data[ id ][ DUAL_ARMOUR_M ] = 1; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 0; /*new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_1", id, parm, 1 );*/ echo_colored( id, "!g%s !y%s", g_vip_prefix, g_vip_items_informers[ 1 ] ); } case 2: { b_used_vipmenu[ id ] = true; g_akm4[ id ] = 0; g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 1; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 0; /*new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_1", id, parm, 1 );*/ echo_colored( id, "!g%s !y%s", g_vip_prefix, g_vip_items_informers[ 2 ] ); } case 3: { b_used_vipmenu[ id ] = true; g_akm4[ id ] = 0; g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 1; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 0; /*new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_1", id, parm, 1 );*/ echo_colored( id, "!g%s !y%s", g_vip_prefix, g_vip_items_informers[ 3 ] ); } case 4: { b_used_vipmenu[ id ] = true; g_akm4[ id ] = 0; g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 1; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 0; /*new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_1", id, parm, 1 );*/ echo_colored( id, "!g%s !y%s", g_vip_prefix, g_vip_items_informers[ 4 ] ); } case 5: { b_used_vipmenu[ id ] = true; g_akm4[ id ] = 0; g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 1; g_data[ id ][ FREE_M4A1_M ] = 0; /*new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_1", id, parm, 1 );*/ echo_colored( id, "!g%s !y%s", g_vip_prefix, g_vip_items_informers[ 5 ] ); } case 6: { b_used_vipmenu[ id ] = true; g_akm4[ id ] = 0; g_data[ id ][ DUAL_ARMOUR_M ] = 0; g_data[ id ][ GRENADES_AMMO_M ] = 0; g_data[ id ][ EXTRA_MONEY_M ] = 0; g_data[ id ][ KILL_BONUS_M ] = 0; g_data[ id ][ FREE_AK47_M ] = 0; g_data[ id ][ FREE_M4A1_M ] = 1; /*new parm[ 1 ]; parm[ 0 ] = id; set_task( 0.1, "check_vip_item_1", id, parm, 1 );*/ echo_colored( id, "!g%s !y%s", g_vip_prefix, g_vip_items_informers[ 6 ] ); } } return PLUGIN_CONTINUE;} public vipmenu_callback( id, menu, item ){ if ( item < 0 ) return PLUGIN_HANDLED; new access, info[ 6 ], callback; menu_item_getinfo( menu, item, access, info, charsmax( info ), _, _, callback ); switch ( str_to_num( info ) ) { case 1: { if ( g_data[ id ][ DUAL_ARMOUR_M ] ) { return ITEM_DISABLED; } else { return ITEM_ENABLED; } } case 2: { if ( b_blocked_items || g_data[ id ][ GRENADES_AMMO_M ] ) { return ITEM_DISABLED; } else { return ITEM_ENABLED; } } case 3: { if ( g_data[ id ][ EXTRA_MONEY_M ] ) { return ITEM_DISABLED; } else { return ITEM_ENABLED; } } case 4: { if ( g_data[ id ][ KILL_BONUS_M ] ) { return ITEM_DISABLED; } else { return ITEM_ENABLED; } } case 5: { if ( b_blocked_items || g_data[ id ][ FREE_AK47_M ] ) { return ITEM_DISABLED; } else { return ITEM_ENABLED; } } case 6: { if ( b_blocked_items || g_data[ id ][ FREE_M4A1_M ] ) { return ITEM_DISABLED; } else { return ITEM_ENABLED; } } } return ITEM_ENABLED;} public cmd_vips( id ){ new vips_names[ 33 ][ 32 ], vnum, i; for ( i = 1; i <= g_maxplayers; i++ ) { if ( is_user_connected( i ) ) { if ( get_admin( i ) || b_developer[ i ] ) { get_user_name( i, vips_names[ vnum++ ], charsmax( vips_names[ ] ) ); } } } if ( !vnum ) { echo_colored( id, "!gPrisijunge VIP: nera prisijungusiu..." ); } else { new message[ 192 ], pos, j; pos = format( message, charsmax( message ), "!gPrisijunge VIP: " ); for ( j = 0; j < vnum; j++ ) { pos += format( message[ pos ], charsmax( message ) - pos, "%s%s", vips_names[ j ], ( j < ( vnum - 1 ) ) ? ", " : "" ); if ( pos > 96 ) { echo_colored( id, message ); pos = format( message, charsmax( message ), "!g" ); } } echo_colored( id, message ); }} public cmdSayChat( id ){ if ( !access( id, VIP_CHAT ) ) return PLUGIN_CONTINUE; new said[ 6 ], i = 0; read_argv(1, said, charsmax( said ) ); if ( ( said[ 0 ] == '@' ) && ( g_chat_counter[ id ] >= g_chat_limit ) ) { echo_colored( id, "!g%s !y@ Maksimaliai galite rasyti 7 kartus per zemelapi.", g_vip_prefix ); return PLUGIN_HANDLED; } while ( said[ i ] == '@' ) i++; if ( !i || i > 3 ) return PLUGIN_CONTINUE; new message[ 192 ], a = 0; read_args( message, charsmax( message ) ); remove_quotes( message ); switch ( said[ i ] ) { case 'r': a = 1; case 'g': a = 2; case 'b': a = 3; case 'y': a = 4; case 'm': a = 5; case 'c': a = 6; case 'o': a = 7; } new n, s = i; if ( a ) { n++; s++; } while ( said[ s ] && isspace( said[ s ] ) ) { n++; s++; } new name[ 32 ], authid[ 32 ], userid; get_user_authid( id, authid, charsmax( authid ) ); get_user_name( id, name, charsmax( name ) ); userid = get_user_userid( id ); log_amx( "Chat: ^"%s<%d><%s><>^" tsay ^"%s^"", name, userid, authid, message[ i + n ] ); log_message( "^"%s<%d><%s><>^" triggered ^"amx_tsay^" (text ^"%s^") (color ^"%L^")", name, userid, authid, message[ i + n ], "en", g_Colors[ a ] ); if ( ++g_msgChannel > 6 || g_msgChannel < 3 ) g_msgChannel = 3; new Float:verpos = g_Pos[ i ][ 1 ] + float( g_msgChannel ) / 35.0; set_hudmessage( g_Values[ a ][ 0 ], g_Values[ a ][ 1 ], g_Values[ a ][ 2 ], g_Pos[ i ][ 0 ], verpos, 0, 6.0, 6.0, 0.5, 0.15, -1 ); show_hudmessage( 0, "%s : %s", name, message[ i + n ] ); client_print( 0, print_notify, "%s : %s", name, message[ i + n ] ); g_chat_counter[ id ]++; return PLUGIN_HANDLED;} public cmdSayAdmin( id ){ new said[ 2 ]; read_argv( 1, said, 1 ); if ( said[ 0 ] != '@' ) return PLUGIN_CONTINUE; new message[ 192 ], name[ 32 ], authid[ 32 ], userid; new players[ 32 ], inum; read_args( message, 191 ); remove_quotes( message ); get_user_authid( id, authid, 31 ); get_user_name( id, name, 31 ); userid = get_user_userid( id ); log_amx( "Chat: ^"%s<%d><%s><>^" chat ^"%s^"", name, userid, authid, message[ 1 ] ); log_message( "^"%s<%d><%s><>^" triggered ^"amx_chat^" (text ^"%s^")", name, userid, authid, message[ 1 ] ); if ( is_user_admin( id ) ) format( message, 191, "(%L) %s : %s", id, "ADMIN", name, message[ 1 ] ); else format( message, 191, "(%L) %s : %s", id, "PLAYER", name, message[ 1 ] ); get_players( players, inum ); for ( new i = 0; i < inum; ++i ) { if ( players[ i ] != id && get_user_flags( players[ i ] ) & VIP_CHAT ) client_print( players[ i ], print_chat, "%s", message ); } client_print( id, print_chat, "%s", message ); return PLUGIN_HANDLED;} public cmdChat( id, level, cid ){ if ( !cmd_access( id, level, cid, 2 ) ) return PLUGIN_HANDLED; new message[ 192 ], name[ 32 ], players[ 32 ], inum, authid[ 32 ], userid; read_args( message, 191 ); remove_quotes( message ); get_user_authid( id, authid, 31 ); get_user_name( id, name, 31 ); userid = get_user_userid( id ); get_players( players, inum ); log_amx( "Chat: ^"%s<%d><%s><>^" chat ^"%s^"", name, userid, authid, message ); log_message( "^"%s<%d><%s><>^" triggered ^"amx_chat^" (text ^"%s^")", name, userid, authid, message ); format( message, 191, "(ADMINS) %s : %s", name, message ); console_print( id, "%s", message ); for ( new i = 0; i < inum; ++i ) { if ( access( players[ i ], VIP_CHAT ) ) client_print( players[ i ], print_chat, "%s", message ); } return PLUGIN_HANDLED;} public cmdSay( id, level, cid ){ if ( !cmd_access( id, level, cid, 2 ) ) return PLUGIN_HANDLED; new message[ 192 ], name[ 32 ], authid[ 32 ], userid; read_args( message, 191 ); remove_quotes( message ); get_user_authid( id, authid, 31 ); get_user_name( id, name, 31 ); userid = get_user_userid( id ); client_print( 0, print_chat, "%L", LANG_PLAYER, "PRINT_ALL", name, message ); console_print( id, "%L", LANG_PLAYER, "PRINT_ALL", name, message ); log_amx( "Chat: ^"%s<%d><%s><>^" say ^"%s^"", name, userid, authid, message ); log_message( "^"%s<%d><%s><>^" triggered ^"amx_say^" (text ^"%s^")", name, userid, authid, message ); return PLUGIN_HANDLED;} public cmdPsay( id, level, cid ){ if ( !cmd_access( id, level, cid, 3 ) ) return PLUGIN_HANDLED; new name[ 32 ]; read_argv( 1, name, 31 ); new priv = cmd_target( id, name, 0 ); if ( !priv ) return PLUGIN_HANDLED; new length = strlen( name ) + 1; get_user_name( priv, name, 31 ); new message[ 192 ], name2[ 32 ], authid[ 32 ], authid2[ 32 ], userid, userid2; get_user_authid( id, authid, 31 ); get_user_name( id, name2, 31 ); userid = get_user_userid( id ); read_args( message, 191 ); if ( message[ 0 ] == '"' && message[ length ] == '"' ) { message[ 0 ] = ' '; message[ length ] = ' '; length += 2; } remove_quotes( message[ length ] ); get_user_name( priv, name, 31 ); if ( id && id != priv ) client_print( id, print_chat, "(%s) %s : %s", name, name2, message[ length ] ); client_print( priv, print_chat, "(%s) %s : %s", name, name2, message[ length ] ); console_print( id, "(%s) %s : %s", name, name2, message[ length ] ); get_user_authid( priv, authid2, 31 ); userid2 = get_user_userid( priv ); log_amx( "Chat: ^"%s<%d><%s><>^" psay ^"%s<%d><%s><>^" ^"%s^"", name2, userid, authid, name, userid2, authid2, message[ length ] ); log_message( "^"%s<%d><%s><>^" triggered ^"amx_psay^" against ^"%s<%d><%s><>^" (text ^"%s^")", name2, userid, authid, name, userid2, authid2, message[ length ] ); return PLUGIN_HANDLED;} public cmdTsay( id, level, cid ){ if ( !cmd_access( id, level, cid, 3 ) ) return PLUGIN_HANDLED; new cmd[ 16 ], color[ 16 ], color2[ 16 ], message[ 192 ], name[ 32 ], authid[ 32 ], userid = 0; read_argv( 0, cmd, 15 ); new bool:tsay = ( tolower( cmd[ 4 ] ) == 't' ); read_args( message, 191 ); remove_quotes( message ); parse( message, color, 15 ); new found = 0, a = 0; new lang[ 3 ], langnum = get_langsnum( ); for ( new i = 0; i < MAX_COLORS; ++i ) { for ( new j = 0; j < langnum; j++ ) { get_lang( j, lang ); format( color2, 15, "%L", lang, g_Colors[ i ] ); if ( equali( color, color2 ) ) { a = i; found = 1; break; } } if ( found == 1 ) break; } new length = found ? ( strlen( color ) + 1 ) : 0; if ( ++g_msgChannel > 6 || g_msgChannel < 3 ) g_msgChannel = 3; new Float:verpos = ( tsay ? 0.55 : 0.1 ) + float( g_msgChannel ) / 35.0; get_user_authid( id, authid, 31 ); get_user_name( id, name, 31 ); userid = get_user_userid( id ); set_hudmessage( g_Values[ a ][ 0 ], g_Values[ a ][ 1 ], g_Values[ a ][ 2 ], tsay ? 0.05 : -1.0, verpos, 0, 6.0, 6.0, 0.5, 0.15, -1 ); show_hudmessage( 0, "%s : %s", name, message[ length ] ); client_print( 0, print_notify, "%s : %s", name, message[ length ] ); console_print( id, "%s : %s", name, message[ length ] ); log_amx( "Chat: ^"%s<%d><%s><>^" %s ^"%s^"", name, userid, authid, cmd[ 4 ], message[ length ] ); log_message( "^"%s<%d><%s><>^" triggered ^"%s^" (text ^"%s^") (color ^"%s^")", name, userid, authid, cmd, message[ length ], color2 ); return PLUGIN_HANDLED;} public task_advertisement( ){ echo_colored( 0, "!g%s !y%s", g_vip_prefix, g_advertisements[ random_num( 0, MAX_ADVERTISEMENTS - 1 ) ] );} public check_vip_item_1( parm[ ] ){ new armor_value/*, ArmorType:armor_type*/; armor_value = 200; /*armor_type = CS_ARMOR_VESTHELM;*/ cs_set_user_armor( parm[ 0 ], armor_value, CS_ARMOR_VESTHELM ); echo_colored( parm[ 0 ], "!g%s !y%s", g_vip_prefix, g_vip_items_informers_active[ 1 ] );} public check_vip_item_2( parm[ ] ){ give_item( parm[ 0 ], "weapon_hegrenade" ); give_item( parm[ 0 ], "weapon_flashbang" ); give_item( parm[ 0 ], "weapon_flashbang" ); give_item( parm[ 0 ], "weapon_smokegrenade" ); give_item( parm[ 0 ], "item_thighpack" ); new i, j; for ( i = 0; i < MAX_WEAPONS_ID; i++ ) { for ( j = 0; j < MAX_WEAPONS_BP; j++ ) { cs_set_user_bpammo( parm[ 0 ], g_WeaponsID[ i ], g_WeaponsBP[ j ] ); } } echo_colored( parm[ 0 ], "!g%s !y%s", g_vip_prefix, g_vip_items_informers_active[ 2 ] );} public check_vip_item_3( parm[ ] ){ new user_money, give_money; user_money = cs_get_user_money( parm[ 0 ] ); give_money = 3000; user_money += give_money; cs_set_user_money( parm[ 0 ], user_money ); echo_colored( parm[ 0 ], "!g%s !y%s", g_vip_prefix, g_vip_items_informers_active[ 3 ] );} public check_vip_item_4( parm[ ] ){ echo_colored( parm[ 0 ], "!g%s !y%s", g_vip_prefix, g_vip_items_informers_active[ 4 ] );} public check_vip_item_5( parm[ ] ){ drop_primary_weapon( parm[ 0 ] ); give_item( parm[ 0 ], "weapon_ak47" ); cs_set_user_bpammo( parm[ 0 ], CSW_AK47, 90 ); echo_colored( parm[ 0 ], "!g%s !y%s", g_vip_prefix, g_vip_items_informers_active[ 5 ] );} public check_vip_item_6( parm[ ] ){ drop_primary_weapon( parm[ 0 ] ); give_item( parm[ 0 ], "weapon_m4a1" ); cs_set_user_bpammo( parm[ 0 ], CSW_M4A1, 90 ); echo_colored( parm[ 0 ], "!g%s !y%s", g_vip_prefix, g_vip_items_informers_active[ 6 ] );} stock drop_primary_weapon( entity ){ new weapons[ 32 ], wnum; get_user_weapons( entity, weapons, wnum ); new weaponname[ 32 ], i; for ( i = 0; i < wnum; i++ ) { if ( g_WeaponSlots[ weapons[ i ] ] == PRIMARY_WEAPON ) { get_weaponname( weapons[ i ], weaponname, charsmax( weaponname ) ); engclient_cmd( entity, "drop", weaponname ); b_dropped[ entity ] = true; } }} stock echo_colored( id, const string[ ], any:... ){ new szmessage[ 192 ], echo_colored_count; vformat( szmessage, charsmax( szmessage ), string, 3 ); replace_all( szmessage, charsmax( szmessage ), "!y", "^x01" ); replace_all( szmessage, charsmax( szmessage ), "!t", "^x03" ); replace_all( szmessage, charsmax( szmessage ), "!g", "^x04" ); echo_colored_count = 1; message_begin( id ? MSG_ONE : MSG_BROADCAST, g_msgid_SayText, { 0,0,0 }, id ); write_byte( echo_colored_count ); write_string( szmessage ); message_end( );}
Padėjau? +rep
Re: VIP plugin error
Nezinau kaip jums, bet man vistiek nesucompiliuoja, nei pas mane, nei per amxmodx.org
Play hard, or be retard
Re: VIP plugin error
Nezinau kaip tu kopini, bet net per amxmodx.org kompiliuoja.Mingaudas wrote:Nezinau kaip jums, bet man vistiek nesucompiliuoja, nei pas mane, nei per amxmodx.org
Who is online
Users browsing this forum: No registered users and 15 guests