[Tutorial] Galгo de Gasolina
#1

Quase 4:00 e resolvi postar meu sistema de galгo. Й um sistema simples, mas que ajuda muitos players, jб vi no forum 1 ou 3 pedidos, mas ninguem nunca ajudava.. Nгo reparem os erros pois й meu primeiro tutorial
Comeзando
=====
Topo do GM:
pawn Код:
new GalaoGasolina[MAX_PLAYERS];
Pra que esta variavel IGp ?
-Ela irб verificar se o player tem um galгo de gasolina ou nгo.

OnGameModeInit:
pawn Код:
Create3DTextLabel("Digite /comprargalao\nPara adquirir seu galao!",0xFF0000FF,1941.4917,-1764.3984,13.6406,15.0,0);
E este Text Label ai zй?
-Irб mostrar para os players que passarem por perto, e virгo a mensagem. (Ratio 15.0)

OnPlayerCommandText:
pawn Код:
if(strcmp(cmd, "/comprargalao", true) == 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid, 3.0,  1941.4917,-1764.3984,13.6406))
    return SendClientMessage(playerid, -1,"Vocк nгo estб no local correto.");
    if(GetPlayerMoney(playerid) < 20000)
    return SendClientMessage(playerid, -1,"Vocк nгo tem dinheiro suficiente.");
    SendClientMessage(playerid, -1, "Vocк comprou um galгo!");
    GivePlayerMoney(playerid, -20000);
    GalaoGasolina[playerid] = 1;
    return 1;
    }
Aqui estб o comando para o player COMPRAR o galгo. No posto de LS, perto da casa do Big Smoke.
pawn Код:
if(strcmp(cmdtext,"/usargalao", true) == 0)
    {
    if(!IsPlayerInAnyVehicle(playerid))
    return SendClientMessage(playerid, -1, "Vocк nгo estб em um veнculo.");
    if(GalaoGasolina[playerid] < 1)
    return SendClientMessage(playerid, -1, "Vocк nгo tem um galгo de gasolina.");
    new str[90];
    format(str, sizeof(str),"Veнculo abastecido!");
    SendClientMessage(playerid, -1, str);
    new vid = GetPlayerVehicleID(playerid);
    Gas[vid] = 100;
    GalaoGasolina[playerid] = 0;
    return 1;
    }
Aqui o comando para ele usar o galгo.
pawn Код:
if(strcmp(cmd,"/abastecer", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid,COLOR_RED,"   Vocк nгo estб em um veнculo!");
return true;
}
new vid = GetPlayerVehicleID(playerid);
if(Gas[vid] >= 100)
return SendClientMessage(playerid,COLOR_RED,"O tanque jб estб cheio.");
if(IsAtGasStation(playerid))
{
GameTextForPlayer(playerid,"~n~~w~Reabastecendo~n~ ~r~~h~Aguarde",3003,3);
SetTimer("Fillup",RefuelWait,0);
Controle(playerid, 0);
Refueling[playerid] = 1;
}
else
{
SendClientMessage(playerid,COLOR_GREY,"   Vocк nгo estб em um Posto de Gasolina");
}
}
return true;
}
O que este comando vai entrar no sistema?
-Absolutamente nada.. Mas para vocк achar a variavel da sua gasolina, precisarб dele.
No meu caso й
PHP код:
Gas[VID
=====
Final das contas :
pawn Код:
if(strcmp(cmd, "/comprargalao", true) == 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid, 3.0,  1941.4917,-1764.3984,13.6406)) //Localizaзao
    return SendClientMessage(playerid, -1,"Vocк nгo estб no local correto.");
    if(GetPlayerMoney(playerid) < 20000) //Verifica se ele tem menos de 20k
    return SendClientMessage(playerid, -1,"Vocк nгo tem dinheiro suficiente.");
    SendClientMessage(playerid, -1, "Vocк comprou um galгo!");
    GivePlayerMoney(playerid, -20000); // Preco
    GalaoGasolina[playerid] = 1; // Deu para ele o galгo
    return 1;
    }
Este comando irб verificar se o player estб no local da compra. Verifica se ele tem 20k. E na variavel, fica true.
pawn Код:
if(strcmp(cmdtext,"/usargalao", true) == 0)
    {
    if(!IsPlayerInAnyVehicle(playerid)) // Vк se estб em um veiculo
    return SendClientMessage(playerid, -1, "Vocк nгo estб em um veнculo.");
    if(GalaoGasolina[playerid] < 1) //Verifica se ele comprou o galгo
    return SendClientMessage(playerid, -1, "Vocк nгo tem um galгo de gasolina.");
    new str[90];
    format(str, sizeof(str),"Veнculo abastecido!");
    SendClientMessage(playerid, -1, str);
    new vid = GetPlayerVehicleID(playerid);
    Gas[vid] = 100; //Seta 100 de gasolina
    GalaoGasolina[playerid] = 0; //Define a variavel para false
    return 1;
    }
E estб verificando se ele estб dentro de um veiculo. Se ele tem um galгo, se for true, ele se seta 100 de gasolina. Ao ganhar a gasolina, a variavel fica false.
O comando estб pronto, й sу identar denovo e tacar em seu GM.
Caso dк algum bug, vocк й burro dms posta nos comentarios, que tentarei ajudar!
Desculpem pelos erros, meu primeiro tutorial.. Aceito crнticas construtivas para eu melhorar !
Reply
#2

Tem certeza que isso irб funcionar ? CTRL C CTRL V
Reply
#3

Afunda o barco todo .
Reply
#4

Seu sistema? Isso ai й + old que nгo sei oq, tem no gm playhard 1.7 que tem na net.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)