as my topic says i use MYSQL and a modified VIP system to add Admin system but it never saves the level and stuff could someone help me please?
Код:
//============ [ Includes ] ============//
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <file>
//======================================//
#pragma tabsize 0
#define VIPS_SEND_COMMAND
#define RED 0xE60000AA
#define YELLOW 0xFFFF00AA
#define GREEN 0x00FF00AA
#define ABLUE 0x2641FEAA
#define COLOR_VIP 0xFF5500AA
#define COLOR_ORANGE COLOR_VIP
#define MYLVL 12000
#define VIPS 12001
#define VIPCMDS 12002
#define ONCONN 12003
#define VSPA 12004
#define ADMIN_SPEC_TYPE_NONE 0
#define ADMIN_SPEC_TYPE_PLAYER 1
#define ADMIN_SPEC_TYPE_VEHICLE 2
#define Public:%0(%1) \
forward%0(%1); public%0(%1)
#define FormatMSG(%0,%1,%2,%3)\
do{\
format( _S_T_R_, sizeof ( _S_T_R_ ), ( %2 ), %3);\
SendClientMessage( ( %0 ),( %1 ), _S_T_R_);\
}\
while ( False )
enum pInfo
{
Vip,
SpecID,
SpecType,
God,
CarGod,
Level,
Score,
Cash,
Kills,
Deaths,
};
new P_DATA[ MAX_PLAYERS ][ pInfo ];
new DB:Database;
new Float:Position[ MAX_PLAYERS ][ 4 ];
new _S_T_R_[ 256 ];
new False=false;
public OnFilterScriptInit( )
{
Database = db_open( "Administration.db" );
db_free_result( db_query( Database, "CREATE TABLE IF NOT EXISTS `Accounts` \
( `Key` INTEGER PRIMARY KEY AUTOINCREMENT, \
`Name` TEXT, \
`Vip` NUMERIC, \
`Level` NUMERIC, \
`Score` NUMERIC, \
`Money` NUMERIC, \
`Kills` NUMERIC, \
`Deaths` NUMERIC, \
`VSkin` NUMERIC )" ) );
return 1;
}
public OnFilterScriptExit( )
{
db_close( Database );
return 1;
}
public OnPlayerConnect( playerid )
{
new Query[ 256 ], string[ 128 ], DBResult:Result;
format( Query, sizeof( Query ), "SELECT `Key` FROM `Accounts` WHERE `Name` = '%s'", PlayerName2( playerid ) );
Result = db_query( Database, Query );
if ( db_num_rows( Result ) )
{
new Field[ 128 ];
db_get_field_assoc( Result, "Vip", Field, 128 );
P_DATA[ playerid ][ Vip ] = strval( Field );
db_get_field_assoc( Result, "Level", Field, 128 );
P_DATA[ playerid ][ Level ] = strval( Field );
db_get_field_assoc( Result, "Score", Field, 128 );
P_DATA[ playerid ][ Score ] = strval( Field );
db_get_field_assoc( Result, "Money", Field, 128 );
P_DATA[ playerid ][ Cash ] = strval( Field );
db_get_field_assoc( Result, "Kills", Field, 128 );
P_DATA[ playerid ][ Kills ] = strval( Field );
db_get_field_assoc( Result, "Deaths", Field, 128 );
P_DATA[ playerid ][ Deaths ] = strval( Field );
ResetPlayerMoney( playerid );
GivePlayerMoney( playerid, P_DATA[ playerid ][ Cash ] );
SetPlayerScore( playerid, P_DATA[ playerid ][ Score ] );
format( string, sizeof( string ), "\t\t{FF5500}Your Stats:\n\n{FF5500}You have V.I.P level {00FF00}%d\n{FF5500}Admin Level: {00FF00}%d\n{FF5500}Kills: {00FF00}%d {FF5500}|| Deaths: {00FF00}%d\n\n{E60000}Congratulations!", P_DATA[ playerid ][ Vip ], P_DATA[ playerid ][ Level ], P_DATA[ playerid ][ Kills ], P_DATA[ playerid ][ Deaths ] );
ShowPlayerDialog( playerid, ONCONN, DIALOG_STYLE_MSGBOX, "Account:", string, "Quit", "" );
}
else
{
SendClientMessage( playerid, YELLOW, "ACCOUNT: {FFFFFF}You don't have an account! Your account have been created automaticlly!" );
format( Query, sizeof( Query ), "INSERT INTO `Accounts` VALUES(NULL, '%s', '%d', '%d', '%d', '%d', '%d', '%d', '%d' )", PlayerName2( playerid ), 0, 0, 0, 0, 0, 0, 0 );
db_free_result( db_query( Database, Query ) );
}
db_free_result( Result );
return 1;
}
public OnPlayerDisconnect( playerid, reason )
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
{
AdvanceSpectate( i );
}
}
return 1;
}
public OnPlayerDeath( playerid, killerid, reason )
{
P_DATA[ killerid ][ Kills ] ++;
P_DATA[ playerid ][ Deaths ] ++;
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
{
AdvanceSpectate( i );
}
}
return 1;
}
public OnPlayerInteriorChange( playerid, newinteriorid, oldinteriorid )
{
new i = 0;
while( i != MAX_PLAYERS )
{
if ( IsPlayerConnected( i ) && GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid && P_DATA[ i ][ SpecType ] == ADMIN_SPEC_TYPE_PLAYER )
{
SetPlayerInterior( i, newinteriorid );
}
i++;
}
}
public OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
{
if ( GetPlayerState( playerid ) == PLAYER_STATE_SPECTATING && P_DATA[ playerid ][ SpecID ] != INVALID_PLAYER_ID )
{
if ( newkeys == KEY_JUMP ) AdvanceSpectate( playerid );
else if ( newkeys == KEY_SPRINT ) ReverseSpectate( playerid );
}
return 1;
}
public OnPlayerEnterVehicle( playerid, vehicleid )
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
{
TogglePlayerSpectating( i, 1 );
PlayerSpectateVehicle( i, vehicleid );
P_DATA[ i ][ SpecType ] = ADMIN_SPEC_TYPE_VEHICLE;
}
}
return 1;
}
public OnPlayerStateChange( playerid, newstate, oldstate )
{
switch( newstate )
{
case PLAYER_STATE_ONFOOT:
{
switch( oldstate )
{
case PLAYER_STATE_DRIVER: OnPlayerExitVehicle( playerid, 255 );
case PLAYER_STATE_PASSENGER: OnPlayerExitVehicle( playerid, 255 );
}
}
}
return 1;
}
public OnPlayerText( playerid, text[ ] )
{
new str[ 256 ], str2[ 256 ];
if ( text[ 0 ] == '!' && P_DATA[ playerid ][ Vip ] >= 1 )
{
format( str, sizeof( str ),"V.I.P Chat: {00FF00}%s{FF5500}: %s", PlayerName2( playerid ), text[ 1 ] );
SendVipMessage( COLOR_ORANGE, str );
return 0;
}
if ( text[ 0 ] == '#' && P_DATA[ playerid ][ Level ] >= 1 )
{
format( str2, sizeof( str2 ), "Admin Chat: {00FF00}%s{FFFFFF}: %s", PlayerName2( playerid ), text[ 1 ] );
SendAdminMessage( COLOR_ORANGE, str2 );
return 0;
}
return 1;
}
public OnPlayerExitVehicle( playerid, vehicleid )
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid && P_DATA[ i ][ SpecType ] == ADMIN_SPEC_TYPE_VEHICLE)
{
TogglePlayerSpectating( i, 1 );
PlayerSpectatePlayer( i, playerid );
P_DATA[ i ][ SpecType ] = ADMIN_SPEC_TYPE_PLAYER;
}
}
return 1;
}
public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
{
if ( dialogid == VSPA )
{
if ( response )
{
if ( listitem == 0 )
{
for ( new i = 0; i < 5; i++ )
{
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
{
RemovePlayerAttachedObject( playerid, i );
}
}
SetPlayerAttachedObject( playerid, 1, 19086, 8, -0.049768, -0.014062, -0.108385, 87.458297, 263.478149, 184.123764, 0.622413, 1.041609, 1.012785 );
SendClientMessage( playerid, COLOR_VIP, "You have holded a {00FF00}dick!" );
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
}
if ( listitem == 1 )
{
for ( new i = 0; i < 5; i++ )
{
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
{
RemovePlayerAttachedObject( playerid, i );
}
}
SetPlayerAttachedObject( playerid, 0, 1114, 1, 0.138007, 0.002714, -0.157366, 350.942352, 16.794704, 32.683506, 0.791829, 0.471535, 1.032759 );
SetPlayerAttachedObject( playerid, 1, 1114, 1, 0.138007, 0.002714, 0.064523, 342.729064, 354.099456, 32.369094, 0.791829, 0.471535, 1.032759 );
SendClientMessage( playerid, COLOR_VIP, "You have holded a {00FF00}iron!" );
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
}
if ( listitem == 2 )
{
for ( new i = 0; i < 5; i++ )
{
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
{
RemovePlayerAttachedObject( playerid, i );
}
}
SetPlayerAttachedObject( playerid, 0, 18645, 2, 0.017478, 0.051500, 0.003912, 285.055511, 90.860740, 171.179550, 1.780549, 0.912008, 1.208514 );
SetPlayerAttachedObject( playerid, 1, 18690, 2, -2.979508, 0.306475, -0.388553, 285.055511, 90.860740, 171.179550, 1.780549, 0.912008, 1.208514 );
SetPlayerAttachedObject( playerid, 2, 18716, 2, -2.979508, 0.306475, -0.388553, 285.055511, 90.860740, 171.179550, 1.780549, 0.912008, 1.208514 );
SendClientMessage( playerid, COLOR_VIP, "You have holded as {00FF00}Alien!" );
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
}
if ( listitem == 3 )
{
for ( new i = 0; i < 5; i++ )
{
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
{
RemovePlayerAttachedObject( playerid, i );
}
}
SetPlayerAttachedObject( playerid, 0, 18693, 5, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
SetPlayerAttachedObject( playerid, 1, 18693, 6, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
SetPlayerAttachedObject( playerid, 2, 18703, 6, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
SetPlayerAttachedObject( playerid, 3, 18703, 5, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
SetPlayerAttachedObject( playerid, 4, 18965, 2, 0.111052, 0.021643, -0.000846, 92.280899, 92.752510, 358.071044, 1.200000, 1.283168, 1.200000 );
SendClientMessage( playerid, COLOR_VIP, "You have holded as {00FF00}Icread!" );
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
}
if ( listitem == 4 )
{
SetPlayerSpecialAction( playerid, 2 ); //Jetpack!
SendClientMessage( playerid, COLOR_VIP,"Jetpack Spawmed!" );
}
}
}
return 1;
}
//======================================================== [ V.I.P Commands ] ====================================================//
CMD:vipgoto( playerid , params[ ] )
{
new Player;
new Float:x, Float:y, Float:z;
if ( P_DATA[ playerid ][ Vip ] >= 2 )
{
if ( sscanf( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vipgoto [PlayerID]" );
GetPlayerPos( Player , x , y , z );
SetPlayerInterior( playerid , GetPlayerInterior( Player ) );
SetPlayerVirtualWorld( playerid , GetPlayerVirtualWorld( Player ) );
if ( IsPlayerConnected( Player ) && Player != INVALID_PLAYER_ID && Player != playerid )
{
if ( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER )
{
SetVehiclePos( GetPlayerVehicleID( playerid ) , x+3 , y , z );
LinkVehicleToInterior( GetPlayerVehicleID( playerid ), GetPlayerInterior( Player ) );
SetVehicleVirtualWorld( GetPlayerVehicleID( playerid ), GetPlayerVirtualWorld( Player ) );
FormatMSG( playerid, COLOR_VIP, "You have teleported to %s's location!" , PlayerName2( Player ) );
FormatMSG( Player, COLOR_VIP, "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName2( playerid ), P_DATA[ playerid ][ Vip ] );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgoto" );
#endif
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgoto" );
#endif
SetPlayerPos( playerid , x+2 , y , z );
FormatMSG( Player, COLOR_VIP, "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName2( playerid ), P_DATA[ playerid ][ Vip ] );
FormatMSG( playerid, COLOR_VIP, "You have teleported to %s's location!" , PlayerName2( Player ) );
}
} else {
SendClientMessage( playerid, RED, "Player not connected or is yourself!" ); }
} else {
return SendLevel( playerid, 2 ); }
return 1;
}
CMD:spawnme( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
SpawnPlayer( playerid );
SendClientMessage( playerid, COLOR_VIP, "You have been respawmed!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/spawnme" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vips( playerid, params[ ] )
{
new V, vstr[ 2048 ];
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( IsPlayerConnected( i ) && P_DATA[ i ][ Vip ] > 0 )
{
format( vstr, 2048, "{FF5500}%s\n{FF5500}V.I.P {00FF00}%s {FF5500}- Level {00FF00}%d", vstr, ReturnPlayerName( i ), P_DATA[ i ][ Vip ] );
V++;
}
}
if ( V == 0 )
{
format ( vstr, sizeof( vstr ), "\n{E60000}No V.I.Ps online at the moment!" );
}
return ShowPlayerDialog( playerid, VIPS, DIALOG_STYLE_MSGBOX, "{00FF00}Online V.I.Ps:", vstr, "Quit", "" );
}
CMD:myweather( playerid, params[ ] )
{
new weather, string[ 128 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( sscanf( params, "i", weather ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/myweather [weatherid]" );
if ( ( weather < 0 ) || ( weather > 52 ) ) return SendClientMessage( playerid, RED, "Only between 0 and 52 weather ids!" );
SetPlayerWeather( playerid, weather );
format( string, sizeof( string ), "You have set your weather to {E60000}%d", weather );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/myweather" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:mytime( playerid, params[ ] )
{
new time, string[ 128 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( sscanf( params, "i", time ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/mytime [time]" );
if ( ( time < 0 ) || ( time > 24 ) ) return SendClientMessage( playerid, RED, "Only between 0 and 24 hours you can set your time!" );
SetPlayerTime( playerid, time, 0 );
format( string, sizeof( string ), "You have set your time to {E60000}%d", time );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/mytime" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:myvw( playerid, params[ ] )
{
new vw, string[ 128 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( sscanf( params, "i", vw ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/myvw [virtualworld]" );
if ( ( vw < 0 ) || ( vw > 100 ) ) return SendClientMessage( playerid, RED, "Only between 0 and 100 Virtual Worlds ar disponible!" );
if ( vw == 0 )
{
SetPlayerVirtualWorld( playerid, 0 );
return SendClientMessage( playerid, YELLOW, "You have returned back in normal world( 0 )!" );
}
SetPlayerVirtualWorld( playerid, vw );
format( string, sizeof( string ), "You have set your Virtual World to {E60000}%d", vw );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/myvw" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vasay( playerid, params[ ] )
{
new VipMessage[ 180 ];
if ( P_DATA[ playerid ][ Vip ] >= 2 )
{
if ( sscanf( params, "s[ 120 ]", VipMessage ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vasay [text]" );
format( VipMessage, sizeof( VipMessage ), "V.I.P - %s {FFFF00}(lvl: %d): {00FF00}%s", PlayerName2( playerid ), P_DATA[ playerid ][ Vip ], VipMessage );
SendClientMessageToAll( COLOR_VIP, VipMessage );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vasay" );
#endif
} else {
return SendLevel( playerid, 2 ); }
return 1;
}
CMD:maxammo( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] == 3 )
{
SendPlayerMaxAmmo( playerid );
SendClientMessage( playerid, COLOR_VIP, "You have added {00FF00}Max Ammo{FF5500} to your weapons!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/MaxAmmo" );
#endif
} else {
return SendLevel( playerid, 3 ); }
return 1;
}
CMD:vweapons( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 2 )
{
GivePlayerWeapon( playerid ,28, 120) ;
GivePlayerWeapon( playerid, 31, 75 );
GivePlayerWeapon( playerid, 34, 15 );
GivePlayerWeapon( playerid, 26, 100 );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vweapons" );
#endif
} else {
return SendLevel( playerid, 2 ); }
return 1;
}
CMD:vspec( playerid, params[ ] )
{
new PID, string[ 128 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( sscanf( params, "u", PID ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vspec [playerid]" );
if ( IsPlayerConnected( PID ) && PID != INVALID_PLAYER_ID && PID != playerid )
{
if ( GetPlayerState( PID ) == PLAYER_STATE_SPECTATING && P_DATA[ PID ][ SpecID ] != INVALID_PLAYER_ID )
{
if ( GetPlayerState( PID ) != 1 && GetPlayerState( PID ) != 2 && GetPlayerState( PID ) != 3)
{
SpectatePlayer( playerid, PID );
GetPlayerPos( playerid, Position[ playerid ][ 0 ], Position[ playerid ][ 1 ], Position[ playerid ][ 2 ] );
GetPlayerFacingAngle( playerid, Position[ playerid ][ 3 ] );
format( string, sizeof( string ), "Now you spectating %s (%d)", PlayerName2( PID ), PID );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vspec" );
#endif
} else {
SendClientMessage( playerid, RED, "ERROR: Player not spawned!" ); }
} else {
SendClientMessage( playerid, RED, "ERROR: Player spectating someone else!" ); }
} else {
SendClientMessage( playerid, RED, "ERROR: Player is not connected or is yourself!" ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vspecoff( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( P_DATA[ playerid ][ SpecType ] != ADMIN_SPEC_TYPE_NONE )
{
StopSpectate( playerid );
SetTimerEx("ReturnPosition", 3000, 0, "d", playerid );
SendClientMessage( playerid, COLOR_VIP, "You have stop spectating" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vspecoff" );
#endif
} else {
SendClientMessage( playerid, RED, "ERROR: You are not spectating" ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vsaveskin( playerid, params[ ] )
{
new SkinID, string[ 128 ], Query[ 256 ];
if ( P_DATA[ playerid ][ Vip ] >= 2 )
{
SkinID = GetPlayerSkin( playerid );
format( Query, sizeof( Query ), "UPDATE `Accounts` SET `VSkin` = '%d' WHERE `Name` = '%s' ", SkinID, PlayerName2( playerid ) );
db_free_result( db_query( Database, Query ) );
format( string, sizeof( string ), "You have successfully saved this skin (ID: %d)", SkinID );
SendClientMessage( playerid, COLOR_VIP, string );
SendClientMessage( playerid, COLOR_VIP, "Type /dontuseskin for don't save again this skin!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vsaveskin" );
#endif
} else {
return SendLevel( playerid, 2 ); }
return 1;
}
CMD:dontuseskin( playerid, params[ ] )
{
new Query[ 256 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
format( Query, sizeof( Query ), "UPDATE `Accounts` SET `VSkin` = '-1' WHERE `Name` = '%s' ", PlayerName2( playerid ) );
db_free_result( db_query( Database, Query ) );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/dontuseskin" );
#endif
SendClientMessage( playerid, COLOR_VIP, "Your saved skin is never been used!" );
} else {
return SendLevel( playerid, 2 ); }
return 1;
}
CMD:mycolor( playerid, params[ ] )
{
new Colour, colour[ 24 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( sscanf( params, "d", Colour ) ) return Send2Clients( playerid, "/mycolor [color]", "0 = Black | 1 = White | 2 = Red | 3 = Orange | 4 = Yellow | 5 = Green | 6 = Blue | 7 = Purple | 8 = Brown" );
if ( Colour > 8 ) return SendClientMessage( playerid, RED, "Colours: 0 = Black | 1 = White | 2 = Red | 3 = Orange | 4 = Yellow | 5 = Green | 6 = Blue | 7 = Purple | 8 = Brown" );
switch ( Colour ) {
case 0: { SetPlayerColor( playerid, 0x000000AA ); colour = "Black"; }
case 1: { SetPlayerColor( playerid, 0xFFFFFFAA ); colour = "White"; }
case 2: { SetPlayerColor( playerid, 0xE60000AA ); colour = "Red"; }
case 3: { SetPlayerColor( playerid, 0xFF5500AA ); colour = "Orange"; }
case 4: { SetPlayerColor( playerid, 0xFFFF00AA ); colour = "Yellow"; }
case 5: { SetPlayerColor( playerid, 0x00FF00AA ); colour = "Green"; }
case 6: { SetPlayerColor( playerid, 0x0000BBAA ); colour = "Blue"; }
case 7: { SetPlayerColor( playerid, 0x800080AA ); colour = "Purple"; }
case 8: { SetPlayerColor( playerid, 0xA52A2AAA ); colour = "Brown"; } }
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/mycolor" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vcmds( playerid, params[ ] )
{
new string[ 1024 ];
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
strcat( string, "{FF5500}V.I.P Level {00FF00}1 {FF5500}Commands:\t{FF5500}V.I.P Level {00FF00}2 {FF5500}Commands:\t{FF5500}V.I.P Level {00FF00}3 {FF5500}Commands:\n\n" );
strcat( string, "{FFFF00}/mytime\t\t\t/vsaveskin\t\t\t/vkick\n" );
strcat( string, "/myweather\t\t\t/dontuseskin\t\t\t/vget\n" );
strcat( string, "/myvw\t\t\t\t/vweapons\t\t\t/rw\n" );
strcat( string, "/mycolor\t\t\t/vipgoto\t\t\t/maxammo\n" );
strcat( string, "/vspec\t\t\t\t/vasay\t\t\t\t\n" );
strcat( string, "/vspecoff\n/spawnme\n/vcmds\n" );
strcat( string, "{E60000}/ltc[1-13]\t\t\t/vipgod\t\t\t/vannounce\n" );
strcat( string, "{E60000}/godcar\n/vcar\n/vspa\n/stophold\n/viphouse\n" );
strcat( string, "\t\t\t\t{FFFF00}+V.I.P level 1 CMDS\t\t+ V.I.P level 1&2 CMDS\n\n\n" );
strcat( string, "{FF5500}Use simbol {00FF00}! {FF5500}in front of your text to speak in V.I.P Chat\n" );
ShowPlayerDialog( playerid, VIPCMDS, DIALOG_STYLE_MSGBOX, "V.I.P Commands:", string, "Quit", "" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vcmds" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vget( playerid, params[ ] )
{
new PID, string[ 256 ];
new Float:x, Float:y, Float:z;
if ( P_DATA[ playerid ][ Vip ] == 3 )
{
if ( sscanf( params, "u", PID ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vget [playerid]" );
if ( IsPlayerConnected( PID ) && PID != INVALID_PLAYER_ID && PID != playerid )
{
GetPlayerPos( playerid, x, y, z );
SetPlayerInterior( PID, GetPlayerInterior( playerid ) );
SetPlayerVirtualWorld( PID, GetPlayerVirtualWorld( playerid ) );
if ( GetPlayerState( PID ) == 2 )
{
new VehicleID = GetPlayerVehicleID( PID );
SetVehiclePos( VehicleID, x+3, y, z);
LinkVehicleToInterior( VehicleID, GetPlayerInterior( PID ) );
SetVehicleVirtualWorld( GetPlayerVehicleID( PID ), GetPlayerVirtualWorld( PID ) );
format( string, sizeof( string ),"You have been teleported to V.I.P {00FF00}%s's {FF5500}location", PlayerName2( playerid ) );
SendClientMessage( PID, COLOR_VIP, string );
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName2( PID ) );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vget" );
#endif
} else {
SetPlayerPos( PID, x+2, y, z );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vget" );
#endif
format( string, sizeof( string ),"You have been teleported to V.I.P {00FF00}%s's {FF5500}location", PlayerName2( playerid ) );
SendClientMessage( PID, COLOR_VIP, string );
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName2( PID ) );
SendClientMessage( playerid, COLOR_VIP, string ); }
} else {
SendClientMessage( playerid, RED, "Player is not connected or is yourself!" ); }
} else {
return SendLevel( playerid, 3 ); }
return 1;
}
CMD:vkick( playerid, params[ ] )
{
new string[ 128 ];
if ( P_DATA[ playerid ][ Vip ] == 3 )
{
if ( sscanf( params, "us[ 128 ]", params[ 0 ], params[ 1 ] ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vkick [playerid] [reason]" );
if ( IsPlayerConnected( params[ 0 ] ) && params[ 0 ] != INVALID_PLAYER_ID && params[ 0 ] != playerid )
{
if ( !strlen( params[ 1 ] ) )
{
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[no reason given]!",PlayerName2( params[ 0 ] ), PlayerName2( playerid ) );
SendClientMessageToAll( GREEN, string );
Kick( params[ 0 ] );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[reason: {00FF00%s{FF5500}] ", PlayerName2( params[ 0 ] ), PlayerName2( playerid ), params[ 1 ] );
SendClientMessageToAll( GREEN, string );
Kick( params[ 0 ] ); }
} else {
SendClientMessage( playerid, RED, "Player is not connected or is yourself!" ); }
} else {
return SendLevel( playerid, 3 ); }
return 1;
}
CMD:rw( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] == 3 )
{
GivePlayerWeapon( playerid, 4, 1);
GivePlayerWeapon( playerid, 28, 1000);
GivePlayerWeapon( playerid, 26, 100);
GivePlayerWeapon( playerid, 22, 500);
SendClientMessage( playerid, COLOR_VIP, "You got an Runing Weapons package!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
} else {
return SendLevel( playerid, 3 ); }
return 1;
}
CMD:vipgod( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 2 )
{
if ( P_DATA[ playerid ][ God ] == 1 )
{
P_DATA[ playerid ][ God ] = 1;
SendClientMessage( playerid, COLOR_VIP, "You have activated the V.I.P {00FF00}God Mode!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgod" );
#endif
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgod" );
#endif
P_DATA[ playerid ][ God ] = 0; }
} else {
return SendLevel( playerid, 2 ); }
return 1;
}
CMD:godcar( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( P_DATA[ playerid ][ CarGod ] == 1 )
{
P_DATA[ playerid ][ CarGod ] = 1;
SendClientMessage( playerid, COLOR_VIP, "You have activated the Vehicle {00FF00}God Mode!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/GodCar" );
#endif
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/GodCar" );
#endif
P_DATA[ playerid ][ CarGod ] = 0; }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc1( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc1" );
#endif
GetPlayerPos( playerid, x, y, z);
GetPlayerFacingAngle( playerid, Angle );
VehiclulRt = CreateVehicle( 560, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, VehiclulRt, 0);
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent(VehiclulRt, 1140); AddVehicleComponent(VehiclulRt, 1170);
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent(VehiclulRt, 1140); AddVehicleComponent(VehiclulRt, 1170);
AddVehicleComponent( VehiclulRt, 1080 ); AddVehicleComponent( VehiclulRt, 1086 ); AddVehicleComponent( VehiclulRt, 1087 ); AddVehicleComponent( VehiclulRt, 1010 );
PlayerPlaySound( playerid, 1133, 0.0, 0.0, 0.0 );
ChangeVehiclePaintjob( VehiclulRt, 0 );
SetVehicleVirtualWorld( VehiclulRt, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( VehiclulRt, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc2( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc2" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
VehiclulRt = CreateVehicle( 560, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, VehiclulRt, 0 );
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent( VehiclulRt, 1140 ); AddVehicleComponent( VehiclulRt, 1170 );
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent( VehiclulRt, 1140 ); AddVehicleComponent( VehiclulRt, 1170 );
AddVehicleComponent( VehiclulRt, 1080 ); AddVehicleComponent( VehiclulRt, 1086 ); AddVehicleComponent( VehiclulRt, 1087 ); AddVehicleComponent( VehiclulRt, 1010 );
PlayerPlaySound( playerid, 1133, 0.0, 0.0, 0.0 );
ChangeVehiclePaintjob( VehiclulRt, 1 );
SetVehicleVirtualWorld( VehiclulRt, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( VehiclulRt, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc3( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc3" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
VehiclulRt = CreateVehicle( 560, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, VehiclulRt, 0 );
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent( VehiclulRt, 1170 );
AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1140 );
AddVehicleComponent( VehiclulRt, 1080 ); AddVehicleComponent( VehiclulRt, 1086 ); AddVehicleComponent( VehiclulRt, 1087 ); AddVehicleComponent( VehiclulRt, 1010 );
PlayerPlaySound( playerid, 1133, 0.0, 0.0, 0.0 );
ChangeVehiclePaintjob( VehiclulRt, 2 );
SetVehicleVirtualWorld( VehiclulRt, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( VehiclulRt, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc4( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc4" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 559, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1065 ); AddVehicleComponent( carid, 1067 ); AddVehicleComponent( carid, 1073 );
AddVehicleComponent( carid, 1162 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc5( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc5" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 565, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1046 ); AddVehicleComponent( carid, 1049 ); AddVehicleComponent( carid, 1073 );
AddVehicleComponent( carid, 1053 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc6( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc6" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 558, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1088 ); AddVehicleComponent( carid, 1092 ); AddVehicleComponent( carid, 1073 );
AddVehicleComponent( carid, 1139 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc7( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc7" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 561, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1055 ); AddVehicleComponent( carid, 1058 ); AddVehicleComponent( carid, 1073 );
AddVehicleComponent( carid, 1064 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc8( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc8" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 562, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1034 ); AddVehicleComponent( carid, 1038 ); AddVehicleComponent( carid, 1073 );
AddVehicleComponent( carid, 1147 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc9( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc9" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 567, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1102 ); AddVehicleComponent( carid, 1129 ); AddVehicleComponent( carid, 1188 ); AddVehicleComponent( carid, 1087 ); AddVehicleComponent( carid, 1086 );
AddVehicleComponent( carid, 1133 ); AddVehicleComponent( carid, 1186 ); AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1085 ); ChangeVehiclePaintjob( carid, 1 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc10( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED,"ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc10" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 558, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1092 ); AddVehicleComponent( carid, 1166 ); AddVehicleComponent( carid, 1165 ); AddVehicleComponent( carid, 1090 );
AddVehicleComponent( carid, 1094 ); AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1087 ); AddVehicleComponent( carid, 1163 );
AddVehicleComponent( carid, 1091 ); ChangeVehiclePaintjob( carid, 2 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc11( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED,"ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc11" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 557, x, y, z, Angle, 1, 1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1081 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc12( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED,"ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc12" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 535, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
ChangeVehiclePaintjob( carid, 1 ); AddVehicleComponent( carid, 1109 ); AddVehicleComponent( carid, 1115 ); AddVehicleComponent( carid, 1117 ); AddVehicleComponent( carid, 1073 ); AddVehicleComponent( carid, 1010 );
AddVehicleComponent( carid, 1087 ); AddVehicleComponent( carid, 1114 ); AddVehicleComponent( carid, 1081 ); AddVehicleComponent( carid, 1119 ); AddVehicleComponent( carid, 1121 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:ltc13( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED,"ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/ltc13" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 562, x, y, z, Angle, 1, -1, -1 );
PutPlayerInVehicle( playerid, carid, 0 );
AddVehicleComponent( carid, 1034 ); AddVehicleComponent( carid, 1038 ); AddVehicleComponent( carid, 1147 );
AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1073 ); ChangeVehiclePaintjob( carid, 0 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vcar( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if ( IsPlayerInAnyVehicle( playerid ) )
{
SendClientMessage( playerid, RED, "ERROR: You already have a vehicle!" );
} else {
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vcar" );
#endif
GetPlayerPos( playerid, x, y, z );
GetPlayerFacingAngle( playerid, Angle );
carid = CreateVehicle( 402, x, y, z, Angle, 0, 0, 0 );
PutPlayerInVehicle( playerid, carid, 0 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) ); }
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:vannounce( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] == 3 )
{
if ( sscanf( params, "s[128]", params[ 0 ] ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vannounce [playerid]" );
GameTextForAll( params[ 0 ], 6000, 1 );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vannounce" );
#endif
} else {
return SendLevel( playerid, 3 ); }
return 1;
}
CMD:vspa( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
ShowPlayerDialog( playerid, VSPA, DIALOG_STYLE_LIST, "V.I.P Special Actions!", "Hold: Dick!\nHold: Iron!\nHold: Alien!\nHold: Incred!\nSpawn: JetPack!", "Select", "Cancel" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vspa" );
#endif
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:stophold( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
if( !IsPlayerAttachedObjectSlotUsed( playerid, 0 ) &&
!IsPlayerAttachedObjectSlotUsed( playerid, 1 ) &&
!IsPlayerAttachedObjectSlotUsed( playerid, 2 ) &&
!IsPlayerAttachedObjectSlotUsed( playerid, 3 ) &&
!IsPlayerAttachedObjectSlotUsed( playerid, 4 ) )
return SendClientMessage( playerid, RED, "You are not holding any object" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/stophold" );
#endif
for ( new i = 0; i < 5; i ++ )
{
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
{
RemovePlayerAttachedObject( playerid, i );
SendClientMessage( i, RED, "You have stopped holding object!" );
}
}
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
CMD:viphouse( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Vip ] >= 1 )
{
SetPlayerPos( playerid, -2637.69,1404.24,906.46 );
SetPlayerInterior( playerid, 3 );
RemovePlayerFromVehicle( playerid );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/VipHouse" );
#endif
SendClientMessage( playerid, COLOR_VIP, "You have teleported to V.I.P House( Club )!" );
} else {
return SendLevel( playerid, 1 ); }
return 1;
}
//======================================================= [ Admin Commands ] =====================================================//
CMD:setlevel( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >= 5 || IsPlayerAdmin( playerid ) )
{
new Player, aLevel, Query[ 256 ];
if ( sscanf( params, "ui", Player, aLevel ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/setlevel [PlayerID] [Level]" );
if ( aLevel > 5 ) return SendClientMessage( playerid, RED, "ERROR: Invalid level! Max admin level you can set is 5!" );
if ( IsPlayerConnected( Player ) )
{
if ( P_DATA[ Player ][ Level ] == aLevel ) return SendClientMessage( playerid, RED, "ERROR: Player is have already this level!" );
format( Query, sizeof( Query ), "UPDATE `Accounts` SET `Level` = '%d' WHERE `Name` = '%s'", aLevel, PlayerName2( Player ) );
db_free_result( db_query( Database, Query ) );
FormatMSG( Player, ABLUE, "Administrator %s has set your admin level to %d", PlayerName2( playerid ), aLevel );
FormatMSG( playerid, ABLUE, "You set %s's admin level to %d", PlayerName2( Player ), aLevel );
}
else return SendClientMessage( playerid, RED, "ERROR: Player is not connected!" );
}
else return SendaLevel( playerid, 5);
return 1;
}
CMD:kick ( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >=1 || IsPlayerAdmin( playerid ) )
{
new Player;
if ( sscanf( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/Kick [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
FormatMSG( Player, ABLUE, "Admin %s Has Kicked You", PlayerName2 ( playerid ) );
FormatMSG( playerid, ABLUE, "You Have Kicked %s", PlayerName2 ( Player ) );
Kick(Player);
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 1);
return 1;
}
CMD:ban ( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >=3 || IsPlayerAdmin( playerid ) )
{
new Player;
if ( sscanf( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/Ban [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
new year, month, day; getdate( year, month, day );
new hour, minuite, second; gettime( hour, minuite, second );
new File:Bans=fopen( "BanLog.txt", io_write );
FormatMSG( Player, ABLUE, "Admin %s Has Banned You, [Date: %d/%d/%d] [Time: %d,%d]", PlayerName2 ( playerid ), day, month, year, hour, minuite );
FormatMSG( playerid, ABLUE, "You Have Banned %s, [Date: %d/%d/%d] [Time: %d,%d", PlayerName2 ( Player ), day, month, year, hour, minuite );
new str[ 128 ];
format( str, sizeof( str ), "%s has been Banned by Administrator %s | [Date: %d/%d/%d] [Time: %d,%d]", PlayerName2 ( Player ), PlayerName2 ( playerid ), day, month, year, hour, minuite );
SendClientMessageToAll( RED, str );
fwrite( Bans, str );
print( str );
Ban(Player);
fclose( Bans );
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 3);
return 1;
}
CMD:goto ( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >=2 || IsPlayerAdmin( playerid ) )
{
new Player, Float:X, Float:Y, Float:Z;
if ( sscanf ( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/goto [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
GetPlayerPos(Player, X, Y, Z);
FormatMSG( playerid, ABLUE, "You Have Teleported To %s", PlayerName2 ( Player ) );
SetPlayerPos(playerid, X, Y, Z);
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 2);
return 1;
}
CMD:get ( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >=2 || IsPlayerAdmin( playerid ) )
{
new Player, Float:X, Float:Y, Float:Z;
if ( sscanf ( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/get [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
GetPlayerPos(playerid, X, Y, Z);
FormatMSG( playerid, ABLUE, "You Have Teleported %s to you", PlayerName2 ( Player ) );
SetPlayerPos(Player, X, Y, Z);
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 2);
return 1;
}
CMD:akill ( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >=2 || IsPlayerAdmin( playerid ) )
{
new Player;
if ( sscanf ( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/akill [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
FormatMSG( playerid, ABLUE, "You Have Killed %s", PlayerName2 ( Player ) );
FormatMSG( Player, ABLUE, "You Have been Killed by %s", PlayerName2 ( playerid ) );
SetPlayerHealth(Player, -10);
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 2);
return 1;
}
CMD:explode ( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >=2 || IsPlayerAdmin( playerid ) )
{
new Player;
if ( sscanf ( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/explode [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
new Float:SLX, Float:SLY, Float:SLZ;
GetPlayerPos(Player, SLX, SLY, SLZ);
CreateExplosion(SLX, SLY, SLZ, 11, 0.25);
FormatMSG( playerid, ABLUE, "You Have Exploded %s", PlayerName2 ( Player ) );
FormatMSG( playerid, ABLUE, "You Have Been Exploded By %s", PlayerName2 ( playerid ) );
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 2);
return 1;
}
CMD:rban( playerid, params[ ] )
{
if ( P_DATA[ playerid ][ Level ] >= 4 || IsPlayerAdmin( playerid ) )
{
new Player, ip[ 128 ], ip1[ 128 ];
if ( sscanf ( params, "u", Player ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/rban [PlayerID]" );
if ( IsPlayerConnected( Player ) )
{
new year, month, day; getdate( year, month, day );
new hour, minuite, second; gettime( hour, minuite, second );
new File:Bans=fopen( "BanLog.txt", io_write );
FormatMSG( playerid, ABLUE, "|- You Have Banned %s [Date: %d/%d/%d] [Time: %d,%d] -|", PlayerName2 ( Player ), day, month, year, hour, minuite);
FormatMSG( Player, ABLUE, "|- You Have Been Banned By %s [Date: %d/%d/%d] [Time: %d,%d] -|", PlayerName2 ( playerid ), day, month, year, hour, minuite);
new str[ 128 ];
format( str, sizeof( str ), "%s has been Range Banned by Administrator %s | [Date: %d/%d/%d] [Time: %d,%d]", PlayerName2 ( Player ), PlayerName2 ( playerid ), day, month, year, hour, minuite );
SendClientMessageToAll( RED, str );
fwrite( Bans, str );
print( str );
GetPlayerIp( Player, ip1, sizeof( ip1 ) );
GetPlayerIp( Player, ip, sizeof( ip1 ) );
strdel( ip, strlen( ip ) - 2, strlen( ip ) );
strcat( ip, "**", 128 );
fwrite( Bans, ip );
format( ip1, 128,"banip %s", ip1 );
SendRconCommand( ip1 );
fclose( Bans );
}
else return SendClientMessage( playerid, RED, "ERROR: Player Is Not Online!" );
}
else return SendaLevel( playerid, 4);
return 1;
}
CMD:setviplevel( playerid, params[ ] )
{
new Query[ 256 ];
if ( P_DATA[ playerid ][ Level ] >=5 || !IsPlayerAdmin( playerid ) ) return SendClientMessage( playerid, RED, "ERROR: You need to be administrator to use this command!" );
new Player, vLevel;
if ( sscanf( params, "ud", Player, vLevel ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/setvip [PlayerID] [Level]" );
if ( Player == INVALID_PLAYER_ID ) return SendClientMessage( playerid, RED, "ERROR: Player Is Not Connected!" );
if ( vLevel > 3 ) return SendClientMessage( playerid, RED, "ERROR: Maximum V.I.P level is 3!" );
P_DATA[ Player ][ Vip ] = vLevel;
FormatMSG( Player, ABLUE, "Administrator %s has set your V.I.P level to %d!", PlayerName2( playerid ), vLevel );
format( Query, sizeof( Query ), "UPDATE `Accounts` SET `Vip` = '%d' WHERE `Name` = '%s'", Level, PlayerName2( Player ) );
db_free_result( db_query( Database, Query ) );
return 1;
}
//======================================================= [ Public ] =============================================================//
Public: SendLevel( playerid, level )
{
if ( level == 1 ) return SendClientMessage( playerid, RED, "ERROR: You need to be V.I.P Level 1 or bigest to use this command!" );
if ( level == 2 ) return SendClientMessage( playerid, RED, "ERROR: You need to be V.I.P Level 2 or bigest to use this command!" );
if ( level == 3 ) return SendClientMessage( playerid, RED, "ERROR: You need to be V.I.P Level 3 to use this command!" );
return 1;
}
Public: SendaLevel( playerid, aLevel )
{
if ( aLevel == 1 ) return SendClientMessage( playerid, RED, "ERROR: You need to be Admin Level 1 or bigest to use this command!" );
if ( aLevel == 2 ) return SendClientMessage( playerid, RED, "ERROR: You need to be Admin Level 2 or bigest to use this command!" );
if ( aLevel == 3 ) return SendClientMessage( playerid, RED, "ERROR: You need to be Admin Level 3 or bigest to use this command!" );
if ( aLevel == 4 ) return SendClientMessage( playerid, RED, "ERROR: You need to be Admin Level 4 or bigest to use this command!" );
if ( aLevel == 5 ) return SendClientMessage( playerid, RED, "ERROR: You need to be Admin Level 5 to use this command!" );
return 1;
}
Public: SendVipMessage( color, const string[ ] )
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( IsPlayerConnected( i ) )
{
if ( P_DATA[ i ][ Vip ] >= 1 )
{
SendClientMessage( i, color, string );
}
}
}
return 1;
}
Public: SendAdminMessage( color, const string[ ] )
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( IsPlayerConnected( i ) )
{
if ( P_DATA[ i ][ Level ] >= 1 )
{
SendClientMessage( i, color, string );
}
}
}
return 1;
}
Public: ReturnPosition( playerid )
{
SetPlayerPos( playerid, Position[ playerid ][ 0 ], Position[ playerid ][ 1 ], Position[ playerid ][ 2 ] );
SetPlayerFacingAngle( playerid, Position[ playerid ][ 3 ] );
}
Public: GodUpdate( )
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
{
if ( IsPlayerConnected( i ) && P_DATA[ i ][ God ] == 1 )
{
SetPlayerHealth( i, 100000 );
}
if ( IsPlayerConnected( i ) && P_DATA[ i ][ CarGod ] == 1 && IsPlayerInAnyVehicle( i ) )
{
SetVehicleHealth( GetPlayerVehicleID( i ), 10000 );
}
}
}
//======================================================== [ Stocks ] ============================================================//
stock PlayerName2( i )
{
new n[ 24 ];
GetPlayerName( i, n, 24 );
return n;
}
stock ReturnPlayerName( id )
{
new tehname[ MAX_PLAYER_NAME ];
GetPlayerName( id, tehname, sizeof( tehname ) );
return tehname;
}
stock SpectatePlayer( playerid, PID )
{
new string[ 100 ], Float:health, Float:armour;
for(new i = 0; i < MAX_PLAYERS; i++ )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
{
AdvanceSpectate( i );
}
}
SetPlayerInterior( playerid, GetPlayerInterior( PID ) );
TogglePlayerSpectating( playerid, 1 );
if ( IsPlayerInAnyVehicle( PID ) )
{
PlayerSpectateVehicle( playerid, GetPlayerVehicleID( PID ) );
P_DATA[ playerid ][ SpecID ] = PID;
P_DATA[ playerid ][ SpecType ] = ADMIN_SPEC_TYPE_VEHICLE;
} else {
PlayerSpectatePlayer( playerid, PID );
P_DATA[ playerid ][ SpecID ] = PID;
P_DATA[ playerid ][ SpecType ] = ADMIN_SPEC_TYPE_PLAYER;
}
GetPlayerName( PID, string, sizeof( string ) );
GetPlayerHealth( PID, health );
GetPlayerArmour( PID, armour );
format( string, sizeof( string ),"~n~~n~~n~~n~~n~~n~~n~n~~w~%s - id:%d~n~< sprint - jump >~n~~r~Health:%0.1f ~b~Armour:%0.1f~n~~g~$%d~n~~g~%d", string, PID, health, armour, GetPlayerMoney( PID ), GetPlayerScore( PID ) );
GameTextForPlayer( playerid, string, 25000, 3 );
return 1;
}
stock StopSpectate( playerid )
{
TogglePlayerSpectating( playerid, 0 );
P_DATA[ playerid ][ SpecID ] = INVALID_PLAYER_ID;
P_DATA[ playerid ][ SpecType ] = ADMIN_SPEC_TYPE_NONE;
GameTextForPlayer( playerid,"~n~~n~~n~~w~Spectate mode ended", 1000, 3 );
return 1;
}
stock AdvanceSpectate( playerid )
{
if ( ConnectedPlayers( ) == 2 )
{
StopSpectate( playerid );
return 1;
}
if ( GetPlayerState( playerid ) == PLAYER_STATE_SPECTATING && P_DATA[ playerid ][ SpecID ] != INVALID_PLAYER_ID )
{
for ( new i = P_DATA[ playerid ][ SpecID] +1; i <= MAX_PLAYERS; i++ )
{
if ( i == MAX_PLAYERS ) i = 0;
if ( IsPlayerConnected( i ) && i != playerid )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] != INVALID_PLAYER_ID || ( GetPlayerState( i ) != 1 && GetPlayerState( i ) != 2 && GetPlayerState( i ) != 3 ) )
{
continue;
} else {
SpectatePlayer( playerid, i );
break;
}
}
}
}
return 1;
}
stock ConnectedPlayers( )
{
new Connected;
for ( new i = 0; i < MAX_PLAYERS; i++ ) if ( IsPlayerConnected( i ) ) Connected++;
return Connected;
}
stock Send2Clients( playerid, Client1[ ], Client2[ ] )
{
new Str[ 256 ];
format( Str, sizeof( Str ), "Usage: {FFFF00} %s", Client1 );
SendClientMessage( playerid, RED, Str );
format( Str, sizeof( Str ), "Colours: {00FF00} %s", Client2 );
SendClientMessage( playerid, RED, Str );
return 1;
}
#if defined VIPS_SEND_COMMAND
stock SendVipsCommand( playerid, cmdtext[ ] )
{
new str[ 128 ];
format( str, sizeof( str ),"[V.I.P] {00FF00}%s(%d) {FF5500}has used command {00FF00}%s", PlayerName2( playerid ), playerid, cmdtext );
return SendVipMessage( COLOR_VIP, str );
}
#endif
stock ReverseSpectate( playerid )
{
if ( ConnectedPlayers( ) == 2 )
{
StopSpectate( playerid );
return 1;
}
if ( GetPlayerState( playerid ) == PLAYER_STATE_SPECTATING && P_DATA[ playerid ][ SpecID ] != INVALID_PLAYER_ID )
{
for ( new i = P_DATA[ playerid ][ SpecID ]-1; i >= 0; i-- )
{
if ( i == 0 ) i = MAX_PLAYERS;
if ( IsPlayerConnected( i ) && i != playerid )
{
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] != INVALID_PLAYER_ID || ( GetPlayerState( i ) != 1 && GetPlayerState( i ) != 2 && GetPlayerState( i ) != 3 ) )
{
continue;
} else {
SpectatePlayer( playerid, i );
break;
}
}
}
}
return 1;
}
stock SendPlayerMaxAmmo( playerid )
{
new slot, weap, ammo;
for ( slot = 0; slot < 14; slot++ )
{
GetPlayerWeaponData( playerid, slot, weap, ammo );
if ( IsValidWeapon( weap ) )
{
GivePlayerWeapon( playerid, weap, 99999 );
}
}
return 1;
}
stock IsValidWeapon( weaponid )
{
if ( weaponid > 0 && weaponid < 19 || weaponid > 21 && weaponid < 47 ) return 1;
return 0;
}
dont know how to use it im best with INI systems but there are lots of commands and stuff i need to change etc
can u just add the saving function please i just needs to save these parts : VIP, level, score, Money, Kills and deaths and load them on player connect could u help me please?
I'm having a simular problem with my SQLite script, but mines Login, so.. I can't find an answer for it. If you find one, could you let me know? pm me
look at the top if i do that i have to convert everything it uses SQLite in all cmds like setlevel setvip etc