[Include] MenuStore (Crie lojas utilizando TextDraws)
#21

Massa, gostei do Cart. Bom trabalho.
Reply
#22

Versгo 3.0

- Algumas PlayerTDs foram transformadas em GlobalTDs
- Feitas duas pequenas correзхes
Reply
#23

Cada vez fica melhor, mano pode dar um exemplo de como faz com carros?
Reply
#24

Quote:
Originally Posted by Marllun
Посмотреть сообщение
Cada vez fica melhor, mano pode dar um exemplo de como faz com carros?
https://sampwiki.blast.hk/wiki/Vehicle_Model_ID_List

Sу vocк pegar o cуdigo das armas por exemplo, e trocar os models pelos dos veнculos.

Na callback de resposta vocк faz algo parecido a:

PHP код:
Float:xFloat:yFloat:z;
GetPlayerPos(playeridxyz);
CreateVehicle(modelidxyz, -1, -160); 
Problema que se a pessoa comprar mais de um veнculo, eles serгo criados no mesmo lugar.
Nгo tem nenhum parвmetro na include (ainda) que limita os itens no carrinho. Mas em breve vou adicionar isso.
Reply
#25

Obrigado, vou testar aqui.
Reply
#26

Conseguir fazer, tem alguns problemas com vezes de veнculos que pode ser comprado. E quando comprar mais de um veнculo e eles nascerem no mesmo lugar.
PHP код:
#include <a_samp>
#include <zcmd>
#include <MenuStore>
new car;
CMD:shop(playeridparams[])
{
    if(
GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
    {
    
MenuStore_AddItem(playerid1400"Landstalker"200""200);
    
MenuStore_AddItem(playerid2401"Bravura"500""200);
    
MenuStore_AddItem(playerid3402"Buffalo"900"");
    
MenuStore_AddItem(playerid4403"Linerunner"400"");
    
MenuStore_AddItem(playerid5404"Perennial"200"");
    
MenuStore_AddItem(playerid6405"Sentinel"300"");
    
MenuStore_AddItem(playerid7408"Trashmaster"200"");
    
MenuStore_AddItem(playerid8410"Manana"250"");
    
MenuStore_AddItem(playerid9411"Infernus"5000"");
    
MenuStore_AddItem(playerid10412"Voodoo"1300"");
    
MenuStore_AddItem(playerid11413"Pony"200"");
    
MenuStore_AddItem(playerid12414"Mule"350"");
    
MenuStore_AddItem(playerid13415"Cheetah"2600"");
    
MenuStore_AddItem(playerid14418"Moonbeam"400"");
    
MenuStore_AddItem(playerid15420"Taxi"450"");
    
MenuStore_Show(playeridWeapon_Shop"Shop Veiculos");
    }
    else
    {
    
SendClientMessage(playerid, -1"Vocк nгo pode estб dentro de uma veнculo.");
    }
    return 
1;
}
Store:Weapon_Shop(playeridresponseitemidmodelidpriceamountitemname[])
{
    new 
Float:xFloat:yFloat:zFloat:a;
    if(!
response)
        return 
true;
    if(
GetPlayerMoney(playerid) < price)
        return 
SendClientMessage(playerid, -1"Vocк nгo tem dinheiro suficiente.");
    if(
amount == 1) {
        
        
GetPlayerPos(playeridxyz);
         
car AddStaticVehicle(modelidxy,za, -1, -1);
        
PutPlayerInVehicle(playerid,car,0);
        
SetPlayerFacingAngle(playerida);
        
SetCameraBehindPlayer(playerid);
    }
    else {
        
GetPlayerPos(playeridxyz);
        
car AddStaticVehicle(modelidxy,za, -1, -1);
         
PutPlayerInVehicle(playerid,car,0);
         
SetPlayerFacingAngle(playerida);
         
SetCameraBehindPlayer(playerid);
    }
    new 
string[128];
    
format(string128"Vocк comprou %dx %s"amountitemname);
    
SendClientMessage(playerid, -1string);
    
GivePlayerMoney(playerid, -price);
    return 
true;
}
stock GetWeaponIDFromModel(modelid)
{
    new 
idvehicle;
    switch(
modelid)
    {
        case 
331idvehicle 400;
        case 
333idvehicle 401;
        case 
334idvehicle 402;
        case 
335idvehicle 403;
        case 
336idvehicle 404;
        case 
337idvehicle 405;
        case 
338idvehicle 408;
        case 
339idvehicle 410;
        case 
341idvehicle 411;
        case 
321idvehicle 412;
        case 
325idvehicle 413;
        case 
326idvehicle 414;
        case 
342idvehicle 415;
        case 
343idvehicle 418;
        case 
344idvehicle 420;
        case 
346idvehicle 421;
        case 
347idvehicle 422;
        case 
348idvehicle 423;
        case 
349idvehicle 424;
        case 
350idvehicle 425;
        case 
351idvehicle 428;
        case 
352idvehicle 430;
        case 
353idvehicle 431;
        case 
355idvehicle 432;
        case 
356idvehicle 433;
        case 
372idvehicle 434;
        case 
357idvehicle 435;
        case 
358idvehicle 438;
        case 
359idvehicle 440;
        case 
360idvehicle 441;
        case 
361idvehicle 442;
        case 
362idvehicle 443;
        case 
363idvehicle 444;
        case 
365idvehicle 445;
        case 
366idvehicle 448;
        case 
367idvehicle 450;
    }
    return 
idvehicle;

Reply
#27

Nгo sei se й sу no meu compilador, mas o de vocкs demoram pra compilar?
E olhe que o que tenho apenas, й as diretivas, sim, eu sу tenho isso no script por completo.:
PHP код:
#include <a_samp>
#include <MenuStore> 
Код:
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase

[Finished in 6.1s]
Reply
#28

Quote:
Originally Posted by Pool
Посмотреть сообщение
Nгo sei se й sу no meu compilador, mas o de vocкs demoram pra compilar?
E olhe que o que tenho apenas, й as diretivas, sim, eu sу tenho isso no script por completo.:
PHP код:
#include <a_samp>
#include <MenuStore> 
Код:
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase

[Finished in 6.1s]
A demora й normal pois a include usa uma array 3rd:

static ms_Items[MAX_PLAYERS][MS_MAX_ITEMS][enum_ms_Items];

O que eu recomendo й que vocк diminua o MAX_PLAYERS, o default que vem й 1000:

#undef MAX_PLAYERS
#define MAX_PLAYERS 100

Obs.: A include nгo vai prejudicar o desempenho do GameMod, apenas irб aumentar o tamanho do AMX dependendo do valor do MAX_PLAYERS
Reply
#29

Quote:
Originally Posted by CaioTJF
Посмотреть сообщение
A demora й normal pois a include usa uma array 3rd:

static ms_Items[MAX_PLAYERS][MS_MAX_ITEMS][enum_ms_Items];

O que eu recomendo й que vocк diminua o MAX_PLAYERS, o default que vem й 1000:

#undef MAX_PLAYERS
#define MAX_PLAYERS 100

Obs.: A include nгo vai prejudicar o desenho do GameMod, apenas irб aumentar o tamanho do AMX dependendo do valor do MAX_PLAYERS
Removi a definiзгo, de MAX_PLAYERS e a defini como o padrгo do meu servidor.
Enfim, nгo resultou em mudanзas, talvez seja isso mesmo. Criou uma variбvel com trкs locaзхes.
Reply
#30

Quote:
Originally Posted by Pool
Посмотреть сообщение
Removi a definiзгo, de MAX_PLAYERS e a defini como o padrгo do meu servidor.
Enfim, nгo resultou em mudanзas, talvez seja isso mesmo. Criou uma variбvel com trкs locaзхes.
Qual compilador vocк estб usando?

Recomendo usar o do zeex ou o russo:

Zeex: https://github.com/Zeex/pawn/releases
Russo: http://gta-samp.com/files/pawncc.exe

obs.: O russo й SUPER rбpido.

Mas sу de vocк diminuir o tamanho do MAX_PLAYERS, vai dar uma boa otimizada, mesmo demorando.
Reply
#31

Fiz o test numa gm de 3200 linhas e compilou em 3.0 seg

PHP код:
#include <a_samp>
#include <dof2>
#include <zcmd>
#include <foreach>
#include <sscanf2>
#include <MenuStore>
#include <MinhasIncludes/newss>
#include <MinhasIncludes/cmd>
#undef MAX_PLAYERS
#define MAX_PLAYERS 300 
Reply
#32

Caio, no cart(carro de compras) coloca um limite de 4 ou 5 que ficar proporcional na box ou se for adicionar um limite maior seria legal colocar uma barra de rolagem (scrollbar).
Reply
#33

Quote:
Originally Posted by CaioTJF
Посмотреть сообщение
Qual compilador vocк estб usando?

Recomendo usar o do zeex ou o russo:

Zeex: https://github.com/Zeex/pawn/releases
Russo: http://gta-samp.com/files/pawncc.exe

obs.: O russo й SUPER rбpido.

Mas sу de vocк diminuir o tamanho do MAX_PLAYERS, vai dar uma boa otimizada, mesmo demorando.
Eu estava utilizando o compilador padrгo no pawn, agora baixei o russo do qual vocк disse ser rбpido e a mudanзa foi enorme!
PHP код:
#include <a_samp>
#include <MenuStore>
/* ------------------------------------ */
Pawn compiler 3.2.3664              Copyright (c1997-2017ITB CompuPhase
[Finished in 0.3s
Obrigado, vai dar atй uma melhorada quando eu for compilar algum gamemode/filterscript grande...
Reply
#34

Quote:
Originally Posted by Pool
Посмотреть сообщение
Eu estava utilizando o compilador padrгo no pawn, agora baixei o russo do qual vocк disse ser rбpido e a mudanзa foi enorme!
PHP код:
#include <a_samp>
#include <MenuStore>
/* ------------------------------------ */
Pawn compiler 3.2.3664              Copyright (c1997-2017ITB CompuPhase
[Finished in 0.3s
Obrigado, vai dar atй uma melhorada quando eu for compilar algum gamemode/filterscript grande...
Realmente, jб ouvi falar sobre esse compilador mas nunca achei que seria uma diferenзa absurda dessa, fiz um teste em um script que demorava 46s pra compilar usando esse compilador russo nгo passou nem de 10s foi cerca de 5 ~ 7 segundos, uma vantagem de quase 39 segundos.
Reply
#35

Comigo ele dar error no dof2
Reply
#36

Quote:
Originally Posted by Marllun
Посмотреть сообщение
Comigo ele dar error no dof2
O que DOF2 tem em parentesco com um filterscript com textdraws?
Reply
#37

Falei que o compilador russo faz o dof2 dar error
Reply
#38

Quote:
Originally Posted by Marllun
Посмотреть сообщение
Falei que o compilador russo faz o dof2 dar error
Nгo resulta em erros, e sim avisos.
Adicione um pragma para remover os avisos, como eu fiz abaixo.:
PHP код:
#include <a_samp>
#include <dof2>
#include <MenuStore>
#pragma warning disable 238 
Reply
#39

Quote:
Originally Posted by CaioTJF
Посмотреть сообщение
Qual compilador vocк estб usando?

Recomendo usar o do zeex ou o russo:

Zeex: https://github.com/Zeex/pawn/releases
Russo: http://gta-samp.com/files/pawncc.exe

obs.: O russo й SUPER rбpido.

Mas sу de vocк diminuir o tamanho do MAX_PLAYERS, vai dar uma boa otimizada, mesmo demorando.
Esse compilador russo й EXCELENTE! Eu demorava 40s para compilar minha gm, agr compila em menos de 10 segundos.

@Topic

Уtimo sistema, parabйns!
Reply
#40

Muito bom Caio, faz tempo que nгo vejo bons releases assim por aqui, curti bastante as textdraws.
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)