[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:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
CreateVehicle(modelid, x, y, z, -1, -1, 60); 
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(playerid, params[])
{
    if(
GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
    {
    
MenuStore_AddItem(playerid, 1, 400, "Landstalker", 200, "", 200);
    
MenuStore_AddItem(playerid, 2, 401, "Bravura", 500, "", 200);
    
MenuStore_AddItem(playerid, 3, 402, "Buffalo", 900, "");
    
MenuStore_AddItem(playerid, 4, 403, "Linerunner", 400, "");
    
MenuStore_AddItem(playerid, 5, 404, "Perennial", 200, "");
    
MenuStore_AddItem(playerid, 6, 405, "Sentinel", 300, "");
    
MenuStore_AddItem(playerid, 7, 408, "Trashmaster", 200, "");
    
MenuStore_AddItem(playerid, 8, 410, "Manana", 250, "");
    
MenuStore_AddItem(playerid, 9, 411, "Infernus", 5000, "");
    
MenuStore_AddItem(playerid, 10, 412, "Voodoo", 1300, "");
    
MenuStore_AddItem(playerid, 11, 413, "Pony", 200, "");
    
MenuStore_AddItem(playerid, 12, 414, "Mule", 350, "");
    
MenuStore_AddItem(playerid, 13, 415, "Cheetah", 2600, "");
    
MenuStore_AddItem(playerid, 14, 418, "Moonbeam", 400, "");
    
MenuStore_AddItem(playerid, 15, 420, "Taxi", 450, "");
    
MenuStore_Show(playerid, Weapon_Shop, "Shop Veiculos");
    }
    else
    {
    
SendClientMessage(playerid, -1, "Vocк nгo pode estб dentro de uma veнculo.");
    }
    return 
1;
}
Store:Weapon_Shop(playerid, response, itemid, modelid, price, amount, itemname[])
{
    new 
Float:x, Float:y, Float:z, Float:a;
    if(!
response)
        return 
true;
    if(
GetPlayerMoney(playerid) < price)
        return 
SendClientMessage(playerid, -1, "Vocк nгo tem dinheiro suficiente.");
    if(
amount == 1) {
        
        
GetPlayerPos(playerid, x, y, z);
         
car = AddStaticVehicle(modelid, x, y,z, a, -1, -1);
        
PutPlayerInVehicle(playerid,car,0);
        
SetPlayerFacingAngle(playerid, a);
        
SetCameraBehindPlayer(playerid);
    }
    else {
        
GetPlayerPos(playerid, x, y, z);
        
car = AddStaticVehicle(modelid, x, y,z, a, -1, -1);
         
PutPlayerInVehicle(playerid,car,0);
         
SetPlayerFacingAngle(playerid, a);
         
SetCameraBehindPlayer(playerid);
    }
    new 
string[128];
    
format(string, 128, "Vocк comprou %dx %s", amount, itemname);
    
SendClientMessage(playerid, -1, string);
    
GivePlayerMoney(playerid, -price);
    return 
true;
}
stock GetWeaponIDFromModel(modelid)
{
    new 
idvehicle;
    switch(
modelid)
    {
        case 
331: idvehicle = 400;
        case 
333: idvehicle = 401;
        case 
334: idvehicle = 402;
        case 
335: idvehicle = 403;
        case 
336: idvehicle = 404;
        case 
337: idvehicle = 405;
        case 
338: idvehicle = 408;
        case 
339: idvehicle = 410;
        case 
341: idvehicle = 411;
        case 
321: idvehicle = 412;
        case 
325: idvehicle = 413;
        case 
326: idvehicle = 414;
        case 
342: idvehicle = 415;
        case 
343: idvehicle = 418;
        case 
344: idvehicle = 420;
        case 
346: idvehicle = 421;
        case 
347: idvehicle = 422;
        case 
348: idvehicle = 423;
        case 
349: idvehicle = 424;
        case 
350: idvehicle = 425;
        case 
351: idvehicle = 428;
        case 
352: idvehicle = 430;
        case 
353: idvehicle = 431;
        case 
355: idvehicle = 432;
        case 
356: idvehicle = 433;
        case 
372: idvehicle = 434;
        case 
357: idvehicle = 435;
        case 
358: idvehicle = 438;
        case 
359: idvehicle = 440;
        case 
360: idvehicle = 441;
        case 
361: idvehicle = 442;
        case 
362: idvehicle = 443;
        case 
363: idvehicle = 444;
        case 
365: idvehicle = 445;
        case 
366: idvehicle = 448;
        case 
367: idvehicle = 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 (c) 1997-2017, ITB 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 (c) 1997-2017, ITB 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: 1 Guest(s)