27.12.2013, 04:56
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:
Pra que esta variavel IGp ?
-Ela irб verificar se o player tem um galгo de gasolina ou nгo.
OnGameModeInit:
E este Text Label ai zй?
-Irб mostrar para os players que passarem por perto, e virгo a mensagem. (Ratio 15.0)
OnPlayerCommandText:
Aqui estб o comando para o player COMPRAR o galгo. No posto de LS, perto da casa do Big Smoke.
Aqui o comando para ele usar o galгo.
O que este comando vai entrar no sistema?
-Absolutamente nada.. Mas para vocк achar a variavel da sua gasolina, precisarб dele.
No meu caso й
=====
Final das contas :
Este comando irб verificar se o player estб no local da compra. Verifica se ele tem 20k. E na variavel, fica true.
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 !
Comeзando
=====
Topo do GM:
pawn Код:
new GalaoGasolina[MAX_PLAYERS];
-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);
-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;
}
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;
}
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;
}
-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;
}
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;
}
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 !