· 8 years ago · Feb 17, 2018, 05:52 PM
1//============================================================================//
2// Jasper's Trucking script //
3// Copyright (c) Los angeles Roleplay. //
4// For bugs or support visit http://forum.sa-mp.com/showthread.php?p=3994074. //
5// © 2017 JASPER SCHELLEKENS/LARP - ALL RIGHTS RESERVED //
6//============================================================================//
7#define FILTERSCRIPT
8#include <a_samp>
9#include <zcmd>
10#include <sscanf>
11//==============================================================================
12#define MAX_INI_ENTRY_TEXT 80
13#define SERVER_NAME "Server Name" // Enter the name of your server here.
14#define DIALOG_NONE 7279 // Make sure this number does not interfere with other dialogs in your scripts/gamemode.
15#define MAX_LOGIN_ATTEMPTS 5 // How many tries for logging in does the player have before the server kicks the player?
16// WARNING: Only set MAX_LOGIN_ATTEMPTS higher then 5 if you have knowledge of editing the following function: CheckAttempt(playerid)
17//==============================================================================
18new DB:PIN_DATABASE;
19new PinCode[MAX_PLAYERS];
20new PinIn[MAX_PLAYERS];
21new InputChars[MAX_PLAYERS];
22new inputchar[MAX_PLAYERS];
23new InputAttempt[MAX_PLAYERS];
24new IsPlayerCreatingCode[MAX_PLAYERS];
25new IsPlayerInsertingCode[MAX_PLAYERS];
26new Pin1[MAX_PLAYERS];
27new Pin2[MAX_PLAYERS];
28new Pin3[MAX_PLAYERS];
29new Pin4[MAX_PLAYERS];
30new LoadPin1[MAX_PLAYERS];
31new LoadPin2[MAX_PLAYERS];
32new LoadPin3[MAX_PLAYERS];
33new LoadPin4[MAX_PLAYERS];
34new Text:Textdraw32[MAX_PLAYERS];
35new Text:Textdraw0;
36new Text:Textdraw1;
37new Text:Textdraw2;
38new Text:Textdraw3;
39new Text:Textdraw4;
40new Text:Textdraw5;
41new Text:Textdraw6;
42new Text:Textdraw7;
43new Text:Textdraw8;
44new Text:Textdraw9;
45new Text:Textdraw10;
46new Text:Textdraw11;
47new Text:Textdraw12;
48new Text:Textdraw13;
49new Text:Textdraw14;
50new Text:Textdraw15;
51new Text:Textdraw16;
52new Text:Textdraw17;
53new Text:Textdraw18;
54new Text:Textdraw19;
55new Text:Textdraw20;
56new Text:Textdraw21;
57new Text:Textdraw22;
58new Text:Textdraw23;
59new Text:Textdraw24;
60new Text:Textdraw25;
61new Text:Textdraw26;
62new Text:Textdraw27;
63new Text:Textdraw28;
64new Text:Textdraw29;
65new Text:Textdraw30;
66new Text:Textdraw31;
67new Text:Textdraw33;
68new Text:Textdraw34;
69new Text:Textdraw35;
70new Text:Textdraw36;
71new Text:Textdraw37;
72new Text:Textdraw38;
73new Text:Textdraw39;
74new Text:Textdraw40;
75new Text:Textdraw41;
76new Text:Textdraw42;
77new Text:Textdraw43;
78new Text:Textdraw44;
79new Text:Textdraw45;
80new Text:Textdraw46;
81new Text:Textdraw47;
82forward KickTimer(playerid);
83//==============================================================================
84public OnFilterScriptInit()
85{
86 printf("\n--------------------------------------");
87 printf(" Pincode Security V1.0 Filterscript by Jasper Schellekens");
88 printf("--------------------------------------\n");
89 PIN_DATABASE = db_open("pspincodes.db");
90 db_query(PIN_DATABASE, "CREATE TABLE IF NOT EXISTS `PINCODES` (`PlayerName`, `PinActive` INTEGER, `Pin1` INTEGER, `Pin2` INTEGER, `Pin3` INTEGER, `Pin4` INTEGER, `TempPin1` INTEGER, `TempPin2` INTEGER, `TempPin3` INTEGER, `TempPin4` INTEGER)");
91
92 Textdraw0 = TextDrawCreate(431.599975, 113.126663, "usebox");
93 TextDrawLetterSize(Textdraw0, 0.000000, 31.375186);
94 TextDrawTextSize(Textdraw0, 211.199996, 0.000000);
95 TextDrawAlignment(Textdraw0, 1);
96 TextDrawColor(Textdraw0, 0);
97 TextDrawUseBox(Textdraw0, true);
98 TextDrawBoxColor(Textdraw0, 102);
99 TextDrawSetShadow(Textdraw0, 0);
100 TextDrawSetOutline(Textdraw0, 0);
101 TextDrawFont(Textdraw0, 0);
102
103 Textdraw1 = TextDrawCreate(431.599975, 112.753334, "usebox");
104 TextDrawLetterSize(Textdraw1, 0.000000, 1.923332);
105 TextDrawTextSize(Textdraw1, 210.800003, 0.000000);
106 TextDrawAlignment(Textdraw1, 1);
107 TextDrawColor(Textdraw1, 0);
108 TextDrawUseBox(Textdraw1, true);
109 TextDrawBoxColor(Textdraw1, 102);
110 TextDrawSetShadow(Textdraw1, 0);
111 TextDrawSetOutline(Textdraw1, 0);
112 TextDrawFont(Textdraw1, 0);
113
114 Textdraw2 = TextDrawCreate(217.200012, 116.106674, "Create a security code");
115 TextDrawLetterSize(Textdraw2, 0.300000, 1.000000);
116 TextDrawAlignment(Textdraw2, 1);
117 TextDrawColor(Textdraw2, -1);
118 TextDrawSetShadow(Textdraw2, 0);
119 TextDrawSetOutline(Textdraw2, 1);
120 TextDrawBackgroundColor(Textdraw2, 51);
121 TextDrawFont(Textdraw2, 1);
122 TextDrawSetProportional(Textdraw2, 1);
123
124 Textdraw3 = TextDrawCreate(400.400054, 165.019989, "usebox");
125 TextDrawLetterSize(Textdraw3, 0.000000, 2.089259);
126 TextDrawTextSize(Textdraw3, 250.000045, 0.000000);
127 TextDrawAlignment(Textdraw3, 1);
128 TextDrawColor(Textdraw3, 0);
129 TextDrawUseBox(Textdraw3, true);
130 TextDrawBoxColor(Textdraw3, -1);
131 TextDrawSetShadow(Textdraw3, 0);
132 TextDrawSetOutline(Textdraw3, 0);
133 TextDrawFont(Textdraw3, 0);
134
135 Textdraw4 = TextDrawCreate(400.000000, 165.393341, "usebox");
136 TextDrawLetterSize(Textdraw4, 0.000000, 1.964813);
137 TextDrawTextSize(Textdraw4, 250.399993, 0.000000);
138 TextDrawAlignment(Textdraw4, 1);
139 TextDrawColor(Textdraw4, 0);
140 TextDrawUseBox(Textdraw4, true);
141 TextDrawBoxColor(Textdraw4, 255);
142 TextDrawSetShadow(Textdraw4, 0);
143 TextDrawSetOutline(Textdraw4, 0);
144 TextDrawFont(Textdraw4, 0);
145 TextDrawSetSelectable(Textdraw4, true);
146
147 new snstr[124];
148 format(snstr, sizeof(snstr), "Welcome to %s !~n~Please create your security code to proceed.", SERVER_NAME);
149 Textdraw5 = TextDrawCreate(219.600006, 138.133331, snstr);
150 TextDrawLetterSize(Textdraw5, 0.250000, 0.800000);
151 TextDrawAlignment(Textdraw5, 1);
152 TextDrawColor(Textdraw5, -1);
153 TextDrawSetShadow(Textdraw5, 0);
154 TextDrawSetOutline(Textdraw5, 1);
155 TextDrawBackgroundColor(Textdraw5, 51);
156 TextDrawFont(Textdraw5, 1);
157 TextDrawSetProportional(Textdraw5, 1);
158
159 Textdraw6 = TextDrawCreate(400.400024, 192.273345, "usebox");
160 TextDrawLetterSize(Textdraw6, 0.000000, 19.874483);
161 TextDrawTextSize(Textdraw6, 249.600006, 0.000000);
162 TextDrawAlignment(Textdraw6, 1);
163 TextDrawColor(Textdraw6, 0);
164 TextDrawUseBox(Textdraw6, true);
165 TextDrawBoxColor(Textdraw6, -1);
166 TextDrawSetShadow(Textdraw6, 0);
167 TextDrawSetOutline(Textdraw6, 0);
168 TextDrawFont(Textdraw6, 0);
169
170 Textdraw7 = TextDrawCreate(301.599975, 194.139999, "usebox");
171 TextDrawLetterSize(Textdraw7, 0.000000, 4.535183);
172 TextDrawTextSize(Textdraw7, 250.399993, 0.000000);
173 TextDrawAlignment(Textdraw7, 1);
174 TextDrawColor(Textdraw7, 0);
175 TextDrawUseBox(Textdraw7, true);
176 TextDrawBoxColor(Textdraw7, 255);
177 TextDrawSetShadow(Textdraw7, 0);
178 TextDrawSetOutline(Textdraw7, 0);
179 TextDrawFont(Textdraw7, 0);
180
181 Textdraw8 = TextDrawCreate(349.600189, 194.513275, "usebox");
182 TextDrawLetterSize(Textdraw8, 0.000000, 4.530738);
183 TextDrawTextSize(Textdraw8, 299.600158, 0.000000);
184 TextDrawAlignment(Textdraw8, 1);
185 TextDrawColor(Textdraw8, 0);
186 TextDrawUseBox(Textdraw8, true);
187 TextDrawBoxColor(Textdraw8, 255);
188 TextDrawSetShadow(Textdraw8, 0);
189 TextDrawSetOutline(Textdraw8, 0);
190 TextDrawFont(Textdraw8, 0);
191
192 Textdraw9 = TextDrawCreate(398.400085, 194.139999, "usebox");
193 TextDrawLetterSize(Textdraw9, 0.000000, 4.570738);
194 TextDrawTextSize(Textdraw9, 347.600097, 0.000000);
195 TextDrawAlignment(Textdraw9, 1);
196 TextDrawColor(Textdraw9, 0);
197 TextDrawUseBox(Textdraw9, true);
198 TextDrawBoxColor(Textdraw9, 255);
199 TextDrawSetShadow(Textdraw9, 0);
200 TextDrawSetOutline(Textdraw9, 0);
201 TextDrawFont(Textdraw9, 0);
202
203 Textdraw10 = TextDrawCreate(302.000030, 238.940032, "usebox");
204 TextDrawLetterSize(Textdraw10, 0.000000, 4.615185);
205 TextDrawTextSize(Textdraw10, 250.800048, 0.000000);
206 TextDrawAlignment(Textdraw10, 1);
207 TextDrawColor(Textdraw10, 0);
208 TextDrawUseBox(Textdraw10, true);
209 TextDrawBoxColor(Textdraw10, 255);
210 TextDrawSetShadow(Textdraw10, 0);
211 TextDrawSetOutline(Textdraw10, 0);
212 TextDrawFont(Textdraw10, 0);
213
214 Textdraw11 = TextDrawCreate(349.600067, 239.313308, "usebox");
215 TextDrawLetterSize(Textdraw11, 0.000000, 4.569257);
216 TextDrawTextSize(Textdraw11, 300.000030, 0.000000);
217 TextDrawAlignment(Textdraw11, 1);
218 TextDrawColor(Textdraw11, 0);
219 TextDrawUseBox(Textdraw11, true);
220 TextDrawBoxColor(Textdraw11, 255);
221 TextDrawSetShadow(Textdraw11, 0);
222 TextDrawSetOutline(Textdraw11, 0);
223 TextDrawFont(Textdraw11, 0);
224
225 Textdraw12 = TextDrawCreate(398.799926, 239.313323, "usebox");
226 TextDrawLetterSize(Textdraw12, 0.000000, 4.613701);
227 TextDrawTextSize(Textdraw12, 347.599945, 0.000000);
228 TextDrawAlignment(Textdraw12, 1);
229 TextDrawColor(Textdraw12, 0);
230 TextDrawUseBox(Textdraw12, true);
231 TextDrawBoxColor(Textdraw12, 255);
232 TextDrawSetShadow(Textdraw12, 0);
233 TextDrawSetOutline(Textdraw12, 0);
234 TextDrawFont(Textdraw12, 0);
235
236 Textdraw13 = TextDrawCreate(301.999938, 284.486816, "usebox");
237 TextDrawLetterSize(Textdraw13, 0.000000, 4.536665);
238 TextDrawTextSize(Textdraw13, 251.200012, 0.000000);
239 TextDrawAlignment(Textdraw13, 1);
240 TextDrawColor(Textdraw13, 0);
241 TextDrawUseBox(Textdraw13, true);
242 TextDrawBoxColor(Textdraw13, 255);
243 TextDrawSetShadow(Textdraw13, 0);
244 TextDrawSetOutline(Textdraw13, 0);
245 TextDrawFont(Textdraw13, 0);
246
247 Textdraw14 = TextDrawCreate(349.599914, 284.859985, "usebox");
248 TextDrawLetterSize(Textdraw14, 0.000000, 4.489261);
249 TextDrawTextSize(Textdraw14, 300.399932, 0.000000);
250 TextDrawAlignment(Textdraw14, 1);
251 TextDrawColor(Textdraw14, 0);
252 TextDrawUseBox(Textdraw14, true);
253 TextDrawBoxColor(Textdraw14, 255);
254 TextDrawSetShadow(Textdraw14, 0);
255 TextDrawSetOutline(Textdraw14, 0);
256 TextDrawFont(Textdraw14, 0);
257
258 Textdraw15 = TextDrawCreate(398.799743, 284.860046, "usebox");
259 TextDrawLetterSize(Textdraw15, 0.000000, 4.450741);
260 TextDrawTextSize(Textdraw15, 347.999786, 0.000000);
261 TextDrawAlignment(Textdraw15, 1);
262 TextDrawColor(Textdraw15, 0);
263 TextDrawUseBox(Textdraw15, true);
264 TextDrawBoxColor(Textdraw15, 255);
265 TextDrawSetShadow(Textdraw15, 0);
266 TextDrawSetOutline(Textdraw15, 0);
267 TextDrawFont(Textdraw15, 0);
268
269 Textdraw16 = TextDrawCreate(302.000030, 329.660064, "usebox");
270 TextDrawLetterSize(Textdraw16, 0.000000, 4.493705);
271 TextDrawTextSize(Textdraw16, 251.200027, 0.000000);
272 TextDrawAlignment(Textdraw16, 1);
273 TextDrawColor(Textdraw16, 0);
274 TextDrawUseBox(Textdraw16, true);
275 TextDrawBoxColor(Textdraw16, 255);
276 TextDrawSetShadow(Textdraw16, 0);
277 TextDrawSetOutline(Textdraw16, 0);
278 TextDrawFont(Textdraw16, 0);
279
280 Textdraw17 = TextDrawCreate(349.600006, 329.659881, "usebox");
281 TextDrawLetterSize(Textdraw17, 0.000000, 4.370741);
282 TextDrawTextSize(Textdraw17, 300.399993, 0.000000);
283 TextDrawAlignment(Textdraw17, 1);
284 TextDrawColor(Textdraw17, 0);
285 TextDrawUseBox(Textdraw17, true);
286 TextDrawBoxColor(Textdraw17, 255);
287 TextDrawSetShadow(Textdraw17, 0);
288 TextDrawSetOutline(Textdraw17, 0);
289 TextDrawFont(Textdraw17, 0);
290
291 Textdraw18 = TextDrawCreate(398.799926, 329.660064, "usebox");
292 TextDrawLetterSize(Textdraw18, 0.000000, 4.372225);
293 TextDrawTextSize(Textdraw18, 347.999969, 0.000000);
294 TextDrawAlignment(Textdraw18, 1);
295 TextDrawColor(Textdraw18, 0);
296 TextDrawUseBox(Textdraw18, true);
297 TextDrawBoxColor(Textdraw18, 255);
298 TextDrawSetShadow(Textdraw18, 0);
299 TextDrawSetOutline(Textdraw18, 0);
300 TextDrawFont(Textdraw18, 0);
301
302 Textdraw19 = TextDrawCreate(313.200042, 329.653259, "0");
303 TextDrawLetterSize(Textdraw19, 1.000000, 3.500000);
304 TextDrawTextSize(Textdraw19, 345.000000, 40.000000);
305 TextDrawAlignment(Textdraw19, 1);
306 TextDrawColor(Textdraw19, -1);
307 TextDrawSetShadow(Textdraw19, 0);
308 TextDrawSetOutline(Textdraw19, 1);
309 TextDrawBackgroundColor(Textdraw19, 51);
310 TextDrawFont(Textdraw19, 2);
311 TextDrawSetProportional(Textdraw19, 1);
312 TextDrawSetSelectable(Textdraw19, true);
313
314 Textdraw20 = TextDrawCreate(264.600006, 196.746566, "1");
315 TextDrawLetterSize(Textdraw20, 1.000000, 3.500000);
316 TextDrawTextSize(Textdraw20, 300.000000, 40.000000);
317 TextDrawAlignment(Textdraw20, 1);
318 TextDrawColor(Textdraw20, -1);
319 TextDrawSetShadow(Textdraw20, 0);
320 TextDrawSetOutline(Textdraw20, 1);
321 TextDrawBackgroundColor(Textdraw20, 51);
322 TextDrawFont(Textdraw20, 2);
323 TextDrawSetProportional(Textdraw20, 1);
324 TextDrawSetSelectable(Textdraw20, true);
325
326 Textdraw21 = TextDrawCreate(312.800018, 197.119934, "2");
327 TextDrawLetterSize(Textdraw21, 1.000000, 3.500000);
328 TextDrawTextSize(Textdraw21, 345.000000, 40.000000);
329 TextDrawAlignment(Textdraw21, 1);
330 TextDrawColor(Textdraw21, -1);
331 TextDrawSetShadow(Textdraw21, 0);
332 TextDrawSetOutline(Textdraw21, 1);
333 TextDrawBackgroundColor(Textdraw21, 51);
334 TextDrawFont(Textdraw21, 2);
335 TextDrawSetProportional(Textdraw21, 1);
336 TextDrawSetSelectable(Textdraw21, true);
337
338 Textdraw22 = TextDrawCreate(363.199920, 197.119903, "3");
339 TextDrawLetterSize(Textdraw22, 1.000000, 3.500000);
340 TextDrawTextSize(Textdraw22, 445.000000, 40.000000);
341 TextDrawAlignment(Textdraw22, 1);
342 TextDrawColor(Textdraw22, -1);
343 TextDrawSetShadow(Textdraw22, 0);
344 TextDrawSetOutline(Textdraw22, 1);
345 TextDrawBackgroundColor(Textdraw22, 51);
346 TextDrawFont(Textdraw22, 2);
347 TextDrawSetProportional(Textdraw22, 1);
348 TextDrawSetSelectable(Textdraw22, true);
349
350 Textdraw23 = TextDrawCreate(263.999938, 241.919921, "4");
351 TextDrawLetterSize(Textdraw23, 1.000000, 3.500000);
352 TextDrawTextSize(Textdraw23, 300.000000, 40.000000);
353 TextDrawAlignment(Textdraw23, 1);
354 TextDrawColor(Textdraw23, -1);
355 TextDrawSetShadow(Textdraw23, 0);
356 TextDrawSetOutline(Textdraw23, 1);
357 TextDrawBackgroundColor(Textdraw23, 51);
358 TextDrawFont(Textdraw23, 2);
359 TextDrawSetProportional(Textdraw23, 1);
360 TextDrawSetSelectable(Textdraw23, true);
361
362 Textdraw24 = TextDrawCreate(312.800079, 241.919952, "5");
363 TextDrawLetterSize(Textdraw24, 1.000000, 3.500000);
364 TextDrawTextSize(Textdraw24, 345.000000, 40.000000);
365 TextDrawAlignment(Textdraw24, 1);
366 TextDrawColor(Textdraw24, -1);
367 TextDrawSetShadow(Textdraw24, 0);
368 TextDrawSetOutline(Textdraw24, 1);
369 TextDrawBackgroundColor(Textdraw24, 51);
370 TextDrawFont(Textdraw24, 2);
371 TextDrawSetProportional(Textdraw24, 1);
372 TextDrawSetSelectable(Textdraw24, true);
373
374 Textdraw25 = TextDrawCreate(361.200073, 242.666625, "6");
375 TextDrawLetterSize(Textdraw25, 1.000000, 3.500000);
376 TextDrawTextSize(Textdraw25, 445.000000, 40.000000);
377 TextDrawAlignment(Textdraw25, 1);
378 TextDrawColor(Textdraw25, -1);
379 TextDrawSetShadow(Textdraw25, 0);
380 TextDrawSetOutline(Textdraw25, 1);
381 TextDrawBackgroundColor(Textdraw25, 51);
382 TextDrawFont(Textdraw25, 2);
383 TextDrawSetProportional(Textdraw25, 1);
384 TextDrawSetSelectable(Textdraw25, true);
385
386 Textdraw26 = TextDrawCreate(263.600006, 286.720031, "7");
387 TextDrawLetterSize(Textdraw26, 1.000000, 3.500000);
388 TextDrawTextSize(Textdraw26, 300.000000, 40.000000);
389 TextDrawAlignment(Textdraw26, 1);
390 TextDrawColor(Textdraw26, -1);
391 TextDrawSetShadow(Textdraw26, 0);
392 TextDrawSetOutline(Textdraw26, 1);
393 TextDrawBackgroundColor(Textdraw26, 51);
394 TextDrawFont(Textdraw26, 2);
395 TextDrawSetProportional(Textdraw26, 1);
396 TextDrawSetSelectable(Textdraw26, true);
397
398 Textdraw27 = TextDrawCreate(312.000061, 286.720092, "8");
399 TextDrawLetterSize(Textdraw27, 1.000000, 3.500000);
400 TextDrawTextSize(Textdraw27, 345.000000, 40.000000);
401 TextDrawAlignment(Textdraw27, 1);
402 TextDrawColor(Textdraw27, -1);
403 TextDrawSetShadow(Textdraw27, 0);
404 TextDrawSetOutline(Textdraw27, 1);
405 TextDrawBackgroundColor(Textdraw27, 51);
406 TextDrawFont(Textdraw27, 2);
407 TextDrawSetProportional(Textdraw27, 1);
408 TextDrawSetSelectable(Textdraw27, true);
409
410 Textdraw28 = TextDrawCreate(361.199951, 285.973327, "9");
411 TextDrawLetterSize(Textdraw28, 1.000000, 3.500000);
412 TextDrawTextSize(Textdraw28, 445.000000, 40.000000);
413 TextDrawAlignment(Textdraw28, 1);
414 TextDrawColor(Textdraw28, -1);
415 TextDrawSetShadow(Textdraw28, 0);
416 TextDrawSetOutline(Textdraw28, 1);
417 TextDrawBackgroundColor(Textdraw28, 51);
418 TextDrawFont(Textdraw28, 2);
419 TextDrawSetProportional(Textdraw28, 1);
420 TextDrawSetSelectable(Textdraw28, true);
421
422 Textdraw29 = TextDrawCreate(264.400024, 330.773315, "C");
423 TextDrawLetterSize(Textdraw29, 1.000000, 3.500000);
424 TextDrawTextSize(Textdraw29, 300.000000, 40.000000);
425 TextDrawAlignment(Textdraw29, 1);
426 TextDrawColor(Textdraw29, -16776961);
427 TextDrawSetShadow(Textdraw29, 0);
428 TextDrawSetOutline(Textdraw29, 1);
429 TextDrawBackgroundColor(Textdraw29, 51);
430 TextDrawFont(Textdraw29, 2);
431 TextDrawSetProportional(Textdraw29, 1);
432 TextDrawSetSelectable(Textdraw29, true);
433
434 Textdraw30 = TextDrawCreate(354.000000, 334.133331, "OK");
435 TextDrawLetterSize(Textdraw30, 0.699999, 2.900000);
436 TextDrawAlignment(Textdraw30, 1);
437 TextDrawColor(Textdraw30, 16711935);
438 TextDrawSetShadow(Textdraw30, 0);
439 TextDrawSetOutline(Textdraw30, 1);
440 TextDrawBackgroundColor(Textdraw30, 51);
441 TextDrawFont(Textdraw30, 2);
442 TextDrawSetProportional(Textdraw30, 1);
443 TextDrawSetSelectable(Textdraw30, true);
444
445 Textdraw31 = TextDrawCreate(415.200012, 113.493331, "X");
446 TextDrawLetterSize(Textdraw31, 0.449999, 1.600000);
447 TextDrawTextSize(Textdraw31, 588.000000, 20.000000);
448 TextDrawAlignment(Textdraw31, 1);
449 TextDrawColor(Textdraw31, -16776961);
450 TextDrawSetShadow(Textdraw31, 0);
451 TextDrawSetOutline(Textdraw31, 1);
452 TextDrawBackgroundColor(Textdraw31, 51);
453 TextDrawFont(Textdraw31, 1);
454 TextDrawSetProportional(Textdraw31, 1);
455 TextDrawSetSelectable(Textdraw31, true);
456
457 // security pad login
458 Textdraw46 = TextDrawCreate(217.200012, 116.106674, "Enter your security code");
459 TextDrawLetterSize(Textdraw46, 0.300000, 1.000000);
460 TextDrawAlignment(Textdraw46, 1);
461 TextDrawColor(Textdraw46, -1);
462 TextDrawSetShadow(Textdraw46, 0);
463 TextDrawSetOutline(Textdraw46, 1);
464 TextDrawBackgroundColor(Textdraw46, 51);
465 TextDrawFont(Textdraw46, 1);
466 TextDrawSetProportional(Textdraw46, 1);
467
468 new snstr2[124];
469 format(snstr2, sizeof(snstr2), "Welcome to %s !~n~Please insert your security code to proceed.", SERVER_NAME);
470 Textdraw33 = TextDrawCreate(219.600006, 138.133331, snstr2);
471 TextDrawLetterSize(Textdraw33, 0.250000, 0.800000);
472 TextDrawAlignment(Textdraw33, 1);
473 TextDrawColor(Textdraw33, -1);
474 TextDrawSetShadow(Textdraw33, 0);
475 TextDrawSetOutline(Textdraw33, 1);
476 TextDrawBackgroundColor(Textdraw33, 51);
477 TextDrawFont(Textdraw33, 1);
478 TextDrawSetProportional(Textdraw33, 1);
479
480 Textdraw34 = TextDrawCreate(313.200042, 329.653259, "0");
481 TextDrawLetterSize(Textdraw34, 1.000000, 3.500000);
482 TextDrawTextSize(Textdraw34, 345.000000, 40.000000);
483 TextDrawAlignment(Textdraw34, 1);
484 TextDrawColor(Textdraw34, -1);
485 TextDrawSetShadow(Textdraw34, 0);
486 TextDrawSetOutline(Textdraw34, 1);
487 TextDrawBackgroundColor(Textdraw34, 51);
488 TextDrawFont(Textdraw34, 2);
489 TextDrawSetProportional(Textdraw34, 1);
490 TextDrawSetSelectable(Textdraw34, true);
491
492 Textdraw35 = TextDrawCreate(263.600006, 196.746566, "1");
493 TextDrawLetterSize(Textdraw35, 1.000000, 3.500000);
494 TextDrawTextSize(Textdraw35, 300.000000, 40.000000);
495 TextDrawAlignment(Textdraw35, 1);
496 TextDrawColor(Textdraw35, -1);
497 TextDrawSetShadow(Textdraw35, 0);
498 TextDrawSetOutline(Textdraw35, 1);
499 TextDrawBackgroundColor(Textdraw35, 51);
500 TextDrawFont(Textdraw35, 2);
501 TextDrawSetProportional(Textdraw35, 1);
502 TextDrawSetSelectable(Textdraw35, true);
503
504 Textdraw47 = TextDrawCreate(312.800018, 197.119934, "2");
505 TextDrawLetterSize(Textdraw47, 1.000000, 3.500000);
506 TextDrawTextSize(Textdraw47, 345.000000, 40.000000);
507 TextDrawAlignment(Textdraw47, 1);
508 TextDrawColor(Textdraw47, -1);
509 TextDrawSetShadow(Textdraw47, 0);
510 TextDrawSetOutline(Textdraw47, 1);
511 TextDrawBackgroundColor(Textdraw47, 51);
512 TextDrawFont(Textdraw47, 2);
513 TextDrawSetProportional(Textdraw47, 1);
514 TextDrawSetSelectable(Textdraw47, true);
515
516 Textdraw36 = TextDrawCreate(363.199920, 197.119903, "3");
517 TextDrawLetterSize(Textdraw36, 1.000000, 3.500000);
518 TextDrawTextSize(Textdraw36, 445.000000, 40.000000);
519 TextDrawAlignment(Textdraw36, 1);
520 TextDrawColor(Textdraw36, -1);
521 TextDrawSetShadow(Textdraw36, 0);
522 TextDrawSetOutline(Textdraw36, 1);
523 TextDrawBackgroundColor(Textdraw36, 51);
524 TextDrawFont(Textdraw36, 2);
525 TextDrawSetProportional(Textdraw36, 1);
526 TextDrawSetSelectable(Textdraw36, true);
527
528 Textdraw37 = TextDrawCreate(263.999938, 241.919921, "4");
529 TextDrawLetterSize(Textdraw37, 1.000000, 3.500000);
530 TextDrawTextSize(Textdraw37, 300.000000, 40.000000);
531 TextDrawAlignment(Textdraw37, 1);
532 TextDrawColor(Textdraw37, -1);
533 TextDrawSetShadow(Textdraw37, 0);
534 TextDrawSetOutline(Textdraw37, 1);
535 TextDrawBackgroundColor(Textdraw37, 51);
536 TextDrawFont(Textdraw37, 2);
537 TextDrawSetProportional(Textdraw37, 1);
538 TextDrawSetSelectable(Textdraw37, true);
539
540 Textdraw38 = TextDrawCreate(312.800079, 241.919952, "5");
541 TextDrawLetterSize(Textdraw38, 1.000000, 3.500000);
542 TextDrawTextSize(Textdraw38, 345.000000, 40.000000);
543 TextDrawAlignment(Textdraw38, 1);
544 TextDrawColor(Textdraw38, -1);
545 TextDrawSetShadow(Textdraw38, 0);
546 TextDrawSetOutline(Textdraw38, 1);
547 TextDrawBackgroundColor(Textdraw38, 51);
548 TextDrawFont(Textdraw38, 2);
549 TextDrawSetProportional(Textdraw38, 1);
550 TextDrawSetSelectable(Textdraw38, true);
551
552 Textdraw39 = TextDrawCreate(361.200073, 242.666625, "6");
553 TextDrawLetterSize(Textdraw39, 1.000000, 3.500000);
554 TextDrawTextSize(Textdraw39, 445.000000, 40.000000);
555 TextDrawAlignment(Textdraw39, 1);
556 TextDrawColor(Textdraw39, -1);
557 TextDrawSetShadow(Textdraw39, 0);
558 TextDrawSetOutline(Textdraw39, 1);
559 TextDrawBackgroundColor(Textdraw39, 51);
560 TextDrawFont(Textdraw39, 2);
561 TextDrawSetProportional(Textdraw39, 1);
562 TextDrawSetSelectable(Textdraw39, true);
563
564 Textdraw40 = TextDrawCreate(263.600006, 286.720031, "7");
565 TextDrawLetterSize(Textdraw40, 1.000000, 3.500000);
566 TextDrawTextSize(Textdraw40, 300.000000, 40.000000);
567 TextDrawAlignment(Textdraw40, 1);
568 TextDrawColor(Textdraw40, -1);
569 TextDrawSetShadow(Textdraw40, 0);
570 TextDrawSetOutline(Textdraw40, 1);
571 TextDrawBackgroundColor(Textdraw40, 51);
572 TextDrawFont(Textdraw40, 2);
573 TextDrawSetProportional(Textdraw40, 1);
574 TextDrawSetSelectable(Textdraw40, true);
575
576 Textdraw41 = TextDrawCreate(312.000061, 286.720092, "8");
577 TextDrawLetterSize(Textdraw41, 1.000000, 3.500000);
578 TextDrawTextSize(Textdraw41, 345.000000, 40.000000);
579 TextDrawAlignment(Textdraw41, 1);
580 TextDrawColor(Textdraw41, -1);
581 TextDrawSetShadow(Textdraw41, 0);
582 TextDrawSetOutline(Textdraw41, 1);
583 TextDrawBackgroundColor(Textdraw41, 51);
584 TextDrawFont(Textdraw41, 2);
585 TextDrawSetProportional(Textdraw41, 1);
586 TextDrawSetSelectable(Textdraw41, true);
587
588 Textdraw42 = TextDrawCreate(361.199951, 285.973327, "9");
589 TextDrawLetterSize(Textdraw42, 1.000000, 3.500000);
590 TextDrawTextSize(Textdraw42, 445.000000, 40.000000);
591 TextDrawAlignment(Textdraw42, 1);
592 TextDrawColor(Textdraw42, -1);
593 TextDrawSetShadow(Textdraw42, 0);
594 TextDrawSetOutline(Textdraw42, 1);
595 TextDrawBackgroundColor(Textdraw42, 51);
596 TextDrawFont(Textdraw42, 2);
597 TextDrawSetProportional(Textdraw42, 1);
598 TextDrawSetSelectable(Textdraw42, true);
599
600 Textdraw43 = TextDrawCreate(264.400024, 330.773315, "C");
601 TextDrawLetterSize(Textdraw43, 1.000000, 3.500000);
602 TextDrawTextSize(Textdraw43, 300.000000, 40.000000);
603 TextDrawAlignment(Textdraw43, 1);
604 TextDrawColor(Textdraw43, -16776961);
605 TextDrawSetShadow(Textdraw43, 0);
606 TextDrawSetOutline(Textdraw43, 1);
607 TextDrawBackgroundColor(Textdraw43, 51);
608 TextDrawFont(Textdraw43, 2);
609 TextDrawSetProportional(Textdraw43, 1);
610 TextDrawSetSelectable(Textdraw43, true);
611
612 Textdraw44 = TextDrawCreate(354.000000, 334.133331, "OK");
613 TextDrawLetterSize(Textdraw44, 0.699999, 2.900000);
614 TextDrawAlignment(Textdraw44, 1);
615 TextDrawColor(Textdraw44, 16711935);
616 TextDrawSetShadow(Textdraw44, 0);
617 TextDrawSetOutline(Textdraw44, 1);
618 TextDrawBackgroundColor(Textdraw44, 51);
619 TextDrawFont(Textdraw44, 2);
620 TextDrawSetProportional(Textdraw44, 1);
621 TextDrawSetSelectable(Textdraw44, true);
622
623 Textdraw45 = TextDrawCreate(415.200012, 113.493331, "X");
624 TextDrawLetterSize(Textdraw45, 0.449999, 1.600000);
625 TextDrawTextSize(Textdraw45, 588.000000, 10.000000);
626 TextDrawAlignment(Textdraw45, 1);
627 TextDrawColor(Textdraw45, -16776961);
628 TextDrawSetShadow(Textdraw45, 0);
629 TextDrawSetOutline(Textdraw45, 1);
630 TextDrawBackgroundColor(Textdraw45, 51);
631 TextDrawFont(Textdraw45, 1);
632 TextDrawSetProportional(Textdraw45, 1);
633 TextDrawSetSelectable(Textdraw45, true);
634 return 1;
635}
636//==============================================================================
637public OnPlayerConnect(playerid)
638{
639 PinCode[playerid] = 0;
640 PinIn[playerid] = 0;
641 InputChars[playerid] = 0;
642 inputchar[playerid] = 0;
643 InputAttempt[playerid] = 0;
644 IsPlayerCreatingCode[playerid] = 0;
645 IsPlayerInsertingCode[playerid] = 0;
646 Pin1[playerid] = 0;
647 Pin2[playerid] = 0;
648 Pin3[playerid] = 0;
649 Pin4[playerid] = 0;
650 LoadPin1[playerid] = 0;
651 LoadPin2[playerid] = 0;
652 LoadPin3[playerid] = 0;
653 LoadPin4[playerid] = 0;
654 return 1;
655}
656//==============================================================================
657public OnPlayerDisconnect(playerid, reason)
658{
659 PinCode[playerid] = 0;
660 PinIn[playerid] = 0;
661 InputChars[playerid] = 0;
662 inputchar[playerid] = 0;
663 InputAttempt[playerid] = 0;
664 IsPlayerCreatingCode[playerid] = 0;
665 IsPlayerInsertingCode[playerid] = 0;
666 Pin1[playerid] = 0;
667 Pin2[playerid] = 0;
668 Pin3[playerid] = 0;
669 Pin4[playerid] = 0;
670 LoadPin1[playerid] = 0;
671 LoadPin2[playerid] = 0;
672 LoadPin3[playerid] = 0;
673 LoadPin4[playerid] = 0;
674 return 1;
675}
676//==============================================================================
677public OnPlayerSpawn(playerid)
678{
679 if(PinIn[playerid] == 0 && PinIn[playerid] != 1)
680 {
681 new DBResult:SPAWN_RESULT;
682 new szQuery[128];
683 format(szQuery, sizeof(szQuery), "select * from `PINCODES` where `PlayerName` = '%s'", DB_Escape(GetName(playerid)));
684 SPAWN_RESULT = db_query(PIN_DATABASE, szQuery);
685 db_get_field_assoc(SPAWN_RESULT, "PinActive", PinCode[playerid], 5);
686 if(PinCode[playerid] == 0)
687 {
688 ShowPinCodePad(playerid);
689 }
690 else
691 {
692 ShowPinCodePadLogin(playerid);
693 }
694 db_free_result(SPAWN_RESULT);
695 }
696 return 1;
697}
698
699//==============================================================================
700public OnPlayerClickTextDraw(playerid, Text:clickedid)
701{
702 if(_:clickedid == INVALID_TEXT_DRAW)
703 {
704 if(IsPlayerCreatingCode[playerid] == 1)
705 {
706 HidePinCodePad(playerid);
707 new str[1024],string2[1024], title[124];
708 format(title,sizeof(title),"{FFFFFF} %s - Kicked", SERVER_NAME);
709 format(str,sizeof(str),"{FFFFFF}You are {FF0000}kicked {FFFFFF}from this server!\n\n");
710 strcat(string2,str);
711 format(str,sizeof(str),"{FFFFFF}Reason: {FF0000}You are required to create a security pin code to play on %s.\n", SERVER_NAME);
712 strcat(string2,str);
713 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
714 SetTimerEx("KickTimer", 1000, false, "i", playerid);
715 }
716 else if(IsPlayerInsertingCode[playerid] == 1)
717 {
718 HidePinCodePadLogin(playerid);
719 new str[1024],string2[1024], title[124];
720 format(title,sizeof(title),"{FFFFFF} %s - Kicked", SERVER_NAME);
721 format(str,sizeof(str),"{FFFFFF}You are {FF0000}kicked {FFFFFF}from this server!\n\n");
722 strcat(string2,str);
723 format(str,sizeof(str),"{FFFFFF}Reason: {FF0000}You have failed to insert your security pin.\n");
724 strcat(string2,str);
725 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
726 SetTimerEx("KickTimer", 1000, false, "i", playerid);
727 }
728 return 1;
729 }
730 if(clickedid == Textdraw31)
731 {
732 if(IsPlayerCreatingCode[playerid] == 1)
733 {
734 HidePinCodePad(playerid);
735 new str[1024],string2[1024], title[124];
736 format(title,sizeof(title),"{FFFFFF} %s - Kicked", SERVER_NAME);
737 format(str,sizeof(str),"{FFFFFF}You are {FF0000}kicked {FFFFFF}from this server!\n\n");
738 strcat(string2,str);
739 format(str,sizeof(str),"{FFFFFF}Reason: {FF0000}You are required to create a security pin code to play on %s.\n", SERVER_NAME);
740 strcat(string2,str);
741 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
742 SetTimerEx("KickTimer", 1000, false, "i", playerid);
743 }
744 return 1;
745 }
746 if(clickedid == Textdraw19)
747 {
748 inputchar[playerid] = 0;
749 UpdateCharCount(playerid);
750
751 InsertCharacter(playerid);
752
753 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
754 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
755 return 1;
756 }
757 if(clickedid == Textdraw20)
758 {
759 inputchar[playerid] = 1;
760 UpdateCharCount(playerid);
761
762 InsertCharacter(playerid);
763
764 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
765 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
766 return 1;
767 }
768 if(clickedid == Textdraw21)
769 {
770 inputchar[playerid] = 2;
771 UpdateCharCount(playerid);
772
773 InsertCharacter(playerid);
774
775 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
776 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
777 return 1;
778 }
779 if(clickedid == Textdraw22)
780 {
781 inputchar[playerid] = 3;
782 UpdateCharCount(playerid);
783
784 InsertCharacter(playerid);
785
786 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
787 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
788 return 1;
789 }
790 if(clickedid == Textdraw23)
791 {
792 inputchar[playerid] = 4;
793 UpdateCharCount(playerid);
794
795 InsertCharacter(playerid);
796
797 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
798 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
799 return 1;
800 }
801 if(clickedid == Textdraw24)
802 {
803 inputchar[playerid] = 5;
804 UpdateCharCount(playerid);
805
806 InsertCharacter(playerid);
807
808 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
809 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
810 return 1;
811 }
812 if(clickedid == Textdraw25)
813 {
814 inputchar[playerid] = 6;
815 UpdateCharCount(playerid);
816
817 InsertCharacter(playerid);
818
819 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
820 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
821 return 1;
822 }
823 if(clickedid == Textdraw26)
824 {
825 inputchar[playerid] = 7;
826 UpdateCharCount(playerid);
827
828 InsertCharacter(playerid);
829
830 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
831 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
832 return 1;
833 }
834 if(clickedid == Textdraw27)
835 {
836 inputchar[playerid] = 8;
837 UpdateCharCount(playerid);
838
839 InsertCharacter(playerid);
840
841 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
842 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
843 return 1;
844 }
845 if(clickedid == Textdraw28)
846 {
847 inputchar[playerid] = 9;
848 UpdateCharCount(playerid);
849
850 InsertCharacter(playerid);
851
852 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
853 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
854 return 1;
855 }
856 if(clickedid == Textdraw29)
857 {
858 TextDrawHideForPlayer(playerid, Textdraw32[playerid]);
859
860 Textdraw32[playerid] = TextDrawCreate(256.800048, 169.119995, "");
861 TextDrawLetterSize(Textdraw32[playerid], 0.174999, 1.000000);
862 TextDrawAlignment(Textdraw32[playerid], 1);
863 TextDrawColor(Textdraw32[playerid], -1);
864 TextDrawSetShadow(Textdraw32[playerid], 0);
865 TextDrawSetOutline(Textdraw32[playerid], 1);
866 TextDrawBackgroundColor(Textdraw32[playerid], 51);
867 TextDrawFont(Textdraw32[playerid], 2);
868 TextDrawSetProportional(Textdraw32[playerid], 1);
869
870 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
871 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
872
873 new DBResult:CLEAR_RESULT;
874 new szQuery[128];
875 format(szQuery, sizeof(szQuery), "delete from `PINCODES` where `PlayerName` = '%s'", DB_Escape(GetName(playerid)));
876 CLEAR_RESULT = db_query(PIN_DATABASE, szQuery);
877 db_free_result(CLEAR_RESULT);
878
879 InputChars[playerid] = 0;
880
881 TextDrawHideForPlayer(playerid, Textdraw30);
882 return 1;
883 }
884 if(clickedid == Textdraw30)
885 {
886 new DBResult:FINISH_RESULT_CREATE;
887 new szQuery[128];
888 format(szQuery, sizeof(szQuery), "select * from `PINCODES` where `PlayerName` = '%s'", DB_Escape(GetName(playerid)));
889 FINISH_RESULT_CREATE = db_query(PIN_DATABASE, szQuery);
890 db_get_field_assoc(FINISH_RESULT_CREATE, "PinActive", PinCode[playerid], 5);
891 if(PinCode[playerid] == 0)
892 {
893 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", "Your pincode should be 4 numbers long. e.g 1234", "OK", "");
894 }
895 else
896 {
897 new str[1024],string2[1024], title[124];
898 format(title,sizeof(title),"{FFFFFF} %s - Security code created.", SERVER_NAME);
899 format(str,sizeof(str),"{FFFFFF}You have created your security code and may now continue to play on %s.\n\n", SERVER_NAME);
900 strcat(string2,str);
901 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
902 HidePinCodePad(playerid);
903 PinIn[playerid] = 1;
904 InputChars[playerid] = 0;
905 }
906 db_free_result(FINISH_RESULT_CREATE);
907 return 1;
908 }
909 if(clickedid == Textdraw34)
910 {
911 inputchar[playerid] = 0;
912 UpdateCharCountLogin(playerid);
913 InsertCharacterLogin(playerid);
914 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
915 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
916 return 1;
917 }
918 if(clickedid == Textdraw35)
919 {
920 inputchar[playerid] = 1;
921 UpdateCharCountLogin(playerid);
922 InsertCharacterLogin(playerid);
923 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
924 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
925 return 1;
926 }
927 if(clickedid == Textdraw47)
928 {
929 inputchar[playerid] = 2;
930 UpdateCharCountLogin(playerid);
931 InsertCharacterLogin(playerid);
932 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
933 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
934 return 1;
935 }
936 if(clickedid == Textdraw36)
937 {
938 inputchar[playerid] = 3;
939 UpdateCharCountLogin(playerid);
940 InsertCharacterLogin(playerid);
941 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
942 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
943 return 1;
944 }
945 if(clickedid == Textdraw37)
946 {
947 inputchar[playerid] = 4;
948 UpdateCharCountLogin(playerid);
949 InsertCharacterLogin(playerid);
950 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
951 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
952 return 1;
953 }
954 if(clickedid == Textdraw38)
955 {
956 inputchar[playerid] = 5;
957 UpdateCharCountLogin(playerid);
958 InsertCharacterLogin(playerid);
959 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
960 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
961 return 1;
962 }
963 if(clickedid == Textdraw39)
964 {
965 inputchar[playerid] = 6;
966 UpdateCharCountLogin(playerid);
967 InsertCharacterLogin(playerid);
968 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
969 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
970 return 1;
971 }
972 if(clickedid == Textdraw40)
973 {
974 inputchar[playerid] = 7;
975 UpdateCharCountLogin(playerid);
976 InsertCharacterLogin(playerid);
977 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
978 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
979 return 1;
980 }
981 if(clickedid == Textdraw41)
982 {
983 inputchar[playerid] = 8;
984 UpdateCharCountLogin(playerid);
985 InsertCharacterLogin(playerid);
986 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
987 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
988 return 1;
989 }
990 if(clickedid == Textdraw42)
991 {
992 inputchar[playerid] = 9;
993 UpdateCharCountLogin(playerid);
994 InsertCharacterLogin(playerid);
995 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
996 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
997 return 1;
998 }
999 if(clickedid == Textdraw43)
1000 {
1001 TextDrawHideForPlayer(playerid, Textdraw32[playerid]);
1002
1003 Textdraw32[playerid] = TextDrawCreate(256.800048, 169.119995, "");
1004 TextDrawLetterSize(Textdraw32[playerid], 0.174999, 1.000000);
1005 TextDrawAlignment(Textdraw32[playerid], 1);
1006 TextDrawColor(Textdraw32[playerid], -1);
1007 TextDrawSetShadow(Textdraw32[playerid], 0);
1008 TextDrawSetOutline(Textdraw32[playerid], 1);
1009 TextDrawBackgroundColor(Textdraw32[playerid], 51);
1010 TextDrawFont(Textdraw32[playerid], 2);
1011 TextDrawSetProportional(Textdraw32[playerid], 1);
1012
1013 TextDrawShowForPlayer(playerid, Textdraw32[playerid]);
1014 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
1015
1016 Pin1[playerid] = 0;
1017 Pin2[playerid] = 0;
1018 Pin3[playerid] = 0;
1019 Pin4[playerid] = 0;
1020
1021 InputChars[playerid] = 0;
1022
1023 TextDrawHideForPlayer(playerid, Textdraw44);
1024 return 1;
1025 }
1026 if(clickedid == Textdraw44)
1027 {
1028 new DBResult:SPAWN_RESULT;
1029 new szQuery[128];
1030 format(szQuery, sizeof(szQuery), "select * from `PINCODES` where `PlayerName` = '%s'", DB_Escape(GetName(playerid)));
1031 SPAWN_RESULT = db_query(PIN_DATABASE, szQuery);
1032 db_get_field_assoc(SPAWN_RESULT, "Pin1", LoadPin1[playerid], 5);
1033 db_get_field_assoc(SPAWN_RESULT, "Pin2", LoadPin2[playerid], 5);
1034 db_get_field_assoc(SPAWN_RESULT, "Pin3", LoadPin3[playerid], 5);
1035 db_get_field_assoc(SPAWN_RESULT, "Pin4", LoadPin4[playerid], 5);
1036 db_get_field_assoc(SPAWN_RESULT, "TempPin1", Pin1[playerid], 5);
1037 db_get_field_assoc(SPAWN_RESULT, "TempPin2", Pin2[playerid], 5);
1038 db_get_field_assoc(SPAWN_RESULT, "TempPin3", Pin3[playerid], 5);
1039 db_get_field_assoc(SPAWN_RESULT, "TempPin4", Pin4[playerid], 5);
1040 if(Pin1[playerid] == LoadPin1[playerid])
1041 {
1042 //succes - checked if first pin character matches players first insert.
1043 if(Pin2[playerid] == LoadPin2[playerid])
1044 {
1045 //succes - checked if second pin character matches players second insert.
1046 if(Pin3[playerid] == LoadPin3[playerid])
1047 {
1048 //succes - checked if third pin character matches players third insert.
1049 if(Pin4[playerid] == LoadPin4[playerid])
1050 {
1051 new str[1024],string2[1024], title[124];
1052 format(title,sizeof(title),"{FFFFFF} %s - Security code correct.", SERVER_NAME);
1053 format(str,sizeof(str),"{FFFFFF}Your security code was correct. Have fun on %s !", SERVER_NAME);
1054 strcat(string2,str);
1055 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
1056 HidePinCodePadLogin(playerid);
1057 PinIn[playerid] = 1;
1058 IsPlayerInsertingCode[playerid] = 0;
1059 InputChars[playerid] = 0;
1060 }
1061 else if(Pin4[playerid] != LoadPin4[playerid])
1062 {
1063 CheckAttempt(playerid);
1064 }
1065 }
1066 else if(Pin3[playerid] != LoadPin3[playerid])
1067 {
1068 CheckAttempt(playerid);
1069 }
1070 }
1071 else if(Pin2[playerid] != LoadPin2[playerid])
1072 {
1073 CheckAttempt(playerid);
1074 }
1075 }
1076 else if(Pin1[playerid] != LoadPin1[playerid])
1077 {
1078 CheckAttempt(playerid);
1079 }
1080 PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
1081 db_free_result(SPAWN_RESULT);
1082 return 1;
1083 }
1084 if(clickedid == Textdraw45)
1085 {
1086 if(IsPlayerInsertingCode[playerid] == 1)
1087 {
1088 HidePinCodePad(playerid);
1089 new str[1024],string2[1024], title[124];
1090 format(title,sizeof(title),"{FFFFFF} %s - Kicked", SERVER_NAME);
1091 format(str,sizeof(str),"{FFFFFF}You are {FF0000}kicked {FFFFFF}from this server!\n\n");
1092 strcat(string2,str);
1093 format(str,sizeof(str),"{FFFFFF}Reason: {FF0000}You have failed to insert your security pin.\n");
1094 strcat(string2,str);
1095 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
1096 SetTimerEx("KickTimer", 1000, false, "i", playerid);
1097 }
1098 }
1099 return 1;
1100}
1101//==============================================================================
1102CMD:deletepincode(playerid, params[])
1103{
1104 new DBResult:SPAWN_RESULT;
1105 new szQuery[128];
1106 format(szQuery, sizeof(szQuery), "select * from `PINCODES` where `PlayerName` = '%s'", DB_Escape(params));
1107 SPAWN_RESULT = db_query(PIN_DATABASE, szQuery);
1108 if(!IsPlayerAdmin(playerid)) return ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", "You are not authorized to use this command.", "OK", "");
1109 if(strlen(params) <2) return ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", "USAGE: /deletepincode [PlayerName]", "OK", "");
1110 if(db_num_rows(SPAWN_RESULT))
1111 {
1112 new DBResult:CLEAR_RESULT;
1113 new szQuery2[128], tempstr[128];
1114 format(szQuery2, sizeof(szQuery2), "delete from `PINCODES` where `PlayerName` = '%s'", DB_Escape(params));
1115 CLEAR_RESULT = db_query(PIN_DATABASE, szQuery2);
1116 db_free_result(CLEAR_RESULT);
1117 format(tempstr, sizeof(tempstr), "You have succesfully deleted %s 's pin code.", params);
1118 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Succes", tempstr, "OK", "");
1119 }
1120 else
1121 {
1122 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", "This player does not have a pincode assigned to their account.\nNOTE: This is case sensitive. Enter the exact player name.", "OK", "");
1123 }
1124 db_free_result(SPAWN_RESULT);
1125 return 1;
1126}
1127//==============================================================================
1128public KickTimer(playerid)
1129{
1130 Kick(playerid);
1131 return 1;
1132}
1133//==============================================================================
1134//preventing SQL injection - do not touch this
1135stock DB_Escape(text[])
1136{
1137 new
1138 ret[MAX_INI_ENTRY_TEXT * 2],
1139 ch,
1140 i,
1141 j;
1142 while ((ch = text[i++]) && j < sizeof (ret))
1143 {
1144 if (ch == '\'')
1145 {
1146 if (j < sizeof (ret) - 2)
1147 {
1148 ret[j++] = '\'';
1149 ret[j++] = '\'';
1150 }
1151 }
1152 else if (j < sizeof (ret))
1153 {
1154 ret[j++] = ch;
1155 }
1156 else
1157 {
1158 j++;
1159 }
1160 }
1161 ret[sizeof (ret) - 1] = '\0';
1162 return ret;
1163}
1164//==============================================================================
1165CheckAttempt(playerid)
1166{
1167 InputAttempt[playerid] += 1;
1168 if(InputAttempt[playerid] == MAX_LOGIN_ATTEMPTS)
1169 {
1170 HidePinCodePadLogin(playerid);
1171 new str[1024],string2[1024], title[124];
1172 format(title,sizeof(title),"{FFFFFF} %s - Kicked", SERVER_NAME);
1173 format(str,sizeof(str),"{FFFFFF}You are {FF0000}kicked {FFFFFF}from this server!\n\n");
1174 strcat(string2,str);
1175 format(str,sizeof(str),"{FFFFFF}Reason: {FF0000}You have failed to insert your security pin.\n");
1176 strcat(string2,str);
1177 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, title, string2, "OK", "");
1178 SetTimerEx("KickTimer", 1000, false, "i", playerid);
1179 return 0;
1180 }
1181 switch(InputAttempt[playerid])
1182 {
1183 case 1:
1184 {
1185 new strmla[128];
1186 format(strmla, sizeof(strmla), "ERROR: Your pin code is incorrect. This was your first of %d attempts.", MAX_LOGIN_ATTEMPTS);
1187 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", strmla, "OK", "");
1188 }
1189 case 2:
1190 {
1191 new strmla[128];
1192 format(strmla, sizeof(strmla), "ERROR: Your pin code is incorrect. This was your second of %d attempts.", MAX_LOGIN_ATTEMPTS);
1193 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", strmla, "OK", "");
1194 }
1195 case 3:
1196 {
1197 new strmla[128];
1198 format(strmla, sizeof(strmla), "ERROR: Your pin code is incorrect. This was your third of %d attempts.", MAX_LOGIN_ATTEMPTS);
1199 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", strmla, "OK", "");
1200 }
1201 case 4:
1202 {
1203 new strmla[128];
1204 format(strmla, sizeof(strmla), "ERROR: Your pin code is incorrect. This was your fourth of %d attempts.", MAX_LOGIN_ATTEMPTS);
1205 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", strmla, "OK", "");
1206 }
1207 case 5:
1208 {
1209 new strmla[128];
1210 format(strmla, sizeof(strmla), "ERROR: Your pin code is incorrect. You have one more try left.", MAX_LOGIN_ATTEMPTS);
1211 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", strmla, "OK", "");
1212 }
1213 }
1214 return 1;
1215}
1216//==============================================================================
1217GetName(playerid)
1218{
1219 new name[MAX_PLAYER_NAME];
1220 GetPlayerName(playerid, name, sizeof(name));
1221 return name;
1222}
1223//==============================================================================
1224UpdateCharCount(playerid)
1225{
1226 TextDrawHideForPlayer(playerid, Textdraw32[playerid]);
1227 TextDrawShowForPlayer(playerid, Textdraw0);
1228 InputChars[playerid] += 1;
1229 new inputcharstr[34];
1230 switch(InputChars[playerid])
1231 {
1232 case 0:
1233 {
1234 format(inputcharstr, sizeof(inputcharstr), "");
1235 }
1236 case 1:
1237 {
1238 format(inputcharstr, sizeof(inputcharstr), "[]");
1239 }
1240 case 2:
1241 {
1242 format(inputcharstr, sizeof(inputcharstr), "[][]");
1243 }
1244 case 3:
1245 {
1246 format(inputcharstr, sizeof(inputcharstr), "[][][]");
1247 }
1248 case 4:
1249 {
1250 format(inputcharstr, sizeof(inputcharstr), "[][][][]");
1251 TextDrawShowForPlayer(playerid, Textdraw30);
1252
1253 }
1254 default: format(inputcharstr, sizeof(inputcharstr), "[][][][]");
1255 }
1256
1257 Textdraw32[playerid] = TextDrawCreate(256.800048, 169.119995, inputcharstr);
1258 TextDrawLetterSize(Textdraw32[playerid], 0.174999, 1.000000);
1259 TextDrawAlignment(Textdraw32[playerid], 1);
1260 TextDrawColor(Textdraw32[playerid], -1);
1261 TextDrawSetShadow(Textdraw32[playerid], 0);
1262 TextDrawSetOutline(Textdraw32[playerid], 1);
1263 TextDrawBackgroundColor(Textdraw32[playerid], 51);
1264 TextDrawFont(Textdraw32[playerid], 2);
1265 TextDrawSetProportional(Textdraw32[playerid], 1);
1266 return 1;
1267}
1268//==============================================================================
1269UpdateCharCountLogin(playerid)
1270{
1271 TextDrawHideForPlayer(playerid, Textdraw32[playerid]);
1272 TextDrawShowForPlayer(playerid, Textdraw0);
1273 InputChars[playerid] += 1;
1274 new inputcharstr[34];
1275 switch(InputChars[playerid])
1276 {
1277 case 0:
1278 {
1279 format(inputcharstr, sizeof(inputcharstr), "");
1280 }
1281 case 1:
1282 {
1283 format(inputcharstr, sizeof(inputcharstr), "[]");
1284 }
1285 case 2:
1286 {
1287 format(inputcharstr, sizeof(inputcharstr), "[][]");
1288 }
1289 case 3:
1290 {
1291 format(inputcharstr, sizeof(inputcharstr), "[][][]");
1292 }
1293 case 4:
1294 {
1295 format(inputcharstr, sizeof(inputcharstr), "[][][][]");
1296 TextDrawShowForPlayer(playerid, Textdraw44);
1297 }
1298 default: format(inputcharstr, sizeof(inputcharstr), "[][][][]");
1299 }
1300
1301 Textdraw32[playerid] = TextDrawCreate(256.800048, 169.119995, inputcharstr);
1302 TextDrawLetterSize(Textdraw32[playerid], 0.174999, 1.000000);
1303 TextDrawAlignment(Textdraw32[playerid], 1);
1304 TextDrawColor(Textdraw32[playerid], -1);
1305 TextDrawSetShadow(Textdraw32[playerid], 0);
1306 TextDrawSetOutline(Textdraw32[playerid], 1);
1307 TextDrawBackgroundColor(Textdraw32[playerid], 51);
1308 TextDrawFont(Textdraw32[playerid], 2);
1309 TextDrawSetProportional(Textdraw32[playerid], 1);
1310 return 1;
1311}
1312//==============================================================================
1313InsertCharacter(playerid)
1314{
1315 new szQuery[356], szQuery2[356];
1316 new DBResult:INSERT_RESULT;
1317 switch(InputChars[playerid])
1318 {
1319 case 0:
1320 {
1321 SendClientMessage(playerid, -1, "ERROR: Invalid char position.");
1322 }
1323 case 1:
1324 {
1325 format(szQuery2, sizeof(szQuery2), "INSERT INTO `PINCODES` (`PlayerName`, `Pin1`) VALUES('%s', '%d')", DB_Escape(GetName(playerid)), DB_Escape(inputchar[playerid]));
1326 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1327 db_free_result(INSERT_RESULT);
1328 }
1329 case 2:
1330 {
1331 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `Pin2` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1332 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1333 db_free_result(INSERT_RESULT);
1334 }
1335 case 3:
1336 {
1337 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `Pin3` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1338 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1339 db_free_result(INSERT_RESULT);
1340 }
1341 case 4:
1342 {
1343 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `Pin4` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1344 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1345 db_free_result(INSERT_RESULT);
1346
1347 format(szQuery, sizeof(szQuery), "update `PINCODES` set `PinActive` = '1' where `PlayerName` = '%s'", DB_Escape(GetName(playerid)));
1348 INSERT_RESULT = db_query(PIN_DATABASE, szQuery);
1349 db_free_result(INSERT_RESULT);
1350 }
1351 default:
1352 {
1353 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", "ERROR: Your pin code should not be larger then 4 numbers.", "OK", "");
1354 }
1355 }
1356 return 1;
1357}
1358//==============================================================================
1359InsertCharacterLogin(playerid)
1360{
1361 new szQuery2[356];
1362 new DBResult:INSERT_RESULT;
1363 switch(InputChars[playerid])
1364 {
1365 case 0:
1366 {
1367 SendClientMessage(playerid, -1, "ERROR: Invalid char position.");
1368 }
1369 case 1:
1370 {
1371 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `TempPin1` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1372 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1373 db_free_result(INSERT_RESULT);
1374 }
1375 case 2:
1376 {
1377 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `TempPin2` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1378 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1379 db_free_result(INSERT_RESULT);
1380 }
1381 case 3:
1382 {
1383 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `TempPin3` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1384 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1385 db_free_result(INSERT_RESULT);
1386 }
1387 case 4:
1388 {
1389 format(szQuery2, sizeof(szQuery2), "update `PINCODES` set `TempPin4` = '%d' where `PlayerName` = '%s'", DB_Escape(inputchar[playerid]), DB_Escape(GetName(playerid)));
1390 INSERT_RESULT = db_query(PIN_DATABASE, szQuery2);
1391 db_free_result(INSERT_RESULT);
1392 }
1393 default:
1394 {
1395 ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, "Oops...", "ERROR: Your pin code should not be larger then 4 numbers.", "OK", "");
1396 }
1397 }
1398 return 1;
1399}
1400//==============================================================================
1401ShowPinCodePadLogin(playerid)
1402{
1403 TextDrawShowForPlayer(playerid, Textdraw0);
1404 TextDrawShowForPlayer(playerid, Textdraw1);
1405 TextDrawShowForPlayer(playerid, Textdraw3);
1406 TextDrawShowForPlayer(playerid, Textdraw4);
1407 TextDrawShowForPlayer(playerid, Textdraw6);
1408 TextDrawShowForPlayer(playerid, Textdraw7);
1409 TextDrawShowForPlayer(playerid, Textdraw8);
1410 TextDrawShowForPlayer(playerid, Textdraw9);
1411 TextDrawShowForPlayer(playerid, Textdraw10);
1412 TextDrawShowForPlayer(playerid, Textdraw11);
1413 TextDrawShowForPlayer(playerid, Textdraw12);
1414 TextDrawShowForPlayer(playerid, Textdraw13);
1415 TextDrawShowForPlayer(playerid, Textdraw14);
1416 TextDrawShowForPlayer(playerid, Textdraw15);
1417 TextDrawShowForPlayer(playerid, Textdraw16);
1418 TextDrawShowForPlayer(playerid, Textdraw17);
1419 TextDrawShowForPlayer(playerid, Textdraw18);
1420 TextDrawShowForPlayer(playerid, Textdraw33);
1421 TextDrawShowForPlayer(playerid, Textdraw34);
1422 TextDrawShowForPlayer(playerid, Textdraw35);
1423 TextDrawShowForPlayer(playerid, Textdraw36);
1424 TextDrawShowForPlayer(playerid, Textdraw37);
1425 TextDrawShowForPlayer(playerid, Textdraw38);
1426 TextDrawShowForPlayer(playerid, Textdraw39);
1427 TextDrawShowForPlayer(playerid, Textdraw40);
1428 TextDrawShowForPlayer(playerid, Textdraw41);
1429 TextDrawShowForPlayer(playerid, Textdraw42);
1430 TextDrawShowForPlayer(playerid, Textdraw43);
1431 TextDrawShowForPlayer(playerid, Textdraw45);
1432 TextDrawShowForPlayer(playerid, Textdraw46);
1433 TextDrawShowForPlayer(playerid, Textdraw47);
1434 SelectTextDraw(playerid, 0xA3B4C5FF);
1435 IsPlayerInsertingCode[playerid] = 1;
1436 return 1;
1437}
1438//==============================================================================
1439HidePinCodePadLogin(playerid)
1440{
1441 TextDrawHideForPlayer(playerid, Textdraw0);
1442 TextDrawHideForPlayer(playerid, Textdraw1);
1443 TextDrawHideForPlayer(playerid, Textdraw3);
1444 TextDrawHideForPlayer(playerid, Textdraw4);
1445 TextDrawHideForPlayer(playerid, Textdraw6);
1446 TextDrawHideForPlayer(playerid, Textdraw7);
1447 TextDrawHideForPlayer(playerid, Textdraw8);
1448 TextDrawHideForPlayer(playerid, Textdraw9);
1449 TextDrawHideForPlayer(playerid, Textdraw10);
1450 TextDrawHideForPlayer(playerid, Textdraw11);
1451 TextDrawHideForPlayer(playerid, Textdraw12);
1452 TextDrawHideForPlayer(playerid, Textdraw13);
1453 TextDrawHideForPlayer(playerid, Textdraw14);
1454 TextDrawHideForPlayer(playerid, Textdraw15);
1455 TextDrawHideForPlayer(playerid, Textdraw16);
1456 TextDrawHideForPlayer(playerid, Textdraw17);
1457 TextDrawHideForPlayer(playerid, Textdraw18);
1458 TextDrawHideForPlayer(playerid, Textdraw44);
1459 TextDrawHideForPlayer(playerid, Textdraw33);
1460 TextDrawHideForPlayer(playerid, Textdraw34);
1461 TextDrawHideForPlayer(playerid, Textdraw35);
1462 TextDrawHideForPlayer(playerid, Textdraw36);
1463 TextDrawHideForPlayer(playerid, Textdraw37);
1464 TextDrawHideForPlayer(playerid, Textdraw38);
1465 TextDrawHideForPlayer(playerid, Textdraw39);
1466 TextDrawHideForPlayer(playerid, Textdraw40);
1467 TextDrawHideForPlayer(playerid, Textdraw41);
1468 TextDrawHideForPlayer(playerid, Textdraw42);
1469 TextDrawHideForPlayer(playerid, Textdraw43);
1470 TextDrawHideForPlayer(playerid, Textdraw44);
1471 TextDrawHideForPlayer(playerid, Textdraw45);
1472 TextDrawHideForPlayer(playerid, Textdraw46);
1473 TextDrawHideForPlayer(playerid, Textdraw47);
1474 TextDrawHideForPlayer(playerid, Textdraw32[playerid]);
1475 CancelSelectTextDraw(playerid);
1476 IsPlayerInsertingCode[playerid] = 0;
1477 return 1;
1478}
1479//==============================================================================
1480ShowPinCodePad(playerid)
1481{
1482 TextDrawShowForPlayer(playerid, Textdraw0);
1483 TextDrawShowForPlayer(playerid, Textdraw1);
1484 TextDrawShowForPlayer(playerid, Textdraw2);
1485 TextDrawShowForPlayer(playerid, Textdraw3);
1486 TextDrawShowForPlayer(playerid, Textdraw4);
1487 TextDrawShowForPlayer(playerid, Textdraw5);
1488 TextDrawShowForPlayer(playerid, Textdraw6);
1489 TextDrawShowForPlayer(playerid, Textdraw7);
1490 TextDrawShowForPlayer(playerid, Textdraw8);
1491 TextDrawShowForPlayer(playerid, Textdraw9);
1492 TextDrawShowForPlayer(playerid, Textdraw10);
1493 TextDrawShowForPlayer(playerid, Textdraw11);
1494 TextDrawShowForPlayer(playerid, Textdraw12);
1495 TextDrawShowForPlayer(playerid, Textdraw13);
1496 TextDrawShowForPlayer(playerid, Textdraw14);
1497 TextDrawShowForPlayer(playerid, Textdraw15);
1498 TextDrawShowForPlayer(playerid, Textdraw16);
1499 TextDrawShowForPlayer(playerid, Textdraw17);
1500 TextDrawShowForPlayer(playerid, Textdraw18);
1501 TextDrawShowForPlayer(playerid, Textdraw19);
1502 TextDrawShowForPlayer(playerid, Textdraw20);
1503 TextDrawShowForPlayer(playerid, Textdraw21);
1504 TextDrawShowForPlayer(playerid, Textdraw22);
1505 TextDrawShowForPlayer(playerid, Textdraw23);
1506 TextDrawShowForPlayer(playerid, Textdraw24);
1507 TextDrawShowForPlayer(playerid, Textdraw25);
1508 TextDrawShowForPlayer(playerid, Textdraw26);
1509 TextDrawShowForPlayer(playerid, Textdraw27);
1510 TextDrawShowForPlayer(playerid, Textdraw28);
1511 TextDrawShowForPlayer(playerid, Textdraw29);
1512 TextDrawShowForPlayer(playerid, Textdraw31);
1513 SelectTextDraw(playerid, 0xA3B4C5FF);
1514 IsPlayerCreatingCode[playerid] = 1;
1515 return 1;
1516}
1517//==============================================================================
1518HidePinCodePad(playerid)
1519{
1520 TextDrawHideForPlayer(playerid, Textdraw0);
1521 TextDrawHideForPlayer(playerid, Textdraw1);
1522 TextDrawHideForPlayer(playerid, Textdraw2);
1523 TextDrawHideForPlayer(playerid, Textdraw3);
1524 TextDrawHideForPlayer(playerid, Textdraw4);
1525 TextDrawHideForPlayer(playerid, Textdraw5);
1526 TextDrawHideForPlayer(playerid, Textdraw6);
1527 TextDrawHideForPlayer(playerid, Textdraw7);
1528 TextDrawHideForPlayer(playerid, Textdraw8);
1529 TextDrawHideForPlayer(playerid, Textdraw9);
1530 TextDrawHideForPlayer(playerid, Textdraw10);
1531 TextDrawHideForPlayer(playerid, Textdraw11);
1532 TextDrawHideForPlayer(playerid, Textdraw12);
1533 TextDrawHideForPlayer(playerid, Textdraw13);
1534 TextDrawHideForPlayer(playerid, Textdraw14);
1535 TextDrawHideForPlayer(playerid, Textdraw15);
1536 TextDrawHideForPlayer(playerid, Textdraw16);
1537 TextDrawHideForPlayer(playerid, Textdraw17);
1538 TextDrawHideForPlayer(playerid, Textdraw18);
1539 TextDrawHideForPlayer(playerid, Textdraw19);
1540 TextDrawHideForPlayer(playerid, Textdraw20);
1541 TextDrawHideForPlayer(playerid, Textdraw21);
1542 TextDrawHideForPlayer(playerid, Textdraw22);
1543 TextDrawHideForPlayer(playerid, Textdraw23);
1544 TextDrawHideForPlayer(playerid, Textdraw24);
1545 TextDrawHideForPlayer(playerid, Textdraw25);
1546 TextDrawHideForPlayer(playerid, Textdraw26);
1547 TextDrawHideForPlayer(playerid, Textdraw27);
1548 TextDrawHideForPlayer(playerid, Textdraw28);
1549 TextDrawHideForPlayer(playerid, Textdraw29);
1550 TextDrawHideForPlayer(playerid, Textdraw30);
1551 TextDrawHideForPlayer(playerid, Textdraw31);
1552 TextDrawHideForPlayer(playerid, Textdraw32[playerid]);
1553 CancelSelectTextDraw(playerid);
1554 IsPlayerCreatingCode[playerid] = 0;
1555 return 1;
1556}