View difference between Paste ID: DHPxRmd5 and 0mNh2uCR
SHOW: | | - or go back to the newest paste.
1
// Completely redesigned from scratch. //
2
// @ Project Developer : Alexis1999 //
3
// Vehicle Control System //
4
5
#include <a_samp>
6
7
#if defined _samp_include
8
	#endinput
9
#endif
10
11
#define _samp_include
12
13
new VCNames[212][] =
14
{
15
        {"Landstalker"},
16
        {"Bravura"},
17
        {"Buffalo"},
18
        {"Linerunner"},
19
        {"Perrenial"},
20
        {"Sentinel"},
21
        {"Dumper"},
22
        {"Firetruck"},
23
        {"Trashmaster"},
24
        {"Stretch"},
25
        {"Manana"},
26
        {"Infernus"},
27
        {"Voodoo"},
28
        {"Pony"},
29
        {"Mule"},
30
        {"Cheetah"},
31
        {"Ambulance"},
32
        {"Leviathan"},
33
        {"Moonbeam"},
34
        {"Esperanto"},
35
        {"Taxi"},
36
        {"Washington"},
37
        {"Bobcat"},
38
        {"Mr Whoopee"},
39
        {"BF Injection"},
40
        {"Hunter"},
41
        {"Premier"},
42
        {"Enforcer"},
43
        {"Securicar"},
44
        {"Banshee"},
45
        {"Predator"},
46
        {"Bus"},
47
        {"Rhino"},
48
        {"Barracks"},
49
        {"Hotknife"},
50
        {"Trailer 1"},
51
        {"Previon"},
52
        {"Coach"},
53
        {"Cabbie"},
54
        {"Stallion"},
55
        {"Rumpo"},
56
        {"RC Bandit"},
57
        {"Romero"},
58
        {"Packer"},
59
        {"Monster"},
60
        {"Admiral"},
61
        {"Squalo"},
62
        {"Seasparrow"},
63
        {"Pizzaboy"},
64
        {"Tram"},
65
        {"Trailer 2"},
66
        {"Turismo"},
67
        {"Speeder"},
68
        {"Reefer"},
69
        {"Tropic"},
70
        {"Flatbed"},
71
        {"Yankee"},
72
        {"Caddy"},
73
        {"Solair"},
74
        {"Berkley's RC Van"},
75
        {"Skimmer"},
76
        {"PCJ-600"},
77
        {"Faggio"},
78
        {"Freeway"},
79
        {"RC Baron"},
80
        {"RC Raider"},
81
        {"Glendale"},
82
        {"Oceanic"},
83
        {"Sanchez"},
84
        {"Sparrow"},
85
        {"Patriot"},
86
        {"Quad"},
87
        {"Coastguard"},
88
        {"Dinghy"},
89
        {"Hermes"},
90
        {"Sabre"},
91
        {"Rustler"},
92
        {"ZR-350"},
93
        {"Walton"},
94
        {"Regina"},
95
        {"Comet"},
96
        {"BMX"},
97
        {"Burrito"},
98
        {"Camper"},
99
        {"Marquis"},
100
        {"Baggage"},
101
        {"Dozer"},
102
        {"Maverick"},
103
        {"News Chopper"},
104
        {"Rancher"},
105
        {"FBI Rancher"},
106
        {"Virgo"},
107
        {"Greenwood"},
108
        {"Jetmax"},
109
        {"Hotring"},
110
        {"Sandking"},
111
        {"Blista Compact"},
112
        {"Police Maverick"},
113
        {"Boxville"},
114
        {"Benson"},
115
        {"Mesa"},
116
        {"RC Goblin"},
117
        {"Hotring Racer A"},
118
        {"Hotring Racer B"},
119
        {"Bloodring Banger"},
120
        {"Rancher"},
121
        {"Super GT"},
122
        {"Elegant"},
123
        {"Journey"},
124
        {"Bike"},
125
        {"Mountain Bike"},
126
        {"Beagle"},
127
        {"Cropdust"},
128
        {"Stunt"},
129
        {"Tanker"},
130
        {"Roadtrain"},
131
        {"Nebula"},
132
        {"Majestic"},
133
        {"Buccaneer"},
134
        {"Shamal"},
135
        {"Hydra"},
136
        {"FCR-900"},
137
        {"NRG-500"},
138
        {"HPV1000"},
139
        {"Cement Truck"},
140
        {"Tow Truck"},
141
        {"Fortune"},
142
        {"Cadrona"},
143
        {"FBI Truck"},
144
        {"Willard"},
145
        {"Forklift"},
146
        {"Tractor"},
147
        {"Combine"},
148
        {"Feltzer"},
149
        {"Remington"},
150
        {"Slamvan"},
151
        {"Blade"},
152
        {"Freight"},
153
        {"Streak"},
154
        {"Vortex"},
155
        {"Vincent"},
156
        {"Bullet"},
157
        {"Clover"},
158
        {"Sadler"},
159
        {"Firetruck LA"},
160
        {"Hustler"},
161
        {"Intruder"},
162
        {"Primo"},
163
        {"Cargobob"},
164
        {"Tampa"},
165
        {"Sunrise"},
166
        {"Merit"},
167
        {"Utility"},
168
        {"Nevada"},
169
        {"Yosemite"},
170
        {"Windsor"},
171
        {"Monster A"},
172
        {"Monster B"},
173
        {"Uranus"},
174
        {"Jester"},
175
        {"Sultan"},
176
        {"Stratum"},
177
        {"Elegy"},
178
        {"Raindance"},
179
        {"RC Tiger"},
180
        {"Flash"},
181
        {"Tahoma"},
182
        {"Savanna"},
183
        {"Bandito"},
184
        {"Freight Flat"},
185
        {"Streak Carriage"},
186
        {"Kart"},
187
        {"Mower"},
188
        {"Duneride"},
189
        {"Sweeper"},
190
        {"Broadway"},
191
        {"Tornado"},
192
        {"AT-400"},
193
        {"DFT-30"},
194
        {"Huntley"},
195
        {"Stafford"},
196
        {"BF-400"},
197
        {"Newsvan"},
198
        {"Tug"},
199
        {"Trailer 3"},
200
        {"Emperor"},
201
        {"Wayfarer"},
202
        {"Euros"},
203
        {"Hotdog"},
204
        {"Club"},
205
        {"Freight Carriage"},
206
        {"Trailer 3"},
207
        {"Andromada"},
208
        {"Dodo"},
209
        {"RC Cam"},
210
        {"Launch"},
211
        {"Police Car (LSPD)"},
212
        {"Police Car (SFPD)"},
213
        {"Police Car (LVPD)"},
214
        {"Police Ranger"},
215
        {"Picador"},
216
        {"S.W.A.T. Van"},
217
        {"Alpha"},
218
        {"Phoenix"},
219
        {"Glendale"},
220
        {"Sadler"},
221
        {"Luggage Trailer A"},
222
        {"Luggage Trailer B"},
223
        {"Stair Trailer"},
224
        {"Boxville"},
225
        {"Farm Plow"},
226
        {"Utility Trailer"}
227
};
228
229
stock VehicleControl(playerid, String[]) {
230
	if(!strcmp(String, "ActivateEngine")) {
231
		new Vehicle = GetPlayerVehicleID(playerid);
232
		if(IsPlayerInVehicle(playerid, Vehicle)) {		
233
		    new engine, lights, alarm, doors, bonnet, boot, objective;
234
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
235
			SetVehicleParamsEx(Vehicle, 1, lights, alarm, doors, bonnet, boot, objective);
236
		}
237
	} 
238
239
	else if(!strcmp(String, "DeactivateEngine")) {
240
		new Vehicle = GetPlayerVehicleID(playerid);
241
		if(IsPlayerInVehicle(playerid, Vehicle)) {
242
			new engine, lights, alarm, doors, bonnet, boot, objective;
243
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
244
			SetVehicleParamsEx(Vehicle, 0, lights, alarm, doors, bonnet, boot, objective);
245
		}
246
	} 
247
	
248
	else if(!strcmp(String, "ActivateLights")) {
249
		new Vehicle = GetPlayerVehicleID(playerid);
250
		if(IsPlayerInVehicle(playerid, Vehicle)) {
251
		    new engine2, lights2, alarm2, doors2, bonnet2, boot2, objective2;
252
			GetVehicleParamsEx(Vehicle, engine2, lights2, alarm2, doors2, bonnet2, boot2, objective2);	
253
			SetVehicleParamsEx(Vehicle, engine2, 1, alarm2, doors2, bonnet2, boot2, objective2);
254
		}
255
	} 
256
	
257
	else if(!strcmp(String, "DeactivateLights")) {
258
		new Vehicle = GetPlayerVehicleID(playerid);
259
		if(IsPlayerInVehicle(playerid, Vehicle)) {
260
		    new engine2, lights2, alarm2, doors2, bonnet2, boot2, objective2;	
261
			GetVehicleParamsEx(Vehicle, engine2, lights2, alarm2, doors2, bonnet2, boot2, objective2);
262
			SetVehicleParamsEx(Vehicle, engine2, 0, alarm2, doors2, bonnet2, boot2, objective2);
263
			SendClientMessage(playerid, -1, "test24");
264
		}
265
	}
266
	
267
	else if(!strcmp(String, "EnableAlarm")) {
268
		new Vehicle = GetPlayerVehicleID(playerid);
269
		if(IsPlayerInVehicle(playerid, Vehicle)) {
270
			new engine, lights, alarm, doors, bonnet, boot, objective;
271
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
272
			SetVehicleParamsEx(Vehicle, engine, lights, 1, doors, bonnet, boot, objective);
273
		}
274
	} 
275
276
	else if(!strcmp(String, "DisableAlarm")) {
277
		new Vehicle = GetPlayerVehicleID(playerid);
278
		if(IsPlayerInVehicle(playerid, Vehicle)) {
279
	        new engine, lights, alarm, doors, bonnet, boot, objective;
280
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
281
			SetVehicleParamsEx(Vehicle, engine, lights, 0, doors, bonnet, boot, objective);
282
		}
283
	} 
284
285
	else if(!strcmp(String, "UnlockVehicle")) {
286
		new Vehicle = GetPlayerVehicleID(playerid);
287
		if(IsPlayerInVehicle(playerid, Vehicle)) {
288
			new engine, lights, alarm, doors, bonnet, boot, objective;
289
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
290
			SetVehicleParamsEx(Vehicle, engine, lights, alarm, 0, bonnet, boot, objective);
291
		}
292
	} 
293
294
	else if(!strcmp(String, "LockVehicle")) {
295
		new Vehicle = GetPlayerVehicleID(playerid);
296
		if(IsPlayerInVehicle(playerid, Vehicle)) {
297
			new engine, lights, alarm, doors, bonnet, boot, objective;
298
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
299
			SetVehicleParamsEx(Vehicle, engine, lights, alarm, 1, bonnet, boot, objective);
300
		}
301
	}
302
	
303
	else if(!strcmp(String, "OpenBonnet")) {
304
		new Vehicle = GetPlayerVehicleID(playerid);
305
		if(IsPlayerInVehicle(playerid, Vehicle)) {
306
			new engine, lights, alarm, doors, bonnet, boot, objective;
307
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
308
			SetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, 1, boot, objective);
309
		}
310
	}
