View difference between Paste ID: xvarMinx and x4cmW0v8
SHOW: | | - or go back to the newest paste.
1
#include <a_samp> //Carrega include a_samp
2
#include <streamer> //Carrega include streamer
3
#define PRECO_AIRDROP   2000 //Aqui esta o preço que custa um AirDrop (Mude para o preço preferido)
4
#define BALAS_KIT       100 //Aqui coloque a quantidade de balas que o player recebera para cada arma (no meu caso coloquei 100)
5
#define COR_SELECIONAR  0xFF230AFF //Aqui define a cor que a textdraw ficara quando o mouse passar por cima (mude para a preferida)
6
new Text:ADTD[13][MAX_PLAYERS]; //Variavel dos TextDraws
7
new bool:PediuAirDrop[MAX_PLAYERS]; //Variavel boliviana que verifica se o player ja pediu ou não um AirDrop
8
new TaNoPainel[MAX_PLAYERS]; //Variavel que verifica se o player esta no painel
9
new KitEscolhido[MAX_PLAYERS]; //Variavel que seta o kit que o player escolheu
10
new AirDropO[MAX_PLAYERS]; //Variavel de identificação do objeto do AirDrop!
11
forward SaqueandoAirDrop(playerid);
12
new SaqueandoAD[MAX_PLAYERS]; //Timer
13
new bool:Saqueando[MAX_PLAYERS];//Variavel que define se player esta saqueando ou não
14
 
15
 
