Код:
PASTEBIN | #1 paste tool since 2002 create new paste
tools
api
archive
faq
PASTEBIN
create new paste trending pastes
sign up
login
my alerts
my settings
my profile
Don't like ads? PRO users don't see any ads ;-)
Public Pastes
Untitled1 sec ago
Untitled2 sec ago
startupLua | 6 sec ago
Jailbreak25 sec ago
Untitled13 sec ago
Untitled11 sec ago
Untitled15 sec ago
ser_137555491198916 sec ago
0
0
Guest
VIP System, v1.3
By: a guest on Aug 18th, 2012 | syntax: None | size: 47.54 KB | hits: 680 | expires: Never
download | raw | embed | report abuse | print
1.
#if defined VIP
2.
xxSPEEDYxx's V.I.P System - NEW*
3.
3 Levels
4.
v2.0
5.
COMMANDS - [v1.0]:
6.
7.
V.I.P Level 1 Commands: V.I.P Level 2 Commands: V.I.P Level 3 Commands:
8.
/mytime /vsaveskin /vkick
9.
/myweather /dontuseskin /vget
10.
/myvw /vweapons /rw
11.
/mycolor /vipgoto /maxammo
12.
/vspec /vasay + V.I.P level 1&2 CMDS
13.
/vspecoff + V.I.P level 1 CMDS
14.
/spawnme
15.
/vcmds
16.
17.
COMMANDS - [v2.0]:
18.
19.
V.I.P Level 1 Commands: V.I.P Level 2 Commands: V.I.P Level 3 Commands:
20.
/ltc[1 - 13] /vipgod /vannounce
21.
/viphouse
22.
/godcar
23.
/vcar
24.
/vspa( V.I.P Special Actions! )
25.
/stophold!
26.
27.
V.I.P over 35 command! OMG!
28.
29.
#endif
30.
31.
//============ [ Includes ] ============//
32.
#include < a_samp > // Main include!
33.
#include < zcmd > // Find it on: https://sampforum.blast.hk/showthread.php?tid=91354&highlight=zcmd
34.
#include < sscanf2 > // Find it on: https://sampforum.blast.hk/showthread.php?tid=120356
35.
#include < foreach >
36.
//======================================//
37.
#define VIPS_SEND_COMMAND //Comment this if you don't want to show messages whena VIP use a command.
38.
#define SHOW_LEVEL_DIALOG //Comment this if you don't want to show the dialog with your VIP level on connect.
39.
//============ [ Colours ] ============//
40.
#define RED 0xE60000AA
41.
#define YELLOW 0xFFFF00AA
42.
#define GREEN 0x00FF00AA
43.
#define ABLUE 0x2641FEAA
44.
#define COLOR_VIP 0xFF5500AA //aka Orange:P
45.
//====================================//
46.
//========== [ Dialogs ] ==========//
47.
/*
48.
I put the dialogids bigest to not confuse with other dialogs in your FSs/GM
49.
*/
50.
enum
51.
{
52.
MYLVL,
53.
VIPS,
54.
VIPCMDS,
55.
ONCONN,
56.
VSPA
57.
};
58.
//====================================//
59.
//============= [ Level Check ] ======//
60.
stock
61.
bool:False = false
62.
;
63.
64.
#define VipCheck(%0,%1)\
65.
do{\
66.
if(P_DATA[(%0)][Vip] < (%1)){\
67.
new Str[128];\
68.
format(Str, 128, "~r~~h~ERROR!~n~~w~You need to be V.I.P level ~y~~h~%d ~w~to use this command!", (%1));\
69.
return GameTextForPlayer((%0), Str, 3000, 4);\
70.
}\
71.
}\
72.
while(False)
73.
//============= [ SPEC ] =============//
74.
#define ADMIN_SPEC_TYPE_NONE (0)
75.
#define ADMIN_SPEC_TYPE_PLAYER (1)
76.
#define ADMIN_SPEC_TYPE_VEHICLE (2)
77.
/*
78.
Do not touch this!
79.
*/
80.
//=========== [ Shortcuts ] ==========//
81.
#define Public:%0(%1) \
82.
forward%0(%1); public%0(%1)
83.
//====================================//
84.
//========== [ News&Enums ] ==========//
85.
enum pInfo
86.
{
87.
Vip,
88.
SpecID,
89.
SpecType,
90.
God,
91.
CarGod,
92.
p_FavSkin
93.
};
94.
95.
new P_DATA[ MAX_PLAYERS ][ pInfo ];
96.
new DB:Database;
97.
new Float:Position[ MAX_PLAYERS ][ 4 ];
98.
//====================================//
99.
100.
//==================== [ CallBacks ] =========================================//
101.
public OnFilterScriptInit( )
102.
{
103.
Database = db_open( "Vips.db" ); //Name of the database! You can change it!
104.
105.
db_query( Database, "CREATE TABLE IF NOT EXISTS `Vips` (`Key` INTEGER PRIMARY KEY AUTOINCREMENT, `Nume` TEXT, `VipLevel` NUMERIC, `VSkin` NUMERIC)" );
106.
return 1;
107.
}
108.
109.
public OnFilterScriptExit( )
110.
return db_close( Database );
111.
112.
public OnPlayerConnect( playerid )
113.
{
114.
new
115.
Query[ 256 ],
116.
string[ 128 ],
117.
DBResult:Result,
118.
Field[ 30 ]
119.
;
120.
121.
format( Query, sizeof( Query ), "SELECT * FROM `Vips` WHERE `Nume` = '%s'", PlayerName( playerid ) );
122.
Result = db_query( Database, Query );
123.
124.
if ( Result )
125.
{
126.
if ( db_num_rows( Result ) )
127.
{
128.
db_get_field_assoc( Result, "VipLevel", Field, 4 ); P_DATA[ playerid ][ Vip ] = strval( Field );
129.
db_get_field_assoc( Result, "VSkin", Field, 4 ); P_DATA[ playerid ][ p_FavSkin ] = strval( Field );
130.
131.
#if defined SHOW_LEVEL_DIALOG
132.
format( string, sizeof( string ), "\t{FF5500}Your V.I.P Level:\n\n{FF5500}You have V.I.P level {00FF00}%d\n\n{E60000}Congratulations!", P_DATA[ playerid ][ Vip ] );
133.
ShowPlayerDialog( playerid, ONCONN, DIALOG_STYLE_MSGBOX, "{00FF00}V.I.P", string, "Quit", "" );
134.
#endif
135.
}
136.
else
137.
{
138.
P_DATA[ playerid ][ Vip ] = 0;
139.
P_DATA[ playerid ][ p_FavSkin ] = -1;
140.
141.
format( Query, sizeof Query, "INSERT INTO `Vips` VALUES(NULL,'%s','0','-1')", PlayerName( playerid ) );
142.
db_query( Database, Query );
143.
144.
#if defined SHOW_LEVEL_DIALOG
145.
ShowPlayerDialog( playerid, ONCONN+1, DIALOG_STYLE_MSGBOX, "{00FF00}V.I.P", "{E60000}This username have V.I.P level 0", "Quit", "" );
146.
#endif
147.
}
148.
db_free_result( Result );
149.
}
150.
return 1;
151.
}
152.
public OnPlayerDisconnect( playerid )
153.
{
154.
new
155.
sz_Query[ 128 ]
156.
;
157.
format( sz_Query, sizeof sz_Query, "UPDATE `Vips` SET `VipLevel` = '%d',`VSkin` = '%d' WHERE `Nume` = '%s'", P_DATA[ playerid ][ Vip ], P_DATA[ playerid ][ p_FavSkin ], PlayerName( playerid ) );
158.
db_query( Database, sz_Query );
159.
160.
foreach(Player, i )
161.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
162.
AdvanceSpectate( i );
163.
164.
return 1;
165.
}
166.
public OnPlayerDeath( playerid, killerid, reason )
167.
{
168.
foreach(Player, i )
169.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
170.
AdvanceSpectate( i );
171.
172.
return 1;
173.
}
174.
public OnPlayerInteriorChange( playerid, newinteriorid, oldinteriorid )
175.
{
176.
new i = 0;
177.
178.
while( i != MAX_PLAYERS )
179.
{
180.
if ( IsPlayerConnected( i ) && GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid && P_DATA[ i ][ SpecType ] == ADMIN_SPEC_TYPE_PLAYER )
181.
{
182.
SetPlayerInterior( i, newinteriorid );
183.
}
184.
i++;
185.
}
186.
}
187.
public OnPlayerSpawn( playerid )
188.
{
189.
if ( P_DATA[ playerid ][ p_FavSkin ] != -1 )
190.
SetPlayerSkin( playerid, P_DATA[ playerid ][ p_FavSkin ] );
191.
192.
return 1;
193.
}
194.
public OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
195.
{
196.
if ( GetPlayerState( playerid ) == PLAYER_STATE_SPECTATING && P_DATA[ playerid ][ SpecID ] != INVALID_PLAYER_ID )
197.
{
198.
if ( newkeys == KEY_JUMP ) AdvanceSpectate( playerid );
199.
else if ( newkeys == KEY_SPRINT ) ReverseSpectate( playerid );
200.
}
201.
return 1;
202.
}
203.
public OnPlayerEnterVehicle( playerid, vehicleid )
204.
{
205.
foreach(Player, i )
206.
{
207.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
208.
{
209.
TogglePlayerSpectating( i, 1 );
210.
PlayerSpectateVehicle( i, vehicleid );
211.
P_DATA[ i ][ SpecType ] = ADMIN_SPEC_TYPE_VEHICLE;
212.
}
213.
}
214.
return 1;
215.
}
216.
public OnPlayerText( playerid, text[ ] )
217.
{
218.
new textstr[ 128 ];
219.
220.
if ( text[ 0 ] == '!' && P_DATA[ playerid ][ Vip ] >= 1 )
221.
{
222.
format( textstr, sizeof( textstr ),"V.I.P Chat: {00FF00}%s{FF5500}: %s", PlayerName( playerid ), text[ 1 ] );
223.
SendVipMessage( COLOR_VIP, textstr );
224.
return 0;
225.
}
226.
return 1;
227.
}
228.
public OnPlayerExitVehicle( playerid, vehicleid )
229.
{
230.
foreach(Player, i )
231.
{
232.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid && P_DATA[ i ][ SpecType ] == ADMIN_SPEC_TYPE_VEHICLE)
233.
{
234.
TogglePlayerSpectating( i, 1 );
235.
PlayerSpectatePlayer( i, playerid );
236.
P_DATA[ i ][ SpecType ] = ADMIN_SPEC_TYPE_PLAYER;
237.
}
238.
}
239.
return 1;
240.
}
241.
242.
public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
243.
{
244.
switch( dialogid )
245.
{
246.
case VSPA:
247.
{
248.
if ( !response )
249.
return 1;
250.
251.
switch( listitem )
252.
{
253.
case 0:
254.
{
255.
for ( new i = 0; i < 5; i++ )
256.
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
257.
RemovePlayerAttachedObject( playerid, i );
258.
259.
SetPlayerAttachedObject( playerid, 1, 19086, 8, -0.049768, -0.014062, -0.108385, 87.458297, 263.478149, 184.123764, 0.622413, 1.041609, 1.012785 );
260.
SendClientMessage( playerid, COLOR_VIP, "You have holded a {00FF00}dick!" );
261.
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
262.
}
263.
case 1:
264.
{
265.
for ( new i = 0; i < 5; i++ )
266.
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
267.
RemovePlayerAttachedObject( playerid, i );
268.
269.
SetPlayerAttachedObject( playerid, 0, 1114, 1, 0.138007, 0.002714, -0.157366, 350.942352, 16.794704, 32.683506, 0.791829, 0.471535, 1.032759 );
270.
SetPlayerAttachedObject( playerid, 1, 1114, 1, 0.138007, 0.002714, 0.064523, 342.729064, 354.099456, 32.369094, 0.791829, 0.471535, 1.032759 );
271.
SendClientMessage( playerid, COLOR_VIP, "You have holded a {00FF00}iron!" );
272.
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
273.
}
274.
case 2:
275.
{
276.
for ( new i = 0; i < 5; i++ )
277.
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
278.
RemovePlayerAttachedObject( playerid, i );
279.
280.
SetPlayerAttachedObject( playerid, 0, 18645, 2, 0.017478, 0.051500, 0.003912, 285.055511, 90.860740, 171.179550, 1.780549, 0.912008, 1.208514 );
281.
SetPlayerAttachedObject( playerid, 1, 18690, 2, -2.979508, 0.306475, -0.388553, 285.055511, 90.860740, 171.179550, 1.780549, 0.912008, 1.208514 );
282.
SetPlayerAttachedObject( playerid, 2, 18716, 2, -2.979508, 0.306475, -0.388553, 285.055511, 90.860740, 171.179550, 1.780549, 0.912008, 1.208514 );
283.
SendClientMessage( playerid, COLOR_VIP, "You have holded as {00FF00}Alien!" );
284.
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
285.
}
286.
case 3:
287.
{
288.
for ( new i = 0; i < 5; i++ )
289.
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
290.
RemovePlayerAttachedObject( playerid, i );
291.
292.
SetPlayerAttachedObject( playerid, 0, 18693, 5, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
293.
SetPlayerAttachedObject( playerid, 1, 18693, 6, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
294.
SetPlayerAttachedObject( playerid, 2, 18703, 6, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
295.
SetPlayerAttachedObject( playerid, 3, 18703, 5, 1.983503, 1.558882, -0.129482, 86.705787, 308.978118, 268.198822, 1.500000, 1.500000, 1.500000 );
296.
SetPlayerAttachedObject( playerid, 4, 18965, 2, 0.111052, 0.021643, -0.000846, 92.280899, 92.752510, 358.071044, 1.200000, 1.283168, 1.200000 );
297.
SendClientMessage( playerid, COLOR_VIP, "You have holded as {00FF00}Icread!" );
298.
SendClientMessage( playerid, COLOR_VIP, "To stop holding please type {00FF00}/stophold!" );
299.
}
300.
case 4:
301.
{
302.
SetPlayerSpecialAction( playerid, 2 ); //Jetpack!
303.
SendClientMessage( playerid, COLOR_VIP, "Jetpack Spawmed!" );
304.
}
305.
}
306.
}
307.
}
308.
return 1;
309.
}
310.
//============================================================================//
311.
//================ [ Commands v1.0 ] =========================================//
312.
CMD:setvip( playerid, params[ ] )
313.
{
314.
if ( !IsPlayerAdmin( playerid ) )
315.
return SendClientMessage( playerid, RED, "Only RCON Administrator can use this command!" );
316.
317.
new
318.
string[ 128 ],
319.
giveplayerid,
320.
level
321.
;
322.
if ( sscanf( params, "ud", giveplayerid, level ) )
323.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/setvip [playerid] [level]" );
324.
325.
if ( giveplayerid == INVALID_PLAYER_ID )
326.
return SendClientMessage( playerid, RED, "Player Is Not Connected!" );
327.
328.
if ( level > 3 || level < 0 )
329.
return SendClientMessage( playerid, RED, "ERROR: Invalid level!" );
330.
331.
P_DATA[ giveplayerid ][ Vip ] = level;
332.
format( string, sizeof( string ), "Administrator %s has set your V.I.P level to %d!", PlayerName( playerid ), level );
333.
SendClientMessage( giveplayerid, ABLUE, string );
334.
return 1;
335.
}
336.
CMD:vipgoto( playerid , params[ ] )
337.
{
338.
new PID, string[ 128 ];
339.
new Float:x, Float:y, Float:z;
340.
341.
VipCheck( playerid, 2 );
342.
343.
if ( sscanf( params, "u", PID ) )
344.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vipgoto [playerid]" );
345.
346.
if ( IsPlayerConnected( PID ) )
347.
return SendClientMessage( playerid, RED, "Player not connected or is yourself!" );
348.
349.
GetPlayerPos( PID , x , y , z );
350.
SetPlayerInterior( playerid , GetPlayerInterior( PID ) );
351.
SetPlayerVirtualWorld( playerid , GetPlayerVirtualWorld( PID ) );
352.
353.
if ( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER )
354.
{
355.
SetVehiclePos( GetPlayerVehicleID( playerid ) , x+3 , y , z );
356.
LinkVehicleToInterior( GetPlayerVehicleID( playerid ), GetPlayerInterior( PID ) );
357.
SetVehicleVirtualWorld( GetPlayerVehicleID( playerid ), GetPlayerVirtualWorld( PID ) );
358.
format( string , sizeof( string ), "You have teleported to %s's location!" , PlayerName( PID ) );
359.
SendClientMessage( playerid ,COLOR_VIP ,string );
360.
format( string, sizeof( string ), "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName( playerid ), P_DATA[ playerid ][ Vip ] );
361.
SendClientMessage( PID, COLOR_VIP, string );
362.
} else {
363.
364.
SetPlayerPos( playerid , x+2 , y , z );
365.
format( string, sizeof( string ), "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName( playerid ), P_DATA[ playerid ][ Vip ] );
366.
SendClientMessage( PID, COLOR_VIP, string );
367.
format( string , sizeof( string ), "You have teleported to %s's location!" , PlayerName( PID ) );
368.
SendClientMessage( playerid ,COLOR_VIP ,string );
369.
}
370.
#if defined VIPS_SEND_COMMAND
371.
SendVipsCommand( playerid, "/vipgoto" );
372.
#endif
373.
return 1;
374.
}
375.
CMD:spawnme( playerid, params[ ] )
376.
{
377.
VipCheck( playerid, 1 );
378.
379.
SpawnPlayer( playerid );
380.
SendClientMessage( playerid, COLOR_VIP, "You have been respawmed!" );
381.
#if defined VIPS_SEND_COMMAND
382.
SendVipsCommand( playerid, "/spawnme" );
383.
#endif
384.
return 1;
385.
}
386.
CMD:vips( playerid, params[ ] )
387.
{
388.
new
389.
V,
390.
lsString[ 1024 ]
391.
;
392.
393.
foreach(Player, i ) if ( P_DATA[ i ][ Vip ] > 0 )
394.
{
395.
format( lsString, sizeof lsString, "{FF5500}%s\n{FF5500}V.I.P {00FF00}%s {FF5500}- Level {00FF00}%d", lsString, PlayerName( i ), P_DATA[ i ][ Vip ] );
396.
V++;
397.
}
398.
if ( V == 0 )
399.
format( lsString, sizeof lsString, "\n{E60000}No V.I.Ps online at the moment!" );
400.
401.
return ShowPlayerDialog( playerid, VIPS, DIALOG_STYLE_MSGBOX, "{00FF00}Online V.I.Ps:", lsString, "Quit", "" );
402.
}
403.
CMD:myweather( playerid, params[ ] )
404.
{
405.
new weather, string[ 128 ];
406.
407.
VipCheck( playerid, 1 );
408.
409.
if ( sscanf( params, "d", weather ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/myweather [weatherid]" );
410.
if ( ( weather < 0 ) || ( weather > 52 ) ) return SendClientMessage( playerid, RED, "Only between 0 and 52 weather ids!" );
411.
412.
SetPlayerWeather( playerid, weather );
413.
format( string, sizeof( string ), "You have set your weather to {E60000}%d", weather );
414.
SendClientMessage( playerid, COLOR_VIP, string );
415.
#if defined VIPS_SEND_COMMAND
416.
SendVipsCommand( playerid, "/myweather" );
417.
#endif
418.
return 1;
419.
}
420.
CMD:mytime( playerid, params[ ] )
421.
{
422.
new time, string[ 128 ];
423.
424.
VipCheck( playerid, 1 );
425.
426.
if ( sscanf( params, "d", time ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/mytime [time]" );
427.
if ( ( time < 0 ) || ( time > 24 ) ) return SendClientMessage( playerid, RED, "Only between 0 and 24 hours you can set your time!" );
428.
429.
SetPlayerTime( playerid, time, 0 );
430.
format( string, sizeof( string ), "You have set your time to {E60000}%d", time );
431.
SendClientMessage( playerid, COLOR_VIP, string );
432.
#if defined VIPS_SEND_COMMAND
433.
SendVipsCommand( playerid, "/mytime" );
434.
#endif
435.
return 1;
436.
}
437.
CMD:myvw( playerid, params[ ] )
438.
/*
439.
With this function you will be ablle to change your virtual world!
440.
Disponible Virtual Worlds are between 0 and 100 you can change to bigest or lowest on this line:
441.
if ( ( vw < 0 ) || ( vw > 100 ) )
442.
*/
443.
{
444.
new vw, string[ 128 ];
445.
446.
VipCheck( playerid, 1 );
447.
448.
if ( sscanf( params, "d", vw ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/myvw [virtualworld]" );
449.
if ( ( vw < 0 ) || ( vw > 100 ) ) return SendClientMessage( playerid, RED, "Only between 0 and 100 Virtual Worlds ar disponible!" );
450.
451.
if ( vw == 0 )
452.
{
453.
SetPlayerVirtualWorld( playerid, 0 );
454.
return SendClientMessage( playerid, YELLOW, "You have returned back in normal world( 0 )!" );
455.
}
456.
SetPlayerVirtualWorld( playerid, vw );
457.
format( string, sizeof( string ), "You have set your Virtual World to {E60000}%d", vw );
458.
SendClientMessage( playerid, COLOR_VIP, string );
459.
#if defined VIPS_SEND_COMMAND
460.
SendVipsCommand( playerid, "/myvw" );
461.
#endif
462.
return 1;
463.
}
464.
CMD:vasay( playerid, params[ ] )
465.
{
466.
new VipMessage[ 180 ];
467.
468.
VipCheck( playerid, 2 );
469.
470.
if ( sscanf( params, "s[ 120 ]", VipMessage ) ) return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vasay [text]" );
471.
472.
format( VipMessage, sizeof( VipMessage ), "V.I.P - %s {FFFF00}(lvl: %d): {00FF00}%s", PlayerName( playerid ), P_DATA[ playerid ][ Vip ], VipMessage );
473.
SendClientMessageToAll( COLOR_VIP, VipMessage );
474.
#if defined VIPS_SEND_COMMAND
475.
SendVipsCommand( playerid, "/vasay" );
476.
#endif
477.
return 1;
478.
}
479.
CMD:maxammo( playerid, params[ ] )
480.
{
481.
VipCheck( playerid, 3 );
482.
483.
SendPlayerMaxAmmo( playerid );
484.
SendClientMessage( playerid, COLOR_VIP, "You have added {00FF00}Max Ammo{FF5500} to your weapons!" );
485.
#if defined VIPS_SEND_COMMAND
486.
SendVipsCommand( playerid, "/MaxAmmo" );
487.
#endif
488.
return 1;
489.
}
490.
CMD:vweapons( playerid, params[ ] )
491.
{
492.
VipCheck( playerid, 2 );
493.
494.
GivePlayerWeapon( playerid ,28, 120) ; // Weapons: Micro SMG || Ammo: 120
495.
GivePlayerWeapon( playerid, 31, 75 ); // Weapons: M4 || Gloante: 75
496.
GivePlayerWeapon( playerid, 34, 15 ); // Weapons: Sniper Rifle || Ammo: 15
497.
GivePlayerWeapon( playerid, 26, 100 ); // Weapons: Sawn-off Shotgun || Ammo: 100
498.
#if defined VIPS_SEND_COMMAND
499.
SendVipsCommand( playerid, "/vweapons" );
500.
#endif
501.
return 1;
502.
}
503.
CMD:vspec( playerid, params[ ] )
504.
{
505.
new
506.
PID,
507.
string[ 128 ]
508.
;
509.
510.
VipCheck( playerid, 1 );
511.
512.
if ( sscanf( params, "u", PID ) )
513.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vspec [playerid]" );
514.
515.
if ( !IsPlayerConnected( PID ) )
516.
return SendClientMessage( playerid, RED, "ERROR: Player is not connected!" );
517.
518.
if ( GetPlayerState( PID ) == PLAYER_STATE_SPECTATING && P_DATA[ PID ][ SpecID ] != INVALID_PLAYER_ID )
519.
return SendClientMessage( playerid, RED, "ERROR: Player spectating someone else!" );
520.
521.
if ( GetPlayerState( PID ) == 1 && GetPlayerState( PID ) == 2 && GetPlayerState( PID ) == 3 )
522.
return SendClientMessage( playerid, RED, "ERROR: Player not spawned!" );
523.
524.
SpectatePlayer( playerid, PID );
525.
GetPlayerPos( playerid, Position[ playerid ][ 0 ], Position[ playerid ][ 1 ], Position[ playerid ][ 2 ] );
526.
GetPlayerFacingAngle( playerid, Position[ playerid ][ 3 ] );
527.
format( string, sizeof( string ), "Now you spectating %s (%d)", PlayerName( PID ), PID );
528.
SendClientMessage( playerid, COLOR_VIP, string );
529.
#if defined VIPS_SEND_COMMAND
530.
SendVipsCommand( playerid, "/vspec" );
531.
#endif
532.
return 1;
533.
}
534.
CMD:vspecoff( playerid, params[ ] )
535.
{
536.
VipCheck( playerid, 1 );
537.
538.
if ( P_DATA[ playerid ][ SpecType ] == ADMIN_SPEC_TYPE_NONE )
539.
return SendClientMessage( playerid, RED, "ERROR: You are not spectating" );
540.
541.
StopSpectate( playerid );
542.
SetTimerEx("ReturnPosition", 3000, 0, "d", playerid );
543.
SendClientMessage( playerid, COLOR_VIP, "You have stop spectating" );
544.
#if defined VIPS_SEND_COMMAND
545.
SendVipsCommand( playerid, "/vspecoff" );
546.
#endif
547.
return 1;
548.
}
549.
CMD:vsaveskin( playerid, params[ ] )
550.
{
551.
VipCheck( playerid, 2 );
552.
553.
new
554.
SkinID,
555.
string[ 128 ]
556.
;
557.
if ( sscanf( params, "i", SkinID ) )
558.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vsaveskin [Current SkinID]" );
559.
560.
if ( SkinID != GetPlayerSkin( playerid ) )
561.
return SendClientMessage( playerid, RED, "ERROR: Skin enterd don't match with your current skin!" );
562.
563.
if ( SkinID < 0 || SkinID > 300 )
564.
return SendClientMessage( playerid, RED, "ERROR: Invalid skin! Only between 0 and 300 !" );
565.
566.
format( string, sizeof( string ), "You have successfully saved this skin (ID: %d)", SkinID );
567.
SendClientMessage( playerid, COLOR_VIP, string );
568.
SendClientMessage( playerid, COLOR_VIP, "Type /dontuseskin for don't save again this skin!" );
569.
570.
#if defined VIPS_SEND_COMMAND
571.
SendVipsCommand( playerid, "/vsaveskin" );
572.
#endif
573.
return 1;
574.
}
575.
CMD:dontuseskin( playerid, params[ ] )
576.
{
577.
VipCheck( playerid, 2 );
578.
579.
P_DATA[ playerid ][ p_FavSkin ] = -1;
580.
SetPlayerSkin( playerid, random( 300 ) );
581.
582.
#if defined VIPS_SEND_COMMAND
583.
SendVipsCommand( playerid, "/dontuseskin" );
584.
#endif
585.
SendClientMessage( playerid, COLOR_VIP, "Your saved skin is never been used!" );
586.
return 1;
587.
}
588.
CMD:mycolor( playerid, params[ ] )
589.
{
590.
VipCheck( playerid, 1 );
591.
592.
new Colour, colour[ 7 ];
593.
if ( sscanf( params, "d", Colour ) )
594.
return SendClientMessage( playerid, RED, "ERROR: {FFFF00}/mycolor [color]" ), SendClientMessage( playerid, RED, "0 = Black | 1 = White | 2 = Red | 3 = Orange | 4 = Yellow | 5 = Green | 6 = Blue | 7 = Purple | 8 = Brown" );
595.
596.
if ( Colour > 8 )
597.
return SendClientMessage( playerid, RED, "Colours: 0 = Black | 1 = White | 2 = Red | 3 = Orange | 4 = Yellow | 5 = Green | 6 = Blue | 7 = Purple | 8 = Brown" );
598.
599.
switch ( Colour )
600.
{
601.
case 0: SetPlayerColor( playerid, 0x000000AA ), colour = "Black";
602.
case 1: SetPlayerColor( playerid, 0xFFFFFFAA ), colour = "White";
603.
case 2: SetPlayerColor( playerid, 0xE60000AA ), colour = "Red";
604.
case 3: SetPlayerColor( playerid, 0xFF5500AA ), colour = "Orange";
605.
case 4: SetPlayerColor( playerid, 0xFFFF00AA ), colour = "Yellow";
606.
case 5: SetPlayerColor( playerid, 0x00FF00AA ), colour = "Green";
607.
case 6: SetPlayerColor( playerid, 0x0000BBAA ), colour = "Blue";
608.
case 7: SetPlayerColor( playerid, 0x800080AA ), colour = "Purple";
609.
case 8: SetPlayerColor( playerid, 0xA52A2AAA ), colour = "Brown";
610.
}
611.
612.
#if defined VIPS_SEND_COMMAND
613.
SendVipsCommand( playerid, "/mycolor" );
614.
#endif
615.
return 1;
616.
}
617.
CMD:vcmds( playerid, params[ ] )
618.
{
619.
VipCheck( playerid, 1 );
620.
621.
new string[ 1024 ];
622.
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" );
623.
strcat( string, "{FFFF00}/mytime\t\t\t/vsaveskin\t\t\t/vkick\n" );
624.
strcat( string, "/myweather\t\t\t/dontuseskin\t\t\t/vget\n" );
625.
strcat( string, "/myvw\t\t\t\t/vweapons\t\t\t/rw\n" );
626.
strcat( string, "/mycolor\t\t\t/vipgoto\t\t\t/maxammo\n" );
627.
strcat( string, "/vspec\t\t\t\t/vasay\t\t\t\t\n" );
628.
strcat( string, "/vspecoff\n/spawnme\n/vcmds\n" );
629.
strcat( string, "{E60000}/ltc[1-13]\t\t\t/vipgod\t\t\t/vannounce\n" );
630.
strcat( string, "{E60000}/godcar\n/vcar\n/vspa\n/stophold\n/viphouse\n" );
631.
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" );
632.
strcat( string, "{FF5500}Use simbol {00FF00}! {FF5500}in front of your text to speak in V.I.P Chat\n" );
633.
ShowPlayerDialog( playerid, VIPCMDS, DIALOG_STYLE_MSGBOX, "V.I.P Commands:", string, "Quit", "" );
634.
return 1;
635.
}
636.
CMD:vget( playerid, params[ ] )
637.
{
638.
new PID, string[ 256 ];
639.
new Float:x, Float:y, Float:z;
640.
641.
VipCheck( playerid, 3 );
642.
643.
if ( sscanf( params, "u", PID ) )
644.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vget [playerid]" );
645.
646.
if ( !IsPlayerConnected( PID ) )
647.
return SendClientMessage( playerid, RED, "Player is not connected or is yourself!" );
648.
649.
GetPlayerPos( playerid, x, y, z );
650.
SetPlayerInterior( PID, GetPlayerInterior( playerid ) );
651.
SetPlayerVirtualWorld( PID, GetPlayerVirtualWorld( playerid ) );
652.
if ( GetPlayerState( PID ) == 2 )
653.
{
654.
new VehicleID = GetPlayerVehicleID( PID );
655.
SetVehiclePos( VehicleID, x+3, y, z);
656.
LinkVehicleToInterior( VehicleID, GetPlayerInterior( PID ) );
657.
SetVehicleVirtualWorld( GetPlayerVehicleID( PID ), GetPlayerVirtualWorld( PID ) );
658.
format( string, sizeof( string ),"You have been teleported to V.I.P {00FF00}%s's {FF5500}location", PlayerName( playerid ) );
659.
SendClientMessage( PID, COLOR_VIP, string );
660.
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName( PID ) );
661.
SendClientMessage( playerid, COLOR_VIP, string );
662.
#if defined VIPS_SEND_COMMAND
663.
SendVipsCommand( playerid, "/vget" );
664.
#endif
665.
} else {
666.
SetPlayerPos( PID, x+2, y, z );
667.
#if defined VIPS_SEND_COMMAND
668.
SendVipsCommand( playerid, "/vget" );
669.
#endif
670.
format( string, sizeof( string ),"You have been teleported to V.I.P {00FF00}%s's {FF5500}location", PlayerName( playerid ) );
671.
SendClientMessage( PID, COLOR_VIP, string );
672.
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName( PID ) );
673.
SendClientMessage( playerid, COLOR_VIP, string );
674.
}
675.
return 1;
676.
}
677.
CMD:vkick( playerid, params[ ] )
678.
{
679.
new string[ 128 ];
680.
681.
VipCheck( playerid, 3 );
682.
683.
if ( sscanf( params, "us[ 128 ]", params[ 0 ], params[ 1 ] ) )
684.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vkick [playerid] [reason]" );
685.
686.
if ( IsPlayerConnected( params[ 0 ] ) )
687.
return SendClientMessage( playerid, RED, "Player is not connected !" );
688.
689.
if ( !strlen( params[ 1 ] ) )
690.
{
691.
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[no reason given]!",PlayerName( params[ 0 ] ), PlayerName( playerid ) );
692.
SendClientMessageToAll( GREEN, string );
693.
Kick( params[ 0 ] );
694.
}
695.
else
696.
{
697.
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[reason: {00FF00%s{FF5500}] ", PlayerName( params[ 0 ] ), PlayerName( playerid ), params[ 1 ] );
698.
SendClientMessageToAll( GREEN, string );
699.
Kick( params[ 0 ] );
700.
}
701.
702.
#if defined VIPS_SEND_COMMAND
703.
SendVipsCommand( playerid, "/vkick" );
704.
#endif
705.
return 1;
706.
}
707.
CMD:rw( playerid, params[ ] )
708.
{
709.
VipCheck( playerid, 3 );
710.
711.
GivePlayerWeapon( playerid, 4, 1); //Knife
712.
GivePlayerWeapon( playerid, 28, 1000); // Micro - SMG
713.
GivePlayerWeapon( playerid, 26, 100); // Sawn-off Shotgun
714.
GivePlayerWeapon( playerid, 22, 500); // 9mm Pistol
715.
//Source: https://sampwiki.blast.hk/wiki/Weapons !
716.
SendClientMessage( playerid, COLOR_VIP, "You got an Runing Weapons package!" );
717.
718.
#if defined VIPS_SEND_COMMAND
719.
SendVipsCommand( playerid, "/vkick" );
720.
#endif
721.
return 1;
722.
}
723.
CMD:vipgod( playerid, params[ ] )
724.
{
725.
VipCheck( playerid, 2 );
726.
727.
switch( P_DATA[ playerid ][ God ] )
728.
{
729.
case 0:
730.
{
731.
P_DATA[ playerid ][ God ] = 1;
732.
SendClientMessage( playerid, COLOR_VIP, "You have activated the V.I.P {00FF00}God Mode!" );
733.
}
734.
case 1: P_DATA[ playerid ][ God ] = 0;
735.
}
736.
737.
#if defined VIPS_SEND_COMMAND
738.
SendVipsCommand( playerid, "/vipgod" );
739.
#endif
740.
return 1;
741.
}
742.
CMD:godcar( playerid, params[ ] )
743.
{
744.
VipCheck( playerid, 1 );
745.
746.
switch( P_DATA[ playerid ][ CarGod ] )
747.
{
748.
case 0:
749.
{
750.
P_DATA[ playerid ][ CarGod ] = 1;
751.
SendClientMessage( playerid, COLOR_VIP, "You have activated the Vehicle {00FF00}God Mode!" );
752.
}
753.
case 1: P_DATA[ playerid ][ CarGod ] = 0;
754.
}
755.
756.
#if defined VIPS_SEND_COMMAND
757.
SendVipsCommand( playerid, "/GodCar" );
758.
#endif
759.
return 1;
760.
}
761.
CMD:ltc1( playerid, params[ ] )
762.
{
763.
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
764.
765.
VipCheck( playerid, 1 );
766.
767.
if ( IsPlayerInAnyVehicle( playerid ) )
768.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
769.
770.
#if defined VIPS_SEND_COMMAND
771.
SendVipsCommand( playerid, "/ltc1" );
772.
#endif
773.
GetPlayerPos( playerid, x, y, z);
774.
GetPlayerFacingAngle( playerid, Angle );
775.
VehiclulRt = CreateVehicle( 560, x, y, z, Angle, 1, -1, -1 );
776.
PutPlayerInVehicle( playerid, VehiclulRt, 0);
777.
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent(VehiclulRt, 1140); AddVehicleComponent(VehiclulRt, 1170);
778.
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent(VehiclulRt, 1140); AddVehicleComponent(VehiclulRt, 1170);
779.
AddVehicleComponent( VehiclulRt, 1080 ); AddVehicleComponent( VehiclulRt, 1086 ); AddVehicleComponent( VehiclulRt, 1087 ); AddVehicleComponent( VehiclulRt, 1010 );
780.
PlayerPlaySound( playerid, 1133, 0.0, 0.0, 0.0 );
781.
ChangeVehiclePaintjob( VehiclulRt, 0 );
782.
SetVehicleVirtualWorld( VehiclulRt, GetPlayerVirtualWorld( playerid ) );
783.
LinkVehicleToInterior( VehiclulRt, GetPlayerInterior( playerid ) );
784.
return 1;
785.
}
786.
CMD:ltc2( playerid, params[ ] )
787.
{
788.
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
789.
790.
VipCheck( playerid, 1 );
791.
792.
if ( IsPlayerInAnyVehicle( playerid ) )
793.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
794.
795.
#if defined VIPS_SEND_COMMAND
796.
SendVipsCommand( playerid, "/ltc2" );
797.
#endif
798.
GetPlayerPos( playerid, x, y, z );
799.
GetPlayerFacingAngle( playerid, Angle );
800.
VehiclulRt = CreateVehicle( 560, x, y, z, Angle, 1, -1, -1 );
801.
PutPlayerInVehicle( playerid, VehiclulRt, 0 );
802.
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent( VehiclulRt, 1140 ); AddVehicleComponent( VehiclulRt, 1170 );
803.
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent( VehiclulRt, 1140 ); AddVehicleComponent( VehiclulRt, 1170 );
804.
AddVehicleComponent( VehiclulRt, 1080 ); AddVehicleComponent( VehiclulRt, 1086 ); AddVehicleComponent( VehiclulRt, 1087 ); AddVehicleComponent( VehiclulRt, 1010 );
805.
PlayerPlaySound( playerid, 1133, 0.0, 0.0, 0.0 );
806.
ChangeVehiclePaintjob( VehiclulRt, 1 );
807.
SetVehicleVirtualWorld( VehiclulRt, GetPlayerVirtualWorld( playerid ) );
808.
LinkVehicleToInterior( VehiclulRt, GetPlayerInterior( playerid ) );
809.
return 1;
810.
}
811.
812.
CMD:ltc3( playerid, params[ ] )
813.
{
814.
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
815.
816.
VipCheck( playerid, 1 );
817.
818.
if ( IsPlayerInAnyVehicle( playerid ) )
819.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
820.
821.
#if defined VIPS_SEND_COMMAND
822.
SendVipsCommand( playerid, "/ltc3" );
823.
#endif
824.
GetPlayerPos( playerid, x, y, z );
825.
GetPlayerFacingAngle( playerid, Angle );
826.
VehiclulRt = CreateVehicle( 560, x, y, z, Angle, 1, -1, -1 );
827.
PutPlayerInVehicle( playerid, VehiclulRt, 0 );
828.
AddVehicleComponent( VehiclulRt, 1028 ); AddVehicleComponent( VehiclulRt, 1138 ); AddVehicleComponent( VehiclulRt, 1170 );
829.
AddVehicleComponent( VehiclulRt, 1030 ); AddVehicleComponent( VehiclulRt, 1031 ); AddVehicleComponent( VehiclulRt, 1140 );
830.
AddVehicleComponent( VehiclulRt, 1080 ); AddVehicleComponent( VehiclulRt, 1086 ); AddVehicleComponent( VehiclulRt, 1087 ); AddVehicleComponent( VehiclulRt, 1010 );
831.
PlayerPlaySound( playerid, 1133, 0.0, 0.0, 0.0 );
832.
ChangeVehiclePaintjob( VehiclulRt, 2 );
833.
SetVehicleVirtualWorld( VehiclulRt, GetPlayerVirtualWorld( playerid ) );
834.
LinkVehicleToInterior( VehiclulRt, GetPlayerInterior( playerid ) );
835.
return 1;
836.
}
837.
838.
CMD:ltc4( playerid, params[ ] )
839.
{
840.
new Float:x, Float:y, Float:z, Float:Angle, carid;
841.
842.
VipCheck( playerid, 1 );
843.
844.
if ( IsPlayerInAnyVehicle( playerid ) )
845.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
846.
847.
#if defined VIPS_SEND_COMMAND
848.
SendVipsCommand( playerid, "/ltc4" );
849.
#endif
850.
GetPlayerPos( playerid, x, y, z );
851.
GetPlayerFacingAngle( playerid, Angle );
852.
carid = CreateVehicle( 559, x, y, z, Angle, 1, -1, -1 );
853.
PutPlayerInVehicle( playerid, carid, 0 );
854.
AddVehicleComponent( carid, 1065 ); AddVehicleComponent( carid, 1067 ); AddVehicleComponent( carid, 1073 );
855.
AddVehicleComponent( carid, 1162 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
856.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
857.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
858.
return 1;
859.
}
860.
861.
CMD:ltc5( playerid, params[ ] )
862.
{
863.
new Float:x, Float:y, Float:z, Float:Angle, carid;
864.
865.
VipCheck( playerid, 1 );
866.
867.
if ( IsPlayerInAnyVehicle( playerid ) )
868.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
869.
870.
#if defined VIPS_SEND_COMMAND
871.
SendVipsCommand( playerid, "/ltc5" );
872.
#endif
873.
GetPlayerPos( playerid, x, y, z );
874.
GetPlayerFacingAngle( playerid, Angle );
875.
carid = CreateVehicle( 565, x, y, z, Angle, 1, -1, -1 );
876.
PutPlayerInVehicle( playerid, carid, 0 );
877.
AddVehicleComponent( carid, 1046 ); AddVehicleComponent( carid, 1049 ); AddVehicleComponent( carid, 1073 );
878.
AddVehicleComponent( carid, 1053 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
879.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
880.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
881.
return 1;
882.
}
883.
884.
CMD:ltc6( playerid, params[ ] )
885.
{
886.
new Float:x, Float:y, Float:z, Float:Angle, carid;
887.
888.
VipCheck( playerid, 1 );
889.
890.
if ( IsPlayerInAnyVehicle( playerid ) )
891.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
892.
893.
#if defined VIPS_SEND_COMMAND
894.
SendVipsCommand( playerid, "/ltc6" );
895.
#endif
896.
GetPlayerPos( playerid, x, y, z );
897.
GetPlayerFacingAngle( playerid, Angle );
898.
carid = CreateVehicle( 558, x, y, z, Angle, 1, -1, -1 );
899.
PutPlayerInVehicle( playerid, carid, 0 );
900.
AddVehicleComponent( carid, 1088 ); AddVehicleComponent( carid, 1092 ); AddVehicleComponent( carid, 1073 );
901.
AddVehicleComponent( carid, 1139 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
902.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
903.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
904.
return 1;
905.
}
906.
907.
CMD:ltc7( playerid, params[ ] )
908.
{
909.
new Float:x, Float:y, Float:z, Float:Angle, carid;
910.
911.
VipCheck( playerid, 1 );
912.
913.
if ( IsPlayerInAnyVehicle( playerid ) )
914.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
915.
916.
#if defined VIPS_SEND_COMMAND
917.
SendVipsCommand( playerid, "/ltc7" );
918.
#endif
919.
GetPlayerPos( playerid, x, y, z );
920.
GetPlayerFacingAngle( playerid, Angle );
921.
carid = CreateVehicle( 561, x, y, z, Angle, 1, -1, -1 );
922.
PutPlayerInVehicle( playerid, carid, 0 );
923.
AddVehicleComponent( carid, 1055 ); AddVehicleComponent( carid, 1058 ); AddVehicleComponent( carid, 1073 );
924.
AddVehicleComponent( carid, 1064 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
925.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
926.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
927.
return 1;
928.
}
929.
930.
CMD:ltc8( playerid, params[ ] )
931.
{
932.
new Float:x, Float:y, Float:z, Float:Angle, carid;
933.
934.
VipCheck( playerid, 1 );
935.
936.
if ( IsPlayerInAnyVehicle( playerid ) )
937.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
938.
939.
#if defined VIPS_SEND_COMMAND
940.
SendVipsCommand( playerid, "/ltc8" );
941.
#endif
942.
GetPlayerPos( playerid, x, y, z );
943.
GetPlayerFacingAngle( playerid, Angle );
944.
carid = CreateVehicle( 562, x, y, z, Angle, 1, -1, -1 );
945.
PutPlayerInVehicle( playerid, carid, 0 );
946.
AddVehicleComponent( carid, 1034 ); AddVehicleComponent( carid, 1038 ); AddVehicleComponent( carid, 1073 );
947.
AddVehicleComponent( carid, 1147 ); AddVehicleComponent( carid, 1010 ); ChangeVehiclePaintjob( carid, 1 );
948.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
949.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
950.
return 1;
951.
}
952.
953.
CMD:ltc9( playerid, params[ ] )
954.
{
955.
new Float:x, Float:y, Float:z, Float:Angle, carid;
956.
957.
VipCheck( playerid, 1 );
958.
959.
if ( IsPlayerInAnyVehicle( playerid ) )
960.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
961.
962.
#if defined VIPS_SEND_COMMAND
963.
SendVipsCommand( playerid, "/ltc9" );
964.
#endif
965.
GetPlayerPos( playerid, x, y, z );
966.
GetPlayerFacingAngle( playerid, Angle );
967.
carid = CreateVehicle( 567, x, y, z, Angle, 1, -1, -1 );
968.
PutPlayerInVehicle( playerid, carid, 0 );
969.
AddVehicleComponent( carid, 1102 ); AddVehicleComponent( carid, 1129 ); AddVehicleComponent( carid, 1188 ); AddVehicleComponent( carid, 1087 ); AddVehicleComponent( carid, 1086 );
970.
AddVehicleComponent( carid, 1133 ); AddVehicleComponent( carid, 1186 ); AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1085 ); ChangeVehiclePaintjob( carid, 1 );
971.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
972.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
973.
return 1;
974.
}
975.
976.
CMD:ltc10( playerid, params[ ] )
977.
{
978.
new Float:x, Float:y, Float:z, Float:Angle, carid;
979.
980.
VipCheck( playerid, 1 );
981.
982.
if ( IsPlayerInAnyVehicle( playerid ) )
983.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
984.
985.
#if defined VIPS_SEND_COMMAND
986.
SendVipsCommand( playerid, "/ltc10" );
987.
#endif
988.
GetPlayerPos( playerid, x, y, z );
989.
GetPlayerFacingAngle( playerid, Angle );
990.
carid = CreateVehicle( 558, x, y, z, Angle, 1, -1, -1 );
991.
PutPlayerInVehicle( playerid, carid, 0 );
992.
AddVehicleComponent( carid, 1092 ); AddVehicleComponent( carid, 1166 ); AddVehicleComponent( carid, 1165 ); AddVehicleComponent( carid, 1090 );
993.
AddVehicleComponent( carid, 1094 ); AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1087 ); AddVehicleComponent( carid, 1163 );
994.
AddVehicleComponent( carid, 1091 ); ChangeVehiclePaintjob( carid, 2 );
995.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
996.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
997.
return 1;
998.
}
999.
1000.
CMD:ltc11( playerid, params[ ] )
1001.
{
1002.
new Float:x, Float:y, Float:z, Float:Angle, carid;
1003.
1004.
VipCheck( playerid, 1 );
1005.
1006.
if ( IsPlayerInAnyVehicle( playerid ) )
1007.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
1008.
1009.
#if defined VIPS_SEND_COMMAND
1010.
SendVipsCommand( playerid, "/ltc11" );
1011.
#endif
1012.
GetPlayerPos( playerid, x, y, z );
1013.
GetPlayerFacingAngle( playerid, Angle );
1014.
carid = CreateVehicle( 557, x, y, z, Angle, 1, 1, -1 );
1015.
PutPlayerInVehicle( playerid, carid, 0 );
1016.
AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1081 );
1017.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
1018.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
1019.
return 1;
1020.
}
1021.
CMD:ltc12( playerid, params[ ] )
1022.
{
1023.
new Float:x, Float:y, Float:z, Float:Angle, carid;
1024.
1025.
VipCheck( playerid, 1 );
1026.
1027.
if ( IsPlayerInAnyVehicle( playerid ) )
1028.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
1029.
1030.
#if defined VIPS_SEND_COMMAND
1031.
SendVipsCommand( playerid, "/ltc12" );
1032.
#endif
1033.
GetPlayerPos( playerid, x, y, z );
1034.
GetPlayerFacingAngle( playerid, Angle );
1035.
carid = CreateVehicle( 535, x, y, z, Angle, 1, -1, -1 );
1036.
PutPlayerInVehicle( playerid, carid, 0 );
1037.
ChangeVehiclePaintjob( carid, 1 ); AddVehicleComponent( carid, 1109 ); AddVehicleComponent( carid, 1115 ); AddVehicleComponent( carid, 1117 ); AddVehicleComponent( carid, 1073 ); AddVehicleComponent( carid, 1010 );
1038.
AddVehicleComponent( carid, 1087 ); AddVehicleComponent( carid, 1114 ); AddVehicleComponent( carid, 1081 ); AddVehicleComponent( carid, 1119 ); AddVehicleComponent( carid, 1121 );
1039.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
1040.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
1041.
return 1;
1042.
}
1043.
CMD:ltc13( playerid, params[ ] )
1044.
{
1045.
new Float:x, Float:y, Float:z, Float:Angle, carid;
1046.
1047.
VipCheck( playerid, 1 );
1048.
1049.
if ( IsPlayerInAnyVehicle( playerid ) )
1050.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
1051.
1052.
#if defined VIPS_SEND_COMMAND
1053.
SendVipsCommand( playerid, "/ltc13" );
1054.
#endif
1055.
GetPlayerPos( playerid, x, y, z );
1056.
GetPlayerFacingAngle( playerid, Angle );
1057.
carid = CreateVehicle( 562, x, y, z, Angle, 1, -1, -1 );
1058.
PutPlayerInVehicle( playerid, carid, 0 );
1059.
AddVehicleComponent( carid, 1034 ); AddVehicleComponent( carid, 1038 ); AddVehicleComponent( carid, 1147 );
1060.
AddVehicleComponent( carid, 1010 ); AddVehicleComponent( carid, 1073 ); ChangeVehiclePaintjob( carid, 0 );
1061.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
1062.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
1063.
return 1;
1064.
}
1065.
CMD:vcar( playerid, params[ ] )
1066.
{
1067.
new Float:x, Float:y, Float:z, Float:Angle, carid;
1068.
VipCheck( playerid, 1 );
1069.
1070.
if ( IsPlayerInAnyVehicle( playerid ) )
1071.
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
1072.
1073.
#if defined VIPS_SEND_COMMAND
1074.
SendVipsCommand( playerid, "/vcar" );
1075.
#endif
1076.
GetPlayerPos( playerid, x, y, z );
1077.
GetPlayerFacingAngle( playerid, Angle );
1078.
carid = CreateVehicle( 402, x, y, z, Angle, 0, 0, 0 ); // Car: Buffalo
1079.
PutPlayerInVehicle( playerid, carid, 0 );
1080.
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
1081.
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
1082.
1083.
//Source: https://sampwiki.blast.hk/wiki/Vehicles:All
1084.
return 1;
1085.
}
1086.
CMD:vannounce( playerid, params[ ] )
1087.
{
1088.
VipCheck( playerid, 1 );
1089.
1090.
if ( sscanf( params, "s[128]", params[ 0 ] ) )
1091.
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vannounce [playerid]" );
1092.
1093.
GameTextForAll( params[ 0 ], 6000, 1 );
1094.
#if defined VIPS_SEND_COMMAND
1095.
SendVipsCommand( playerid, "/vannounce" );
1096.
#endif
1097.
return 1;
1098.
}
1099.
CMD:vspa( playerid, params[ ] )// V.I.Ps Special Actions( Holds + Jetpack! )
1100.
{
1101.
VipCheck( playerid, 1 );
1102.
1103.
ShowPlayerDialog( playerid, VSPA, DIALOG_STYLE_LIST, "V.I.P Special Actions!", "Hold: Dick!\nHold: Iron!\nHold: Alien!\nHold: Incred!\nSpawn: JetPack!", "Select", "Cancel" );
1104.
1105.
#if defined VIPS_SEND_COMMAND
1106.
SendVipsCommand( playerid, "/vspa" );
1107.
#endif
1108.
return 1;
1109.
}
1110.
1111.
CMD:stophold( playerid, params[ ] )
1112.
{
1113.
VipCheck( playerid, 1 );
1114.
1115.
if( !IsPlayerAttachedObjectSlotUsed( playerid, 0 ) &&
1116.
!IsPlayerAttachedObjectSlotUsed( playerid, 1 ) &&
1117.
!IsPlayerAttachedObjectSlotUsed( playerid, 2 ) &&
1118.
!IsPlayerAttachedObjectSlotUsed( playerid, 3 ) &&
1119.
!IsPlayerAttachedObjectSlotUsed( playerid, 4 ) )
1120.
return SendClientMessage( playerid, RED, "You are not holding any object" );
1121.
1122.
#if defined VIPS_SEND_COMMAND
1123.
SendVipsCommand( playerid, "/stophold" );
1124.
#endif
1125.
1126.
for ( new i = 0; i < 5; i ++ )
1127.
{
1128.
if ( IsPlayerAttachedObjectSlotUsed( playerid, i ) )
1129.
{
1130.
RemovePlayerAttachedObject( playerid, i );
1131.
SendClientMessage( i, RED, "You have stopped holding object!" );
1132.
}
1133.
}
1134.
return 1;
1135.
}
1136.
1137.
CMD:viphouse( playerid, params[ ] )
1138.
{
1139.
VipCheck( playerid, 1 );
1140.
1141.
SetPlayerPos( playerid, -2637.69,1404.24,906.46 );
1142.
SetPlayerInterior( playerid, 3 );
1143.
RemovePlayerFromVehicle( playerid );
1144.
#if defined VIPS_SEND_COMMAND
1145.
SendVipsCommand( playerid, "/VipHouse" );
1146.
#endif
1147.
SendClientMessage( playerid, COLOR_VIP, "You have teleported to V.I.P House( Club )!" );
1148.
return 1;
1149.
}
1150.
Public: SendVipMessage( color, const string[ ] )
1151.
{
1152.
foreach(Player, i )
1153.
if ( P_DATA[ i ][ Vip ] >= 1 )
1154.
SendClientMessage( i, color, string );
1155.
1156.
return 1;
1157.
}
1158.
Public: ReturnPosition( playerid )
1159.
{
1160.
SetPlayerPos( playerid, Position[ playerid ][ 0 ], Position[ playerid ][ 1 ], Position[ playerid ][ 2 ] );
1161.
SetPlayerFacingAngle( playerid, Position[ playerid ][ 3 ] );
1162.
}
1163.
Public: GodUpdate( )
1164.
{
1165.
foreach(Player, i )
1166.
{
1167.
if ( P_DATA[ i ][ God ] == 1 )
1168.
SetPlayerHealth( i, 100000 );
1169.
1170.
if ( P_DATA[ i ][ CarGod ] == 1 && IsPlayerInAnyVehicle( i ) )
1171.
SetVehicleHealth( GetPlayerVehicleID( i ), 10000 );
1172.
}
1173.
}
1174.
//======================================================== [ Stocks ] ============================================================//
1175.
stock PlayerName( i )
1176.
{
1177.
new n[ 24 ];
1178.
GetPlayerName( i, n, 24 );
1179.
return n;
1180.
}
1181.
stock SpectatePlayer( playerid, PID )
1182.
{
1183.
new string[ 100 ], Float:health, Float:armour;
1184.
1185.
foreach(Player, i )
1186.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
1187.
AdvanceSpectate( i );
1188.
1189.
SetPlayerInterior( playerid, GetPlayerInterior( PID ) );
1190.
TogglePlayerSpectating( playerid, 1 );
1191.
1192.
if ( IsPlayerInAnyVehicle( PID ) )
1193.
{
1194.
PlayerSpectateVehicle( playerid, GetPlayerVehicleID( PID ) );
1195.
P_DATA[ playerid ][ SpecID ] = PID;
1196.
P_DATA[ playerid ][ SpecType ] = ADMIN_SPEC_TYPE_VEHICLE;
1197.
}
1198.
else
1199.
{
1200.
PlayerSpectatePlayer( playerid, PID );
1201.
P_DATA[ playerid ][ SpecID ] = PID;
1202.
P_DATA[ playerid ][ SpecType ] = ADMIN_SPEC_TYPE_PLAYER;
1203.
}
1204.
1205.
GetPlayerName( PID, string, sizeof( string ) );
1206.
GetPlayerHealth( PID, health );
1207.
GetPlayerArmour( PID, armour );
1208.
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 ) );
1209.
GameTextForPlayer( playerid, string, 25000, 3 );
1210.
return 1;
1211.
}
1212.
stock StopSpectate( playerid )
1213.
{
1214.
TogglePlayerSpectating( playerid, 0 );
1215.
P_DATA[ playerid ][ SpecID ] = INVALID_PLAYER_ID;
1216.
P_DATA[ playerid ][ SpecType ] = ADMIN_SPEC_TYPE_NONE;
1217.
GameTextForPlayer( playerid,"~n~~n~~n~~w~Spectate mode ended", 1000, 3 );
1218.
return 1;
1219.
}
1220.
stock AdvanceSpectate( playerid )
1221.
{
1222.
if ( ConnectedPlayers( ) == 2 )
1223.
return StopSpectate( playerid );
1224.
1225.
if ( GetPlayerState( playerid ) == PLAYER_STATE_SPECTATING && P_DATA[ playerid ][ SpecID ] != INVALID_PLAYER_ID )
1226.
{
1227.
for ( new i = P_DATA[ playerid ][ SpecID] +1; i <= MAX_PLAYERS; i++ )
1228.
{
1229.
if ( i == MAX_PLAYERS ) i = 0;
1230.
if ( IsPlayerConnected( i ) && i != playerid )
1231.
{
1232.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] != INVALID_PLAYER_ID || ( GetPlayerState( i ) != 1 && GetPlayerState( i ) != 2 && GetPlayerState( i ) != 3 ) )
1233.
{
1234.
continue;
1235.
} else {
1236.
SpectatePlayer( playerid, i );
1237.
break;
1238.
}
1239.
}
1240.
}
1241.
}
1242.
return 1;
1243.
}
1244.
stock ConnectedPlayers( )
1245.
{
1246.
new Connected;
1247.
foreach(Player, i ) Connected++;
1248.
return Connected;
1249.
}
1250.
#if defined VIPS_SEND_COMMAND
1251.
stock SendVipsCommand( playerid, cmdtext[ ] )
1252.
{
1253.
new str[ 128 ];
1254.
1255.
format( str, sizeof( str ),"[V.I.P] {00FF00}%s(%d) {FF5500}has used command {00FF00}%s", PlayerName( playerid ), playerid, cmdtext );
1256.
return SendVipMessage( COLOR_VIP, str );
1257.
}
1258.
#endif
1259.
stock ReverseSpectate( playerid )
1260.
{
1261.
if ( ConnectedPlayers( ) == 2 )
1262.
{
1263.
StopSpectate( playerid );
1264.
return 1;
1265.
}
1266.
if ( GetPlayerState( playerid ) == PLAYER_STATE_SPECTATING && P_DATA[ playerid ][ SpecID ] != INVALID_PLAYER_ID )
1267.
{
1268.
for ( new i = P_DATA[ playerid ][ SpecID ]-1; i >= 0; i-- )
1269.
{
1270.
if ( i == 0 ) i = MAX_PLAYERS;
1271.
if ( IsPlayerConnected( i ) && i != playerid )
1272.
{
1273.
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] != INVALID_PLAYER_ID || ( GetPlayerState( i ) != 1 && GetPlayerState( i ) != 2 && GetPlayerState( i ) != 3 ) )
1274.
{
1275.
continue;
1276.
} else {
1277.
SpectatePlayer( playerid, i );
1278.
break;
1279.
}
1280.
}
1281.
}
1282.
}
1283.
return 1;
1284.
}
1285.
stock SendPlayerMaxAmmo( playerid )
1286.
{
1287.
new slot, weap, ammo;
1288.
1289.
for ( slot = 0; slot < 14; slot++ )
1290.
{
1291.
GetPlayerWeaponData( playerid, slot, weap, ammo );
1292.
if ( IsValidWeapon( weap ) )
1293.
{
1294.
GivePlayerWeapon( playerid, weap, 99999 );
1295.
}
1296.
}
1297.
return 1;
1298.
}
1299.
stock IsValidWeapon( weaponid )
1300.
{
1301.
if ( weaponid > 0 && weaponid < 19 || weaponid > 21 && weaponid < 47 ) return 1;
1302.
return 0;
1303.
}
1304.
//============================================================ [ EOF ] ===========================================================//
create a new version of this paste RAW Paste Data
#if defined VIP
xxSPEEDYxx's V.I.P System - NEW*
3 Levels
v2.0
COMMANDS - [v1.0]:
V.I.P Level 1 Commands: V.I.P Level 2 Commands: V.I.P Level 3 Commands:
/mytime /vsaveskin /vkick
/myweather /dontuseskin /vget
/myvw /vweapons /rw
/mycolor /vipgoto /maxammo
/vspec /vasay + V.I.P level 1&2 CMDS
/vspecoff + V.I.P level 1 CMDS
/spawnme
/vcmds
COMMANDS - [v2.0]:
V.I.P Level 1 Commands: V.I.P Level 2 Commands: V.I.P Level 3 Commands:
/ltc[1 - 13] /vipgod /vannounce
/viphouse
/godcar
/vcar
/vspa( V.I.P Special Actions! )
/stophold!
V.I.P over 35 command! OMG!
#endif
//============ [ Includes ] ============//
#include < a_samp > // Main include!
#include < zcmd > // Find it on: https://sampforum.blast.hk/showthread.php?tid=91354&highlight=zcmd
#include < sscanf2 > // Find it on: https://sampforum.blast.hk/showthread.php?tid=120356
#include < foreach >
//======================================//
#define VIPS_SEND_COMMAND //Comment this if you don't want to show messages whena VIP use a command.
#define SHOW_LEVEL_DIALOG //Comment this if you don't want to show the dialog with your VIP level on connect.
//============ [ Colours ] ============//
#define RED 0xE60000AA
#define YELLOW 0xFFFF00AA
#define GREEN 0x00FF00AA
#define ABLUE 0x2641FEAA
#define COLOR_VIP 0xFF5500AA //aka Orange:P
//====================================//
//========== [ Dialogs ] ==========//
/*
I put the dialogids bigest to not confuse with other dialogs in your FSs/GM
*/
enum
{
MYLVL,
VIPS,
VIPCMDS,
ONCONN,
VSPA
};
//====================================//
//============= [ Level Check ] ======//
stock
bool:False = false
;
#define VipCheck(%0,%1)\
do{\
if(P_DATA[(%0)][Vip] < (%1)){\
new Str[128];\
format(Str, 128, "~r~~h~ERROR!~n~~w~You need to be V.I.P level ~y~~h~%d ~w~to use this command!", (%1));\
return GameTextForPlayer((%0), Str, 3000, 4);\
}\
}\
while(False)
//============= [ SPEC ] =============//
#define ADMIN_SPEC_TYPE_NONE (0)
#define ADMIN_SPEC_TYPE_PLAYER (1)
#define ADMIN_SPEC_TYPE_VEHICLE (2)
/*
Do not touch this!
*/
//=========== [ Shortcuts ] ==========//
#define Public:%0(%1) \
forward%0(%1); public%0(%1)
//====================================//
//========== [ News&Enums ] ==========//
enum pInfo
{
Vip,
SpecID,
SpecType,
God,
CarGod,
p_FavSkin
};
new P_DATA[ MAX_PLAYERS ][ pInfo ];
new DB:Database;
new Float:Position[ MAX_PLAYERS ][ 4 ];
//====================================//
//==================== [ CallBacks ] =========================================//
public OnFilterScriptInit( )
{
Database = db_open( "Vips.db" ); //Name of the database! You can change it!
db_query( Database, "CREATE TABLE IF NOT EXISTS `Vips` (`Key` INTEGER PRIMARY KEY AUTOINCREMENT, `Nume` TEXT, `VipLevel` NUMERIC, `VSkin` NUMERIC)" );
return 1;
}
public OnFilterScriptExit( )
return db_close( Database );
public OnPlayerConnect( playerid )
{
new
Query[ 256 ],
string[ 128 ],
DBResult:Result,
Field[ 30 ]
;
format( Query, sizeof( Query ), "SELECT * FROM `Vips` WHERE `Nume` = '%s'", PlayerName( playerid ) );
Result = db_query( Database, Query );
if ( Result )
{
if ( db_num_rows( Result ) )
{
db_get_field_assoc( Result, "VipLevel", Field, 4 ); P_DATA[ playerid ][ Vip ] = strval( Field );
db_get_field_assoc( Result, "VSkin", Field, 4 ); P_DATA[ playerid ][ p_FavSkin ] = strval( Field );
#if defined SHOW_LEVEL_DIALOG
format( string, sizeof( string ), "\t{FF5500}Your V.I.P Level:\n\n{FF5500}You have V.I.P level {00FF00}%d\n\n{E60000}Congratulations!", P_DATA[ playerid ][ Vip ] );
ShowPlayerDialog( playerid, ONCONN, DIALOG_STYLE_MSGBOX, "{00FF00}V.I.P", string, "Quit", "" );
#endif
}
else
{
P_DATA[ playerid ][ Vip ] = 0;
P_DATA[ playerid ][ p_FavSkin ] = -1;
format( Query, sizeof Query, "INSERT INTO `Vips` VALUES(NULL,'%s','0','-1')", PlayerName( playerid ) );
db_query( Database, Query );
#if defined SHOW_LEVEL_DIALOG
ShowPlayerDialog( playerid, ONCONN+1, DIALOG_STYLE_MSGBOX, "{00FF00}V.I.P", "{E60000}This username have V.I.P level 0", "Quit", "" );
#endif
}
db_free_result( Result );
}
return 1;
}
public OnPlayerDisconnect( playerid )
{
new
sz_Query[ 128 ]
;
format( sz_Query, sizeof sz_Query, "UPDATE `Vips` SET `VipLevel` = '%d',`VSkin` = '%d' WHERE `Nume` = '%s'", P_DATA[ playerid ][ Vip ], P_DATA[ playerid ][ p_FavSkin ], PlayerName( playerid ) );
db_query( Database, sz_Query );
foreach(Player, i )
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
AdvanceSpectate( i );
return 1;
}
public OnPlayerDeath( playerid, killerid, reason )
{
foreach(Player, 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 OnPlayerSpawn( playerid )
{
if ( P_DATA[ playerid ][ p_FavSkin ] != -1 )
SetPlayerSkin( playerid, P_DATA[ playerid ][ p_FavSkin ] );
return 1;
}
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 )
{
foreach(Player, 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 OnPlayerText( playerid, text[ ] )
{
new textstr[ 128 ];
if ( text[ 0 ] == '!' && P_DATA[ playerid ][ Vip ] >= 1 )
{
format( textstr, sizeof( textstr ),"V.I.P Chat: {00FF00}%s{FF5500}: %s", PlayerName( playerid ), text[ 1 ] );
SendVipMessage( COLOR_VIP, textstr );
return 0;
}
return 1;
}
public OnPlayerExitVehicle( playerid, vehicleid )
{
foreach(Player, 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[ ] )
{
switch( dialogid )
{
case VSPA:
{
if ( !response )
return 1;
switch( listitem )
{
case 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!" );
}
case 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!" );
}
case 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!" );
}
case 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!" );
}
case 4:
{
SetPlayerSpecialAction( playerid, 2 ); //Jetpack!
SendClientMessage( playerid, COLOR_VIP, "Jetpack Spawmed!" );
}
}
}
}
return 1;
}
//============================================================================//
//================ [ Commands v1.0 ] =========================================//
CMD:setvip( playerid, params[ ] )
{
if ( !IsPlayerAdmin( playerid ) )
return SendClientMessage( playerid, RED, "Only RCON Administrator can use this command!" );
new
string[ 128 ],
giveplayerid,
level
;
if ( sscanf( params, "ud", giveplayerid, level ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/setvip [playerid] [level]" );
if ( giveplayerid == INVALID_PLAYER_ID )
return SendClientMessage( playerid, RED, "Player Is Not Connected!" );
if ( level > 3 || level < 0 )
return SendClientMessage( playerid, RED, "ERROR: Invalid level!" );
P_DATA[ giveplayerid ][ Vip ] = level;
format( string, sizeof( string ), "Administrator %s has set your V.I.P level to %d!", PlayerName( playerid ), level );
SendClientMessage( giveplayerid, ABLUE, string );
return 1;
}
CMD:vipgoto( playerid , params[ ] )
{
new PID, string[ 128 ];
new Float:x, Float:y, Float:z;
VipCheck( playerid, 2 );
if ( sscanf( params, "u", PID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vipgoto [playerid]" );
if ( IsPlayerConnected( PID ) )
return SendClientMessage( playerid, RED, "Player not connected or is yourself!" );
GetPlayerPos( PID , x , y , z );
SetPlayerInterior( playerid , GetPlayerInterior( PID ) );
SetPlayerVirtualWorld( playerid , GetPlayerVirtualWorld( PID ) );
if ( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER )
{
SetVehiclePos( GetPlayerVehicleID( playerid ) , x+3 , y , z );
LinkVehicleToInterior( GetPlayerVehicleID( playerid ), GetPlayerInterior( PID ) );
SetVehicleVirtualWorld( GetPlayerVehicleID( playerid ), GetPlayerVirtualWorld( PID ) );
format( string , sizeof( string ), "You have teleported to %s's location!" , PlayerName( PID ) );
SendClientMessage( playerid ,COLOR_VIP ,string );
format( string, sizeof( string ), "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName( playerid ), P_DATA[ playerid ][ Vip ] );
SendClientMessage( PID, COLOR_VIP, string );
} else {
SetPlayerPos( playerid , x+2 , y , z );
format( string, sizeof( string ), "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName( playerid ), P_DATA[ playerid ][ Vip ] );
SendClientMessage( PID, COLOR_VIP, string );
format( string , sizeof( string ), "You have teleported to %s's location!" , PlayerName( PID ) );
SendClientMessage( playerid ,COLOR_VIP ,string );
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgoto" );
#endif
return 1;
}
CMD:spawnme( playerid, params[ ] )
{
VipCheck( playerid, 1 );
SpawnPlayer( playerid );
SendClientMessage( playerid, COLOR_VIP, "You have been respawmed!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/spawnme" );
#endif
return 1;
}
CMD:vips( playerid, params[ ] )
{
new
V,
lsString[ 1024 ]
;
foreach(Player, i ) if ( P_DATA[ i ][ Vip ] > 0 )
{
format( lsString, sizeof lsString, "{FF5500}%s\n{FF5500}V.I.P {00FF00}%s {FF5500}- Level {00FF00}%d", lsString, PlayerName( i ), P_DATA[ i ][ Vip ] );
V++;
}
if ( V == 0 )
format( lsString, sizeof lsString, "\n{E60000}No V.I.Ps online at the moment!" );
return ShowPlayerDialog( playerid, VIPS, DIALOG_STYLE_MSGBOX, "{00FF00}Online V.I.Ps:", lsString, "Quit", "" );
}
CMD:myweather( playerid, params[ ] )
{
new weather, string[ 128 ];
VipCheck( playerid, 1 );
if ( sscanf( params, "d", 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
return 1;
}
CMD:mytime( playerid, params[ ] )
{
new time, string[ 128 ];
VipCheck( playerid, 1 );
if ( sscanf( params, "d", 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
return 1;
}
CMD:myvw( playerid, params[ ] )
/*
With this function you will be ablle to change your virtual world!
Disponible Virtual Worlds are between 0 and 100 you can change to bigest or lowest on this line:
if ( ( vw < 0 ) || ( vw > 100 ) )
*/
{
new vw, string[ 128 ];
VipCheck( playerid, 1 );
if ( sscanf( params, "d", 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
return 1;
}
CMD:vasay( playerid, params[ ] )
{
new VipMessage[ 180 ];
VipCheck( playerid, 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", PlayerName( playerid ), P_DATA[ playerid ][ Vip ], VipMessage );
SendClientMessageToAll( COLOR_VIP, VipMessage );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vasay" );
#endif
return 1;
}
CMD:maxammo( playerid, params[ ] )
{
VipCheck( playerid, 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
return 1;
}
CMD:vweapons( playerid, params[ ] )
{
VipCheck( playerid, 2 );
GivePlayerWeapon( playerid ,28, 120) ; // Weapons: Micro SMG || Ammo: 120
GivePlayerWeapon( playerid, 31, 75 ); // Weapons: M4 || Gloante: 75
GivePlayerWeapon( playerid, 34, 15 ); // Weapons: Sniper Rifle || Ammo: 15
GivePlayerWeapon( playerid, 26, 100 ); // Weapons: Sawn-off Shotgun || Ammo: 100
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vweapons" );
#endif
return 1;
}
CMD:vspec( playerid, params[ ] )
{
new
PID,
string[ 128 ]
;
VipCheck( playerid, 1 );
if ( sscanf( params, "u", PID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vspec [playerid]" );
if ( !IsPlayerConnected( PID ) )
return SendClientMessage( playerid, RED, "ERROR: Player is not connected!" );
if ( GetPlayerState( PID ) == PLAYER_STATE_SPECTATING && P_DATA[ PID ][ SpecID ] != INVALID_PLAYER_ID )
return SendClientMessage( playerid, RED, "ERROR: Player spectating someone else!" );
if ( GetPlayerState( PID ) == 1 && GetPlayerState( PID ) == 2 && GetPlayerState( PID ) == 3 )
return SendClientMessage( playerid, RED, "ERROR: Player not spawned!" );
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)", PlayerName( PID ), PID );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vspec" );
#endif
return 1;
}
CMD:vspecoff( playerid, params[ ] )
{
VipCheck( playerid, 1 );
if ( P_DATA[ playerid ][ SpecType ] == ADMIN_SPEC_TYPE_NONE )
return SendClientMessage( playerid, RED, "ERROR: You are not spectating" );
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
return 1;
}
CMD:vsaveskin( playerid, params[ ] )
{
VipCheck( playerid, 2 );
new
SkinID,
string[ 128 ]
;
if ( sscanf( params, "i", SkinID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vsaveskin [Current SkinID]" );
if ( SkinID != GetPlayerSkin( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: Skin enterd don't match with your current skin!" );
if ( SkinID < 0 || SkinID > 300 )
return SendClientMessage( playerid, RED, "ERROR: Invalid skin! Only between 0 and 300 !" );
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
return 1;
}
CMD:dontuseskin( playerid, params[ ] )
{
VipCheck( playerid, 2 );
P_DATA[ playerid ][ p_FavSkin ] = -1;
SetPlayerSkin( playerid, random( 300 ) );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/dontuseskin" );
#endif
SendClientMessage( playerid, COLOR_VIP, "Your saved skin is never been used!" );
return 1;
}
CMD:mycolor( playerid, params[ ] )
{
VipCheck( playerid, 1 );
new Colour, colour[ 7 ];
if ( sscanf( params, "d", Colour ) )
return SendClientMessage( playerid, RED, "ERROR: {FFFF00}/mycolor [color]" ), SendClientMessage( playerid, RED, "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
return 1;
}
CMD:vcmds( playerid, params[ ] )
{
VipCheck( playerid, 1 );
new string[ 1024 ];
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", "" );
return 1;
}
CMD:vget( playerid, params[ ] )
{
new PID, string[ 256 ];
new Float:x, Float:y, Float:z;
VipCheck( playerid, 3 );
if ( sscanf( params, "u", PID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vget [playerid]" );
if ( !IsPlayerConnected( PID ) )
return SendClientMessage( playerid, RED, "Player is not connected or is yourself!" );
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", PlayerName( playerid ) );
SendClientMessage( PID, COLOR_VIP, string );
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName( 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", PlayerName( playerid ) );
SendClientMessage( PID, COLOR_VIP, string );
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName( PID ) );
SendClientMessage( playerid, COLOR_VIP, string );
}
return 1;
}
CMD:vkick( playerid, params[ ] )
{
new string[ 128 ];
VipCheck( playerid, 3 );
if ( sscanf( params, "us[ 128 ]", params[ 0 ], params[ 1 ] ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vkick [playerid] [reason]" );
if ( IsPlayerConnected( params[ 0 ] ) )
return SendClientMessage( playerid, RED, "Player is not connected !" );
if ( !strlen( params[ 1 ] ) )
{
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[no reason given]!",PlayerName( params[ 0 ] ), PlayerName( playerid ) );
SendClientMessageToAll( GREEN, string );
Kick( params[ 0 ] );
}
else
{
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[reason: {00FF00%s{FF5500}] ", PlayerName( params[ 0 ] ), PlayerName( playerid ), params[ 1 ] );
SendClientMessageToAll( GREEN, string );
Kick( params[ 0 ] );
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
return 1;
}
CMD:rw( playerid, params[ ] )
{
VipCheck( playerid, 3 );
GivePlayerWeapon( playerid, 4, 1); //Knife
GivePlayerWeapon( playerid, 28, 1000); // Micro - SMG
GivePlayerWeapon( playerid, 26, 100); // Sawn-off Shotgun
GivePlayerWeapon( playerid, 22, 500); // 9mm Pistol
//Source: https://sampwiki.blast.hk/wiki/Weapons !
SendClientMessage( playerid, COLOR_VIP, "You got an Runing Weapons package!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
return 1;
}
CMD:vipgod( playerid, params[ ] )
{
VipCheck( playerid, 2 );
switch( P_DATA[ playerid ][ God ] )
{
case 0:
{
P_DATA[ playerid ][ God ] = 1;
SendClientMessage( playerid, COLOR_VIP, "You have activated the V.I.P {00FF00}God Mode!" );
}
case 1: P_DATA[ playerid ][ God ] = 0;
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgod" );
#endif
return 1;
}
CMD:godcar( playerid, params[ ] )
{
VipCheck( playerid, 1 );
switch( P_DATA[ playerid ][ CarGod ] )
{
case 0:
{
P_DATA[ playerid ][ CarGod ] = 1;
SendClientMessage( playerid, COLOR_VIP, "You have activated the Vehicle {00FF00}God Mode!" );
}
case 1: P_DATA[ playerid ][ CarGod ] = 0;
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/GodCar" );
#endif
return 1;
}
CMD:ltc1( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc2( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc3( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc4( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc5( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc6( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc7( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc8( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc9( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc10( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc11( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc12( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc13( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:vcar( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ); // Car: Buffalo
PutPlayerInVehicle( playerid, carid, 0 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
//Source: https://sampwiki.blast.hk/wiki/Vehicles:All
return 1;
}
CMD:vannounce( playerid, params[ ] )
{
VipCheck( playerid, 1 );
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
return 1;
}
CMD:vspa( playerid, params[ ] )// V.I.Ps Special Actions( Holds + Jetpack! )
{
VipCheck( playerid, 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
return 1;
}
CMD:stophold( playerid, params[ ] )
{
VipCheck( playerid, 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!" );
}
}
return 1;
}
CMD:viphouse( playerid, params[ ] )
{
VipCheck( playerid, 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 )!" );
return 1;
}
Public: SendVipMessage( color, const string[ ] )
{
foreach(Player, i )
if ( P_DATA[ i ][ Vip ] >= 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( )
{
foreach(Player, i )
{
if ( P_DATA[ i ][ God ] == 1 )
SetPlayerHealth( i, 100000 );
if ( P_DATA[ i ][ CarGod ] == 1 && IsPlayerInAnyVehicle( i ) )
SetVehicleHealth( GetPlayerVehicleID( i ), 10000 );
}
}
//======================================================== [ Stocks ] ============================================================//
stock PlayerName( i )
{
new n[ 24 ];
GetPlayerName( i, n, 24 );
return n;
}
stock SpectatePlayer( playerid, PID )
{
new string[ 100 ], Float:health, Float:armour;
foreach(Player, 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 )
return StopSpectate( playerid );
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;
foreach(Player, i ) Connected++;
return Connected;
}
#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", PlayerName( 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;
}
//============================================================ [ EOF ] ===========================================================//
Pastebin.com Tools & Applications
iPhone/iPad Windows Firefox Chrome WebOS Android Mac Opera Click.to UNIX WinPhone
create new paste | api | trends | users | faq | tools | privacy | cookies policy | contact | stats | go pro
Follow us: pastebin on ******** | pastebin on ******* | pastebin in the news
Pastebin v3.1 rendered in: 0.009 seconds
#if defined VIP
xxSPEEDYxx's V.I.P System - NEW*
3 Levels
v2.0
COMMANDS - [v1.0]:
V.I.P Level 1 Commands: V.I.P Level 2 Commands: V.I.P Level 3 Commands:
/mytime /vsaveskin /vkick
/myweather /dontuseskin /vget
/myvw /vweapons /rw
/mycolor /vipgoto /maxammo
/vspec /vasay + V.I.P level 1&2 CMDS
/vspecoff + V.I.P level 1 CMDS
/spawnme
/vcmds
COMMANDS - [v2.0]:
V.I.P Level 1 Commands: V.I.P Level 2 Commands: V.I.P Level 3 Commands:
/ltc[1 - 13] /vipgod /vannounce
/viphouse
/godcar
/vcar
/vspa( V.I.P Special Actions! )
/stophold!
V.I.P over 35 command! OMG!
#endif
//============ [ Includes ] ============//
#include < a_samp > // Main include!
#include < zcmd > // Find it on: https://sampforum.blast.hk/showthread.php?tid=91354&highlight=zcmd
#include < sscanf2 > // Find it on: https://sampforum.blast.hk/showthread.php?tid=120356
#include < foreach >
//======================================//
#define VIPS_SEND_COMMAND //Comment this if you don't want to show messages whena VIP use a command.
#define SHOW_LEVEL_DIALOG //Comment this if you don't want to show the dialog with your VIP level on connect.
//============ [ Colours ] ============//
#define RED 0xE60000AA
#define YELLOW 0xFFFF00AA
#define GREEN 0x00FF00AA
#define ABLUE 0x2641FEAA
#define COLOR_VIP 0xFF5500AA //aka Orange:P
//====================================//
//========== [ Dialogs ] ==========//
/*
I put the dialogids bigest to not confuse with other dialogs in your FSs/GM
*/
enum
{
MYLVL,
VIPS,
VIPCMDS,
ONCONN,
VSPA
};
//====================================//
//============= [ Level Check ] ======//
stock
bool:False = false
;
#define VipCheck(%0,%1)\
do{\
if(P_DATA[(%0)][Vip] < (%1)){\
new Str[128];\
format(Str, 128, "~r~~h~ERROR!~n~~w~You need to be V.I.P level ~y~~h~%d ~w~to use this command!", (%1));\
return GameTextForPlayer((%0), Str, 3000, 4);\
}\
}\
while(False)
//============= [ SPEC ] =============//
#define ADMIN_SPEC_TYPE_NONE (0)
#define ADMIN_SPEC_TYPE_PLAYER (1)
#define ADMIN_SPEC_TYPE_VEHICLE (2)
/*
Do not touch this!
*/
//=========== [ Shortcuts ] ==========//
#define Public:%0(%1) \
forward%0(%1); public%0(%1)
//====================================//
//========== [ News&Enums ] ==========//
enum pInfo
{
Vip,
SpecID,
SpecType,
God,
CarGod,
p_FavSkin
};
new P_DATA[ MAX_PLAYERS ][ pInfo ];
new DB:Database;
new Float:Position[ MAX_PLAYERS ][ 4 ];
//====================================//
//==================== [ CallBacks ] =========================================//
public OnFilterScriptInit( )
{
Database = db_open( "Vips.db" ); //Name of the database! You can change it!
db_query( Database, "CREATE TABLE IF NOT EXISTS `Vips` (`Key` INTEGER PRIMARY KEY AUTOINCREMENT, `Nume` TEXT, `VipLevel` NUMERIC, `VSkin` NUMERIC)" );
return 1;
}
public OnFilterScriptExit( )
return db_close( Database );
public OnPlayerConnect( playerid )
{
new
Query[ 256 ],
string[ 128 ],
DBResult:Result,
Field[ 30 ]
;
format( Query, sizeof( Query ), "SELECT * FROM `Vips` WHERE `Nume` = '%s'", PlayerName( playerid ) );
Result = db_query( Database, Query );
if ( Result )
{
if ( db_num_rows( Result ) )
{
db_get_field_assoc( Result, "VipLevel", Field, 4 ); P_DATA[ playerid ][ Vip ] = strval( Field );
db_get_field_assoc( Result, "VSkin", Field, 4 ); P_DATA[ playerid ][ p_FavSkin ] = strval( Field );
#if defined SHOW_LEVEL_DIALOG
format( string, sizeof( string ), "\t{FF5500}Your V.I.P Level:\n\n{FF5500}You have V.I.P level {00FF00}%d\n\n{E60000}Congratulations!", P_DATA[ playerid ][ Vip ] );
ShowPlayerDialog( playerid, ONCONN, DIALOG_STYLE_MSGBOX, "{00FF00}V.I.P", string, "Quit", "" );
#endif
}
else
{
P_DATA[ playerid ][ Vip ] = 0;
P_DATA[ playerid ][ p_FavSkin ] = -1;
format( Query, sizeof Query, "INSERT INTO `Vips` VALUES(NULL,'%s','0','-1')", PlayerName( playerid ) );
db_query( Database, Query );
#if defined SHOW_LEVEL_DIALOG
ShowPlayerDialog( playerid, ONCONN+1, DIALOG_STYLE_MSGBOX, "{00FF00}V.I.P", "{E60000}This username have V.I.P level 0", "Quit", "" );
#endif
}
db_free_result( Result );
}
return 1;
}
public OnPlayerDisconnect( playerid )
{
new
sz_Query[ 128 ]
;
format( sz_Query, sizeof sz_Query, "UPDATE `Vips` SET `VipLevel` = '%d',`VSkin` = '%d' WHERE `Nume` = '%s'", P_DATA[ playerid ][ Vip ], P_DATA[ playerid ][ p_FavSkin ], PlayerName( playerid ) );
db_query( Database, sz_Query );
foreach(Player, i )
if ( GetPlayerState( i ) == PLAYER_STATE_SPECTATING && P_DATA[ i ][ SpecID ] == playerid )
AdvanceSpectate( i );
return 1;
}
public OnPlayerDeath( playerid, killerid, reason )
{
foreach(Player, 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 OnPlayerSpawn( playerid )
{
if ( P_DATA[ playerid ][ p_FavSkin ] != -1 )
SetPlayerSkin( playerid, P_DATA[ playerid ][ p_FavSkin ] );
return 1;
}
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 )
{
foreach(Player, 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 OnPlayerText( playerid, text[ ] )
{
new textstr[ 128 ];
if ( text[ 0 ] == '!' && P_DATA[ playerid ][ Vip ] >= 1 )
{
format( textstr, sizeof( textstr ),"V.I.P Chat: {00FF00}%s{FF5500}: %s", PlayerName( playerid ), text[ 1 ] );
SendVipMessage( COLOR_VIP, textstr );
return 0;
}
return 1;
}
public OnPlayerExitVehicle( playerid, vehicleid )
{
foreach(Player, 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[ ] )
{
switch( dialogid )
{
case VSPA:
{
if ( !response )
return 1;
switch( listitem )
{
case 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!" );
}
case 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!" );
}
case 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!" );
}
case 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!" );
}
case 4:
{
SetPlayerSpecialAction( playerid, 2 ); //Jetpack!
SendClientMessage( playerid, COLOR_VIP, "Jetpack Spawmed!" );
}
}
}
}
return 1;
}
//============================================================================//
//================ [ Commands v1.0 ] =========================================//
CMD:setvip( playerid, params[ ] )
{
if ( !IsPlayerAdmin( playerid ) )
return SendClientMessage( playerid, RED, "Only RCON Administrator can use this command!" );
new
string[ 128 ],
giveplayerid,
level
;
if ( sscanf( params, "ud", giveplayerid, level ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/setvip [playerid] [level]" );
if ( giveplayerid == INVALID_PLAYER_ID )
return SendClientMessage( playerid, RED, "Player Is Not Connected!" );
if ( level > 3 || level < 0 )
return SendClientMessage( playerid, RED, "ERROR: Invalid level!" );
P_DATA[ giveplayerid ][ Vip ] = level;
format( string, sizeof( string ), "Administrator %s has set your V.I.P level to %d!", PlayerName( playerid ), level );
SendClientMessage( giveplayerid, ABLUE, string );
return 1;
}
CMD:vipgoto( playerid , params[ ] )
{
new PID, string[ 128 ];
new Float:x, Float:y, Float:z;
VipCheck( playerid, 2 );
if ( sscanf( params, "u", PID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vipgoto [playerid]" );
if ( IsPlayerConnected( PID ) )
return SendClientMessage( playerid, RED, "Player not connected or is yourself!" );
GetPlayerPos( PID , x , y , z );
SetPlayerInterior( playerid , GetPlayerInterior( PID ) );
SetPlayerVirtualWorld( playerid , GetPlayerVirtualWorld( PID ) );
if ( GetPlayerState( playerid ) == PLAYER_STATE_DRIVER )
{
SetVehiclePos( GetPlayerVehicleID( playerid ) , x+3 , y , z );
LinkVehicleToInterior( GetPlayerVehicleID( playerid ), GetPlayerInterior( PID ) );
SetVehicleVirtualWorld( GetPlayerVehicleID( playerid ), GetPlayerVirtualWorld( PID ) );
format( string , sizeof( string ), "You have teleported to %s's location!" , PlayerName( PID ) );
SendClientMessage( playerid ,COLOR_VIP ,string );
format( string, sizeof( string ), "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName( playerid ), P_DATA[ playerid ][ Vip ] );
SendClientMessage( PID, COLOR_VIP, string );
} else {
SetPlayerPos( playerid , x+2 , y , z );
format( string, sizeof( string ), "V.I.P {00FF00}%s(%d) {FF5500}has teleported to your location!", PlayerName( playerid ), P_DATA[ playerid ][ Vip ] );
SendClientMessage( PID, COLOR_VIP, string );
format( string , sizeof( string ), "You have teleported to %s's location!" , PlayerName( PID ) );
SendClientMessage( playerid ,COLOR_VIP ,string );
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgoto" );
#endif
return 1;
}
CMD:spawnme( playerid, params[ ] )
{
VipCheck( playerid, 1 );
SpawnPlayer( playerid );
SendClientMessage( playerid, COLOR_VIP, "You have been respawmed!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/spawnme" );
#endif
return 1;
}
CMD:vips( playerid, params[ ] )
{
new
V,
lsString[ 1024 ]
;
foreach(Player, i ) if ( P_DATA[ i ][ Vip ] > 0 )
{
format( lsString, sizeof lsString, "{FF5500}%s\n{FF5500}V.I.P {00FF00}%s {FF5500}- Level {00FF00}%d", lsString, PlayerName( i ), P_DATA[ i ][ Vip ] );
V++;
}
if ( V == 0 )
format( lsString, sizeof lsString, "\n{E60000}No V.I.Ps online at the moment!" );
return ShowPlayerDialog( playerid, VIPS, DIALOG_STYLE_MSGBOX, "{00FF00}Online V.I.Ps:", lsString, "Quit", "" );
}
CMD:myweather( playerid, params[ ] )
{
new weather, string[ 128 ];
VipCheck( playerid, 1 );
if ( sscanf( params, "d", 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
return 1;
}
CMD:mytime( playerid, params[ ] )
{
new time, string[ 128 ];
VipCheck( playerid, 1 );
if ( sscanf( params, "d", 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
return 1;
}
CMD:myvw( playerid, params[ ] )
/*
With this function you will be ablle to change your virtual world!
Disponible Virtual Worlds are between 0 and 100 you can change to bigest or lowest on this line:
if ( ( vw < 0 ) || ( vw > 100 ) )
*/
{
new vw, string[ 128 ];
VipCheck( playerid, 1 );
if ( sscanf( params, "d", 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
return 1;
}
CMD:vasay( playerid, params[ ] )
{
new VipMessage[ 180 ];
VipCheck( playerid, 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", PlayerName( playerid ), P_DATA[ playerid ][ Vip ], VipMessage );
SendClientMessageToAll( COLOR_VIP, VipMessage );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vasay" );
#endif
return 1;
}
CMD:maxammo( playerid, params[ ] )
{
VipCheck( playerid, 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
return 1;
}
CMD:vweapons( playerid, params[ ] )
{
VipCheck( playerid, 2 );
GivePlayerWeapon( playerid ,28, 120) ; // Weapons: Micro SMG || Ammo: 120
GivePlayerWeapon( playerid, 31, 75 ); // Weapons: M4 || Gloante: 75
GivePlayerWeapon( playerid, 34, 15 ); // Weapons: Sniper Rifle || Ammo: 15
GivePlayerWeapon( playerid, 26, 100 ); // Weapons: Sawn-off Shotgun || Ammo: 100
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vweapons" );
#endif
return 1;
}
CMD:vspec( playerid, params[ ] )
{
new
PID,
string[ 128 ]
;
VipCheck( playerid, 1 );
if ( sscanf( params, "u", PID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vspec [playerid]" );
if ( !IsPlayerConnected( PID ) )
return SendClientMessage( playerid, RED, "ERROR: Player is not connected!" );
if ( GetPlayerState( PID ) == PLAYER_STATE_SPECTATING && P_DATA[ PID ][ SpecID ] != INVALID_PLAYER_ID )
return SendClientMessage( playerid, RED, "ERROR: Player spectating someone else!" );
if ( GetPlayerState( PID ) == 1 && GetPlayerState( PID ) == 2 && GetPlayerState( PID ) == 3 )
return SendClientMessage( playerid, RED, "ERROR: Player not spawned!" );
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)", PlayerName( PID ), PID );
SendClientMessage( playerid, COLOR_VIP, string );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vspec" );
#endif
return 1;
}
CMD:vspecoff( playerid, params[ ] )
{
VipCheck( playerid, 1 );
if ( P_DATA[ playerid ][ SpecType ] == ADMIN_SPEC_TYPE_NONE )
return SendClientMessage( playerid, RED, "ERROR: You are not spectating" );
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
return 1;
}
CMD:vsaveskin( playerid, params[ ] )
{
VipCheck( playerid, 2 );
new
SkinID,
string[ 128 ]
;
if ( sscanf( params, "i", SkinID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vsaveskin [Current SkinID]" );
if ( SkinID != GetPlayerSkin( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: Skin enterd don't match with your current skin!" );
if ( SkinID < 0 || SkinID > 300 )
return SendClientMessage( playerid, RED, "ERROR: Invalid skin! Only between 0 and 300 !" );
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
return 1;
}
CMD:dontuseskin( playerid, params[ ] )
{
VipCheck( playerid, 2 );
P_DATA[ playerid ][ p_FavSkin ] = -1;
SetPlayerSkin( playerid, random( 300 ) );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/dontuseskin" );
#endif
SendClientMessage( playerid, COLOR_VIP, "Your saved skin is never been used!" );
return 1;
}
CMD:mycolor( playerid, params[ ] )
{
VipCheck( playerid, 1 );
new Colour, colour[ 7 ];
if ( sscanf( params, "d", Colour ) )
return SendClientMessage( playerid, RED, "ERROR: {FFFF00}/mycolor [color]" ), SendClientMessage( playerid, RED, "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
return 1;
}
CMD:vcmds( playerid, params[ ] )
{
VipCheck( playerid, 1 );
new string[ 1024 ];
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", "" );
return 1;
}
CMD:vget( playerid, params[ ] )
{
new PID, string[ 256 ];
new Float:x, Float:y, Float:z;
VipCheck( playerid, 3 );
if ( sscanf( params, "u", PID ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vget [playerid]" );
if ( !IsPlayerConnected( PID ) )
return SendClientMessage( playerid, RED, "Player is not connected or is yourself!" );
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", PlayerName( playerid ) );
SendClientMessage( PID, COLOR_VIP, string );
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName( 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", PlayerName( playerid ) );
SendClientMessage( PID, COLOR_VIP, string );
format( string, sizeof( string ),"You have teleported {00FF00}%s {FF5500}to your location", PlayerName( PID ) );
SendClientMessage( playerid, COLOR_VIP, string );
}
return 1;
}
CMD:vkick( playerid, params[ ] )
{
new string[ 128 ];
VipCheck( playerid, 3 );
if ( sscanf( params, "us[ 128 ]", params[ 0 ], params[ 1 ] ) )
return SendClientMessage( playerid, RED, "USAGE: {FFFF00}/vkick [playerid] [reason]" );
if ( IsPlayerConnected( params[ 0 ] ) )
return SendClientMessage( playerid, RED, "Player is not connected !" );
if ( !strlen( params[ 1 ] ) )
{
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[no reason given]!",PlayerName( params[ 0 ] ), PlayerName( playerid ) );
SendClientMessageToAll( GREEN, string );
Kick( params[ 0 ] );
}
else
{
format( string, sizeof( string ), "%s {FF5500}has been kicked by V.I.P {00FF00}%s {FF5500}[reason: {00FF00%s{FF5500}] ", PlayerName( params[ 0 ] ), PlayerName( playerid ), params[ 1 ] );
SendClientMessageToAll( GREEN, string );
Kick( params[ 0 ] );
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
return 1;
}
CMD:rw( playerid, params[ ] )
{
VipCheck( playerid, 3 );
GivePlayerWeapon( playerid, 4, 1); //Knife
GivePlayerWeapon( playerid, 28, 1000); // Micro - SMG
GivePlayerWeapon( playerid, 26, 100); // Sawn-off Shotgun
GivePlayerWeapon( playerid, 22, 500); // 9mm Pistol
//Source: https://sampwiki.blast.hk/wiki/Weapons !
SendClientMessage( playerid, COLOR_VIP, "You got an Runing Weapons package!" );
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vkick" );
#endif
return 1;
}
CMD:vipgod( playerid, params[ ] )
{
VipCheck( playerid, 2 );
switch( P_DATA[ playerid ][ God ] )
{
case 0:
{
P_DATA[ playerid ][ God ] = 1;
SendClientMessage( playerid, COLOR_VIP, "You have activated the V.I.P {00FF00}God Mode!" );
}
case 1: P_DATA[ playerid ][ God ] = 0;
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/vipgod" );
#endif
return 1;
}
CMD:godcar( playerid, params[ ] )
{
VipCheck( playerid, 1 );
switch( P_DATA[ playerid ][ CarGod ] )
{
case 0:
{
P_DATA[ playerid ][ CarGod ] = 1;
SendClientMessage( playerid, COLOR_VIP, "You have activated the Vehicle {00FF00}God Mode!" );
}
case 1: P_DATA[ playerid ][ CarGod ] = 0;
}
#if defined VIPS_SEND_COMMAND
SendVipsCommand( playerid, "/GodCar" );
#endif
return 1;
}
CMD:ltc1( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc2( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc3( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, VehiclulRt;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc4( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc5( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc6( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc7( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc8( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc9( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc10( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc11( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc12( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:ltc13( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ) );
return 1;
}
CMD:vcar( playerid, params[ ] )
{
new Float:x, Float:y, Float:z, Float:Angle, carid;
VipCheck( playerid, 1 );
if ( IsPlayerInAnyVehicle( playerid ) )
return SendClientMessage( playerid, RED, "ERROR: You already have a vehicle" );
#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 ); // Car: Buffalo
PutPlayerInVehicle( playerid, carid, 0 );
SetVehicleVirtualWorld( carid, GetPlayerVirtualWorld( playerid ) );
LinkVehicleToInterior( carid, GetPlayerInterior( playerid ) );
//Source: https://sampwiki.blast.hk/wiki/Vehicles:All
return 1;
}
CMD:vannounce( playerid, params[ ] )
{
VipCheck( playerid, 1 );
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
return 1;
}
CMD:vspa( playerid, params[ ] )// V.I.Ps Special Actions( Holds + Jetpack! )
{
VipCheck( playerid, 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
return 1;
}
CMD:stophold( playerid, params[ ] )
{
VipCheck( playerid, 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!" );
}
}
return 1;
}
CMD:viphouse( playerid, params[ ] )
{
VipCheck( playerid, 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 )!" );
return 1;
}
Public: SendVipMessage( color, const string[ ] )
{
foreach(Player, i )
if ( P_DATA[ i ][ Vip ] >= 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( )
{
foreach(Player, i )
{
if ( P_DATA[ i ][ God ] == 1 )
SetPlayerHealth( i, 100000 );
if ( P_DATA[ i ][ CarGod ] == 1 && IsPlayerInAnyVehicle( i ) )
SetVehicleHealth( GetPlayerVehicleID( i ), 10000 );
}
}
//======================================================== [ Stocks ] ============================================================//
stock PlayerName( i )
{
new n[ 24 ];
GetPlayerName( i, n, 24 );
return n;
}
stock SpectatePlayer( playerid, PID )
{
new string[ 100 ], Float:health, Float:armour;
foreach(Player, 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 )
return StopSpectate( playerid );
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;
foreach(Player, i ) Connected++;
return Connected;
}
#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", PlayerName( 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;
}
//============================================================ [ EOF ] ===========================================================//