311
312
	else if(!strcmp(String, "CloseBonnet")) {
313
		new Vehicle = GetPlayerVehicleID(playerid);
314
		if(IsPlayerInVehicle(playerid, Vehicle)) {
315
			new engine, lights, alarm, doors, bonnet, boot, objective;
316
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
317
			SetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, 0, boot, objective);
318
		}
319
	}
320
	
321
	else if(!strcmp(String, "OpenBoot")) {
322
		new Vehicle = GetPlayerVehicleID(playerid);
323
		if(IsPlayerInVehicle(playerid, Vehicle)) {
324
			new engine, lights, alarm, doors, bonnet, boot, objective;
325
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
326
			SetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, 1, objective);
327
		}
328
	}
329
330
	else if(!strcmp(String, "CloseBoot")) {
331
		new Vehicle = GetPlayerVehicleID(playerid);
332
		if(IsPlayerInVehicle(playerid, Vehicle)) {
333
			new engine, lights, alarm, doors, bonnet, boot, objective;
334
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
335
			SetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, 0, objective);
336
		}
337
	}
338
	
339
	else if(!strcmp(String, "DeleteVehicle")) {
340
		new Vehicle = GetPlayerVehicleID(playerid);
341
		if(IsPlayerInVehicle(playerid, Vehicle)) {
342
			DestroyVehicle(Vehicle);
343
		}
344
	}