16
public OnGameModeInit()
17
{
18
    //Cria os textdraws do painel..
19
    for(new i=0; i<MAX_PLAYERS; i++)
20
    {
21
        ADTD[0][i] = TextDrawCreate(464.430450, 102.416671, "usebox");
22
        TextDrawLetterSize(ADTD[0][i], 0.000000, 33.711109);
23
        TextDrawTextSize(ADTD[0][i], 123.563690, 0.000000);
24
        TextDrawAlignment(ADTD[0][i], 1);
25
        TextDrawColor(ADTD[0][i], 0);
26
        TextDrawUseBox(ADTD[0][i], true);
27
        TextDrawBoxColor(ADTD[0][i], 102);
28
        TextDrawSetShadow(ADTD[0][i], 0);
29
        TextDrawSetOutline(ADTD[0][i], 0);
30
        TextDrawFont(ADTD[0][i], 0);
31
 
32
        ADTD[1][i] = TextDrawCreate(460.213775, 107.666671, "usebox");
33
        TextDrawLetterSize(ADTD[1][i], 0.000000, 32.609256);
34
        TextDrawTextSize(ADTD[1][i], 127.780380, 0.000000);
35
        TextDrawAlignment(ADTD[1][i], 1);
36
        TextDrawColor(ADTD[1][i], 0);
37
        TextDrawUseBox(ADTD[1][i], true);
38
        TextDrawBoxColor(ADTD[1][i], 102);
39
        TextDrawSetShadow(ADTD[1][i], 0);
40
        TextDrawSetOutline(ADTD[1][i], 0);
41
        TextDrawFont(ADTD[1][i], 0);
42
 
43
        ADTD[2][i] = TextDrawCreate(383.376403, 114.666664, "usebox");
44
        TextDrawLetterSize(ADTD[2][i], 0.000000, 1.822221);
45
        TextDrawTextSize(ADTD[2][i], 202.743774, 0.000000);
46
        TextDrawAlignment(ADTD[2][i], 1);
47
        TextDrawColor(ADTD[2][i], 0);
48
        TextDrawUseBox(ADTD[2][i], true);
49
        TextDrawBoxColor(ADTD[2][i], 16711935);
50
        TextDrawSetShadow(ADTD[2][i], 0);
51
        TextDrawSetOutline(ADTD[2][i], 0);
52
        TextDrawFont(ADTD[2][i], 0);
53
 
54
        ADTD[3][i] = TextDrawCreate(260.497833, 114.916671, "AirDrop");
55
        TextDrawLetterSize(ADTD[3][i], 0.449999, 1.600000);
56
        TextDrawAlignment(ADTD[3][i], 1);
57
        TextDrawColor(ADTD[3][i], -1);
58
        TextDrawSetShadow(ADTD[3][i], 0);
59
        TextDrawSetOutline(ADTD[3][i], 1);
60
        TextDrawBackgroundColor(ADTD[3][i], 51);
61
        TextDrawFont(ADTD[3][i], 1);
62
        TextDrawSetProportional(ADTD[3][i], 1);
63
 
64
        ADTD[4][i] = TextDrawCreate(206.149261, 186.083328, "M4,Sniper,Pistola,Kit Medico");
65
        TextDrawLetterSize(ADTD[4][i], 0.308975, 1.401666);
66
        TextDrawAlignment(ADTD[4][i], 1);
67
        TextDrawColor(ADTD[4][i], -1);
68
        TextDrawSetShadow(ADTD[4][i], 0);
69
        TextDrawSetOutline(ADTD[4][i], 1);
70
        TextDrawBackgroundColor(ADTD[4][i], 51);
71
        TextDrawFont(ADTD[4][i], 2);
72
        TextDrawSetProportional(ADTD[4][i], 1);
73
 
74
        ADTD[5][i] = TextDrawCreate(201.121536, 160.750030, "usebox");
75
        TextDrawLetterSize(ADTD[5][i], 0.000000, 6.229629);
76
        TextDrawTextSize(ADTD[5][i], 146.521240, 0.000000);
77
        TextDrawAlignment(ADTD[5][i], 1);
78
        TextDrawColor(ADTD[5][i], 0);
79
        TextDrawUseBox(ADTD[5][i], true);
80
        TextDrawBoxColor(ADTD[5][i], -1);
81
        TextDrawSetShadow(ADTD[5][i], 0);
82
        TextDrawSetOutline(ADTD[5][i], 0);
83
        TextDrawFont(ADTD[5][i], 0);
84
 
85
        ADTD[6][i] = TextDrawCreate(153.674942, 164.499984, "K-1");
86
        TextDrawLetterSize(ADTD[6][i], 0.772811, 5.432499);
87
        TextDrawAlignment(ADTD[6][i], 1);
88
        TextDrawColor(ADTD[6][i], -1);
89
        TextDrawSetShadow(ADTD[6][i], 0);
90
        TextDrawSetOutline(ADTD[6][i], 1);
91
        TextDrawBackgroundColor(ADTD[6][i], 51);
92
        TextDrawFont(ADTD[6][i], 1);
93
        TextDrawSetProportional(ADTD[6][i], 1);
94
        TextDrawSetSelectable(ADTD[6][i], 1);
95
        TextDrawTextSize(ADTD[6][i], 192.158142, 40.000000);
96
 
97
        ADTD[7][i] = TextDrawCreate(201.653015, 244.583343, "usebox");
98
        TextDrawLetterSize(ADTD[7][i], 0.000000, 6.229629);
99
        TextDrawTextSize(ADTD[7][i], 146.052719, 0.000000);
100
        TextDrawAlignment(ADTD[7][i], 1);
101
        TextDrawColor(ADTD[7][i], 0);
102
        TextDrawUseBox(ADTD[7][i], true);
103
        TextDrawBoxColor(ADTD[7][i], -1);
104
        TextDrawSetShadow(ADTD[7][i], 0);
105
        TextDrawSetOutline(ADTD[7][i], 0);
106
        TextDrawFont(ADTD[7][i], 0);
107
 
108
        ADTD[8][i] = TextDrawCreate(152.332336, 247.750015, "K-2");
109
        TextDrawLetterSize(ADTD[8][i], 0.772811, 5.432499);
110
        TextDrawAlignment(ADTD[8][i], 1);
111
        TextDrawColor(ADTD[8][i], -1);
112
        TextDrawSetShadow(ADTD[8][i], 0);
113
        TextDrawSetOutline(ADTD[8][i], 1);
114
        TextDrawBackgroundColor(ADTD[8][i], 51);
115
        TextDrawFont(ADTD[8][i], 1);
116
        TextDrawSetProportional(ADTD[8][i], 1);
117
        TextDrawSetSelectable(ADTD[8][i], 1);
118
        TextDrawTextSize(ADTD[8][i], 192.158142, 40.000000);
119
 
120
        ADTD[9][i] = TextDrawCreate(205.275177, 265.833312, "m4, Sniper, Pistola, Kit Medico, Colete");
121
        TextDrawLetterSize(ADTD[9][i], 0.262122, 1.740000);
122
        TextDrawAlignment(ADTD[9][i], 1);
123
        TextDrawColor(ADTD[9][i], -1);
124
        TextDrawSetShadow(ADTD[9][i], 0);
125
        TextDrawSetOutline(ADTD[9][i], 1);
126
        TextDrawBackgroundColor(ADTD[9][i], 51);
127
        TextDrawFont(ADTD[9][i], 2);
128
        TextDrawSetProportional(ADTD[9][i], 1);
129
 
130
        ADTD[10][i] = TextDrawCreate(202.653015, 328.416717, "usebox");
131
        TextDrawLetterSize(ADTD[10][i], 0.000000, 6.229629);
132
        TextDrawTextSize(ADTD[10][i], 146.052719, 0.000000);
133
        TextDrawAlignment(ADTD[10][i], 1);
134
        TextDrawColor(ADTD[10][i], 0);
135
        TextDrawUseBox(ADTD[10][i], true);
136
        TextDrawBoxColor(ADTD[10][i], -1);
137
        TextDrawSetShadow(ADTD[10][i], 0);
138
        TextDrawSetOutline(ADTD[10][i], 0);
139
        TextDrawFont(ADTD[10][i], 0);
140
 
141
        ADTD[11][i] = TextDrawCreate(151.926773, 332.750030, "K-3");
142
        TextDrawLetterSize(ADTD[11][i], 0.772811, 5.432499);
143
        TextDrawAlignment(ADTD[11][i], 1);
144
        TextDrawColor(ADTD[11][i], -1);
145
        TextDrawSetShadow(ADTD[11][i], 0);
146
        TextDrawSetOutline(ADTD[11][i], 1);
147
        TextDrawBackgroundColor(ADTD[11][i], 51);
148
        TextDrawFont(ADTD[11][i], 1);
149
        TextDrawSetProportional(ADTD[11][i], 1);
150
        TextDrawSetSelectable(ADTD[11][i], 1);
151
        TextDrawTextSize(ADTD[11][i], 192.158142, 40.000000);
152
 
153
        ADTD[12][i] = TextDrawCreate(204.869613, 351.416656, "Ak47, Sniper, Shotgun, Kit Medico, Colete");
154
        TextDrawLetterSize(ADTD[12][i], 0.245256, 1.751666);
155
        TextDrawAlignment(ADTD[12][i], 1);
156
        TextDrawColor(ADTD[12][i], -1);
157
        TextDrawSetShadow(ADTD[12][i], 0);
158
        TextDrawSetOutline(ADTD[12][i], 1);
159
        TextDrawBackgroundColor(ADTD[12][i], 51);
160
        TextDrawFont(ADTD[12][i], 2);
161
        TextDrawSetProportional(ADTD[12][i], 1);
162
    }
163
    return 1;
164
}
165
 