345
	
346
	else {
347
		SendClientMessage(playerid, -1, "{00FF99}Vehicle Control | {FFFFFF}Undefined Action Name ( VehicleControl ) KK?");
348
	}
349
}
350
351
stock VCBool(playerid, String[]) {
352
	if(!strcmp(String, "IsVehicleEngineOn")) {
353
		new Vehicle = GetPlayerVehicleID(playerid);
354
		if(IsPlayerInVehicle(playerid, Vehicle)) {
355
			new engine, lights, alarm, doors, bonnet, boot, objective;
356
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
357
			if(engine == 1) return 1;
358
			else return 0;
359
		}
360
	}
361
	
362
	else if(!strcmp(String, "IsVehicleLightsOn")) {
363
		new Vehicle = GetPlayerVehicleID(playerid);
364
		if(IsPlayerInVehicle(playerid, Vehicle)) {
365
			new engine, lights, alarm, doors, bonnet, boot, objective;
366
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
367
			if(lights == 1) return 1;
368
			else return 0;
369
		}
370
	}
371
	
372
	else if(!strcmp(String, "IsVehicleBonnetOpen")) {
373
		new Vehicle = GetPlayerVehicleID(playerid);
374
		if(IsPlayerInVehicle(playerid, Vehicle)) {
375
			new engine, lights, alarm, doors, bonnet, boot, objective;
376
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
377
			if(bonnet == 1) return 1;
378
			else return 0;
379
		}
380
	}
381
	
382
	else if(!strcmp(String, "IsVehicleBootOpen")) {
383
		new Vehicle = GetPlayerVehicleID(playerid);
384
		if(IsPlayerInVehicle(playerid, Vehicle)) {
385
			new engine, lights, alarm, doors, bonnet, boot, objective;
386
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
387
			if(boot == 1) return 1;
388
			else return 0;
389
		}
390
	}
391
	
392
	else if(!strcmp(String, "IsVehicleAlarmOn")) {
393
		new Vehicle = GetPlayerVehicleID(playerid);
394
		if(IsPlayerInVehicle(playerid, Vehicle)) {
395
			new engine, lights, alarm, doors, bonnet, boot, objective;
396
			GetVehicleParamsEx(Vehicle, engine, lights, alarm, doors, bonnet, boot, objective);
397
			if(alarm == 1) return 1;
398
			else return 0;
399
		}
400
	}
401
	
402
	else {
403
		SendClientMessage(playerid, -1, "{00FF99}Vehicle Control Issue {FFFFFF}| Undefined Bool ( VCBool )");
404
	}
405
	
406
	return 1;
407
}
408
409
stock VCCreate(playerid, VCName[], ColorA, ColorB) {
410
	new Vehicle = ConvertToVehicleID(VCName);
411
	new Float: Pos[3];
412
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
413
	
414
	if(Vehicle != 0 && Vehicle >= 400 && Vehicle <= 611) {
415
		CreateVehicle(Vehicle, Pos[0], Pos[1], Pos[2], 0, ColorA, ColorB, 0);
416
	} else return SendClientMessage(playerid, -1, "Undefined Vehicle ( VCCreate )");
417
	
418
	return 1;
419
}
420
421
stock VCCreateEx(playerid, VCFormat[], Vehicle[], ColorA, ColorB) {
422
	format(VCFormat, 128, "%s", Vehicle);
423
	new Float: Pos[3];
424
	GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
425
	if(!IsNumeric(Vehicle)) {
426
		new VehicleEx = ConvertToVehicleID(Vehicle);
427
		if(VehicleEx != 0 && VehicleEx >= 400 && VehicleEx <= 611) {
428
			CreateVehicle(VehicleEx, Pos[0], Pos[1], Pos[2], 0, ColorA, ColorB, 0);
429
		}
430
	} else {
431
		if(strval(Vehicle) != 0 && strval(Vehicle) >= 400 && strval(Vehicle) <= 611) { 
432
			CreateVehicle(strval(Vehicle), Pos[0], Pos[1], Pos[2], 0, ColorA, ColorB, 0);
433
		}
434
	}
435
	return 1;
436
}
437
438
stock IsNumeric( string[ ] ) { for (new i = 0, j = strlen( string); i < j; i++) if ( string[i] > '9' || string[i] < '0') return 0; return 1; }
439
440
stock ConvertToVehicleID(VCName[]) {
441
	for(new j = 0; j < 211; j++) {
442
		if(strfind(VCNames[j], VCName, true) != -1)
443
		return j + 400;
444
	}
445
	
446
	return 1;
447
}