166
public OnPlayerUpdate(playerid)
167
{
168
    if(PediuAirDrop[playerid] == true)
169
    {
170
        if(Saqueando[playerid] == true)
171
        {
172
            return 1;
173
        }
174
        new Float:ObjetoP[3];
175
        GetDynamicObjectPos(AirDropO[playerid], ObjetoP[0], ObjetoP[1], ObjetoP[2]);
176
        if(IsPlayerInRangeOfPoint(playerid, 10.0, ObjetoP[0], ObjetoP[1], ObjetoP[2]))
177
        {
178
            GameTextForPlayer(playerid,"~w~Air~g~Drop~w~~n~Aperte ~r~F~w~ para saquea-lo",5000,1);
179
        }
180
    }
181
    return 1;
182
}
183
 
184
public OnPlayerClickTextDraw(playerid, Text:clickedid)
185
{
186
    if(clickedid == Text:INVALID_TEXT_DRAW)
187
    {
188
        if(TaNoPainel[playerid] == 1)
189
        {
190
            SelectTextDraw(playerid, COR_SELECIONAR);
191
            return 1;
192
        }
193
    }
194
    if(clickedid == Text:ADTD[6][playerid])
195
    {
196
        if(GetPlayerMoney(playerid) >= PRECO_AIRDROP)
197
        {
198
            if(PediuAirDrop[playerid] == true)
199
            {
200
                SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você ja pediu um AirDrop! aguarde..");
201
                return 1;
202
            }
203
            new Float:PosP[3];
204
            KitEscolhido[playerid] = 1;
205
            GetPlayerPos(playerid, PosP[0], PosP[1], PosP[2]);
206
            AirDropO[playerid] = CreateDynamicObject(18849, PosP[0], PosP[1], PosP[2]+100, 0.0, 0.0, 0.0);
207
            MoveDynamicObject(AirDropO[playerid], PosP[0], PosP[1], PosP[2]+6, 3.0);
208
            SendClientMessage(playerid, -1, "< {00FF00}!{FFFFFF} > Você selecionou K-1! aguarde até o AirDrop cair.");
209
            PediuAirDrop[playerid] = true;
210
            TextDrawBoxColor(ADTD[2][playerid], 0xFF230AFF);
211
            FecharADP(playerid);
212
            return 1;
213
        }
214
        else
215
        {
216
            SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você não tem dinheiro suficiente para comprar este Kit!");
217
        }
218
        return 1;
219
    }
220
    if(clickedid == Text:ADTD[8][playerid])
221
    {
222
        if(GetPlayerMoney(playerid) >= PRECO_AIRDROP)
223
        {
224
            if(PediuAirDrop[playerid] == true)
225
            {
226
                SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você ja pediu um AirDrop! aguarde..");
227
                return 1;
228
            }
229
            new Float:PosP[3];
230
            KitEscolhido[playerid] = 2;
231
            GetPlayerPos(playerid, PosP[0], PosP[1], PosP[2]);
232
            AirDropO[playerid] = CreateDynamicObject(18849, PosP[0], PosP[1], PosP[2]+100, 0.0, 0.0, 0.0);
233
            MoveDynamicObject(AirDropO[playerid], PosP[0], PosP[1], PosP[2]+6, 3.0);
234
            PediuAirDrop[playerid] = true;
235
            SendClientMessage(playerid, -1, "< {00FF00}!{FFFFFF} > Você selecionou K-2! aguarde até o AirDrop cair.");
236
            TextDrawBoxColor(ADTD[2][playerid], 0xFF230AFF);
237
            FecharADP(playerid);
238
            return 1;
239
        }
240
        else
241
        {
242
            SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você não tem dinheiro suficiente para comprar este Kit!");
243
        }
244
        return 1;
245
    }
246
    if(clickedid == Text:ADTD[11][playerid])
247
    {
248
        if(GetPlayerMoney(playerid) >= PRECO_AIRDROP)
249
        {
250
            if(PediuAirDrop[playerid] == true)
251
            {
252
                SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você ja pediu um AirDrop! aguarde..");
253
                return 1;
254
            }
255
            new Float:PosP[3];
256
            KitEscolhido[playerid] = 3;
257
            GetPlayerPos(playerid, PosP[0], PosP[1], PosP[2]);
258
            AirDropO[playerid] = CreateDynamicObject(18849, PosP[0], PosP[1], PosP[2]+100, 0.0, 0.0, 0.0);
259
            MoveDynamicObject(AirDropO[playerid], PosP[0], PosP[1], PosP[2]+6, 3.0);
260
            PediuAirDrop[playerid] = true;
261
            SendClientMessage(playerid, -1, "< {00FF00}!{FFFFFF} > Você selecionou K-3! aguarde até o AirDrop cair.");
262
            TextDrawBoxColor(ADTD[2][playerid], 0xFF230AFF);
263
            FecharADP(playerid);
264
            return 1;
265
        }
266
        else
267
        {
268
            SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você não tem dinheiro suficiente para comprar este Kit!");
269
        }
270
        return 1;
271
    }
272
    return 1;
273
}
274
 
275
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
276
{
277
    if(newkeys == 16)
278
    {
279
        if(Saqueando[playerid] == true)
280
        {
281
            SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você ja está saqueando o AirDrop!");
282
            return 1;
283
        }
284
        if(PediuAirDrop[playerid] == true)
285
        {
286
            new Float:ObjetoP[3];
287
            GetDynamicObjectPos(AirDropO[playerid], ObjetoP[0], ObjetoP[1], ObjetoP[2]);
288
            if(IsPlayerInRangeOfPoint(playerid, 10.0, ObjetoP[0], ObjetoP[1], ObjetoP[2]))
289
            {
290
                ApplyAnimation(playerid, "BOMBER", "BOM_Plant_Crouch_In", 4.0, 1, 0, 0, 0, 0);
291
                SaqueandoAD[playerid] = SetTimerEx("SaqueandoAirDrop", 20000, false, "i", playerid);
292
                GameTextForPlayer(playerid,"~g~Saqueando~w~~n~Aguarde",20000,1);
293
                Saqueando[playerid] = true;
294
                GameTextForPlayer(playerid,"~g~Saqueando~w~~n~Aguarde",20000,1);
295
            }
296
        }
297
    }
298
    return 1;
299
}
300
 
301
public OnPlayerCommandText(playerid, cmdtext[])
302
{
303
    //---------=============[ COMANDOS DO SISTEMA ]=================-------------
304
    if (strcmp("/airdrop", cmdtext, true, 10) == 0)
305
    {
306
        if(IsPlayerInAnyVehicle(playerid)) //Caso player esteja em um carro no momento que digitou o comando
307
        {
308
            SendClientMessage(playerid, -1, "< {FF0000}!{FFFFFF} > Você não pode usar este comando em um carro!"); //Envia mensagem avisando o player
309
            return 1;
310
        }
311
        if(TaNoPainel[playerid] == 0) //Se ele não estiver no painel no caso 0 ..
312
        {
313
            AbrirADP(playerid);//Chama a função de abrir o painel
314
        }
315
        else if(TaNoPainel[playerid] == 1) //Se ele estiver no painel no caso 1 ..
316
        {
317
            FecharADP(playerid);//Chama a função de fechar o painel
318
            return 1;
319
        }
320
        return 1;
321
    }
322
    return 0;
323
}
324
stock AbrirADP(playerid)//Função para abrir o painel!
325
{
326
    TaNoPainel[playerid] = 1; //Seta a variavel que verifica se esta no painel para 1
327
    SelectTextDraw(playerid, COR_SELECIONAR); //Coloca o ponteiro do mouse na tela do jogador (para mudar de cor mude a cor de COR_SELECIONAR)
328
    TextDrawShowForPlayer(playerid, ADTD[0][playerid]);
329
    TextDrawShowForPlayer(playerid, ADTD[1][playerid]);
330
    TextDrawShowForPlayer(playerid, ADTD[2][playerid]);
331
    TextDrawShowForPlayer(playerid, ADTD[3][playerid]);
332
    TextDrawShowForPlayer(playerid, ADTD[4][playerid]);
333
    TextDrawShowForPlayer(playerid, ADTD[5][playerid]);
334
    TextDrawShowForPlayer(playerid, ADTD[6][playerid]);
335
    TextDrawShowForPlayer(playerid, ADTD[7][playerid]);
336
    TextDrawShowForPlayer(playerid, ADTD[8][playerid]);
337
    TextDrawShowForPlayer(playerid, ADTD[9][playerid]);
338
    TextDrawShowForPlayer(playerid, ADTD[10][playerid]);
339
    TextDrawShowForPlayer(playerid, ADTD[11][playerid]);
340
    TextDrawShowForPlayer(playerid, ADTD[12][playerid]);
341
    return 1;
342
}
343
stock FecharADP(playerid) //Função para fechar o painel
344
{
345
    TaNoPainel[playerid] = 0; //Seta a variavel de verificar se esta no painel para 0
346
    CancelSelectTextDraw(playerid); //Retira o ponteiro do mouse
347
    TextDrawHideForPlayer(playerid, ADTD[0][playerid]);
348
    TextDrawHideForPlayer(playerid, ADTD[1][playerid]);
349
    TextDrawHideForPlayer(playerid, ADTD[2][playerid]);
350
    TextDrawHideForPlayer(playerid, ADTD[3][playerid]);
351
    TextDrawHideForPlayer(playerid, ADTD[4][playerid]);
352
    TextDrawHideForPlayer(playerid, ADTD[5][playerid]);
353
    TextDrawHideForPlayer(playerid, ADTD[6][playerid]);
354
    TextDrawHideForPlayer(playerid, ADTD[7][playerid]);
355
    TextDrawHideForPlayer(playerid, ADTD[8][playerid]);
356
    TextDrawHideForPlayer(playerid, ADTD[9][playerid]);
357
    TextDrawHideForPlayer(playerid, ADTD[10][playerid]);
358
    TextDrawHideForPlayer(playerid, ADTD[11][playerid]);
359
    TextDrawHideForPlayer(playerid, ADTD[12][playerid]);
360
    return 1;
361
}
362
public SaqueandoAirDrop(playerid)
363
{
364
    KillTimer(SaqueandoAD[playerid]);
365
    DarKit(playerid);
366
    ClearAnimations(playerid);
367
    return 1;
368
}
369
stock DarKit(playerid)
370
{
371
    if(KitEscolhido[playerid] == 1)
372
    {
373
        GivePlayerWeapon(playerid, 24,BALAS_KIT);
374
        GivePlayerWeapon(playerid, 31,BALAS_KIT);
375
        GivePlayerWeapon(playerid, 34,BALAS_KIT);
376
        new Float:Vida[MAX_PLAYERS];
377
        GetPlayerHealth(playerid, Vida[playerid]);
378
        SetPlayerHealth(playerid, Vida[playerid]+40);
379
        PediuAirDrop[playerid] = false;
380
        KitEscolhido[playerid] = 0;
381
        Saqueando[playerid] = false;
382
        TextDrawBoxColor(ADTD[2][playerid], 16711935);
383
        return 1;
384
    }
385
    if(KitEscolhido[playerid] == 2)
386
    {
387
        GivePlayerWeapon(playerid, 24,BALAS_KIT);
388
        GivePlayerWeapon(playerid, 31,BALAS_KIT);
389
        GivePlayerWeapon(playerid, 34,BALAS_KIT);
390
        new Float:Vida[MAX_PLAYERS],Float:Colete[MAX_PLAYERS];
391
        GetPlayerHealth(playerid, Vida[playerid]);
392
        GetPlayerArmour(playerid, Colete[playerid]);
393
        SetPlayerHealth(playerid, Vida[playerid]+40);
394
        SetPlayerArmour(playerid, Colete[playerid]+100);
395
        PediuAirDrop[playerid] = false;
396
        KitEscolhido[playerid] = 0;
397
        Saqueando[playerid] = false;
398
        TextDrawBoxColor(ADTD[2][playerid], 16711935);
399
        return 1;
400
    }
401
    if(KitEscolhido[playerid] == 3)
402
    {
403
        GivePlayerWeapon(playerid, 25,BALAS_KIT);
404
        GivePlayerWeapon(playerid, 30,BALAS_KIT);
405
        GivePlayerWeapon(playerid, 34,BALAS_KIT);
406
        new Float:Vida[MAX_PLAYERS],Float:Colete[MAX_PLAYERS];
407
        GetPlayerHealth(playerid, Vida[playerid]);
408
        GetPlayerArmour(playerid, Colete[playerid]);
409
        SetPlayerHealth(playerid, Vida[playerid]+40);
410
        SetPlayerArmour(playerid, Colete[playerid]+100);
411
        PediuAirDrop[playerid] = false;
412
        KitEscolhido[playerid] = 0;
413
        Saqueando[playerid] = false;
414
        TextDrawBoxColor(ADTD[2][playerid], 16711935);
415
        return 1;
416
    }
417
    return 1;
418
}
419
420
421
// Para funcionar, é necessário a [INCLUDE] Streamer;
422
// www.homehots.com.br
423
//Todos os direitos reservados a ZéPaulo pela criação do filterscript.