[FilterScript] Profissгo PizzaBoy
#1

Introduзгo

Bom eu nгo estava fazendo nada e resolvi postar essa profissгo de PizzaBoy que criei um dia mas agora dei uma melhorada nela, espero que gostem.



Funcionamento da profissгo

Ela funciona da seguinte maneira, o player vai atй a pizzaria pega a pizza e й determinado um local pra ele no mapa aleatуrio para ele entregar a pizza, o dinheiro a receber tambйm e aleatуrio e tem o sistema da gorjeta que funciona da seguinte maneira, caso o player demorar demais para entregar a pizza ele nгo recebera a gorjeta sу o valor da pizza.



Imagens











Crйditos

ZeeX - Pela include ZCMD
Kalcor - Criador do SA-MP
HaRdiiZin - Por me ajuda com algumas coisas.


Cуdigo

PHP код:
#include <a_samp>
#include <zcmd>
//NEW
new Pizza[MAX_PLAYERS];
new 
GanhaGorjeta[MAX_PLAYERS];
new 
timerGorjeta[MAX_PLAYERS];
new 
EntregandoPizza[MAX_PLAYERS];
//CORES
#define Vermelho                                                                0xF60000AA
#define Amarelo                                                                 0xFFA500AA
//Random
new FloatCheckPointsP[1][10] =
{
        {
2077.6982,-1730.5145,13.38323.0}
};
public 
OnFilterScriptInit()
{
AddStaticVehicleEx(448,2098.090820,-1821.328002,12.983078,89.726402,3,3,30); 
AddStaticVehicleEx(448,2098.166992,-1820.152832,12.982042,83.844284,3,3,30); 
return 
1;
}
public 
OnPlayerConnect(playerid)
{
Pizza[playerid] = 0;
GanhaGorjeta[playerid] = 0;
return 
1;
}
public 
OnPlayerEnterRaceCheckpoint(playerid)
{
if(
Pizza[playerid] == 1)
{
if(
GetVehicleModel(GetPlayerVehicleID(playerid)) == 448)
{
EntregandoPizza[playerid] = SetTimerEx("EntregarPizza"10000false"i"playerid);
TogglePlayerControllable(playerid,0);
SendClientMessage(playerid,Amarelo,"| INFO | Entregando Pizza, aguarde alguns segundos");
}else return 
SendClientMessage(playerid,Vermelho,"| ERRO | Vocк nгo esta com a moto do MotoBoy");
}
return 
1;
}
CMD:ir(playerid)
{
SetPlayerPos(playerid,2094.7395,-1817.138813.3828);
return 
1;
}
CMD:pizza(playerid)
{
if(
Pizza[playerid] == 1) {
SendClientMessage(playerid,Vermelho,"| ERRO | Vocк jб pegou uma pizza, entregue-a!");
return 
1;
}
if(
IsPlayerInRangeOfPoint(playerid10.02094.7395,-1817.138813.3828))
{
if(
GetVehicleModel(GetPlayerVehicleID(playerid)) == 448)
{
new 
string[128];
new 
rand random(sizeof(CheckPointsP));
Pizza[playerid] = 1;
GanhaGorjeta[playerid] = 1;
timerGorjeta[playerid] = SetTimerEx("GanhaGorjeta1"60000false"i"playerid);
new 
FloatDistancia GetPlayerDistanceFromPoint(playerid,CheckPointsP[rand][0],CheckPointsP[rand][1],CheckPointsP[rand][2]);
SetPlayerRaceCheckpoint(playerid1CheckPointsP[rand][0],CheckPointsP[rand][1],CheckPointsP[rand][2], 0003.10);
format(string,sizeof(string),"{FFFFFF}Uma pizza para entregar a {30F72D}%0.2f {FFFFFF}metros ,siga o checkpoint para entrega-la",Distancia);
ShowPlayerDialog(playerid1DIALOG_STYLE_MSGBOX"{FFA500}Pizzaria"string"Pegar""");
return 
1;
}
else return 
SendClientMessage(playeridVermelho,"| ERRO | Vocк nгo esta na moto do MotoBoy");
}
else return 
SendClientMessage(playerid,Vermelho,"| ERRO | Vocк nгo esta no local de pegar a pizza");
}
forward GanhaGorjeta1(playerid);
public 
GanhaGorjeta1(playerid)
{
GanhaGorjeta[playerid] = 0;
return 
1;
}
forward EntregarPizza(playerid);
public 
EntregarPizza(playerid)
{
if(
GanhaGorjeta[playerid] == 1)
{
new 
string[250];
new 
GranaPizza random(30);
new 
Gorjeta random(5);
DisablePlayerRaceCheckpoint(playerid);
Pizza[playerid] = 0;
GanhaGorjeta[playerid] = 0;
format(stringsizeof(string), "| PIZZA - ENTREGUE | {FFFFFF}Vocк entregou a pizza com sucesso e ganhou {1CEB00}$%d {FFFFFF}e mais {1CEB00}$%d {FFFFFF}de gorjeta",GranaPizza,Gorjeta);
SendClientMessage(playerid,0xFFA500AAstring);
GivePlayerMoney(playeridGranaPizza);
GivePlayerMoney(playeridGorjeta);
TogglePlayerControllable(playerid,1);
KillTimer(timerGorjeta[playerid]);
KillTimer(EntregandoPizza[playerid]);
return 
1;
}
if(
GanhaGorjeta[playerid] == 0)
{
new 
string[250];
new 
GranaPizza random(30);
DisablePlayerRaceCheckpoint(playerid);
Pizza[playerid] = 0;
format(stringsizeof(string), "| PIZZA - ENTREGUE | {FFFFFF}Vocк entregou a pizza com sucesso e ganhou {1CEB00}$%d {FFFFFF} e nгo ganhou gorjeta por demorar demais",GranaPizza);
SendClientMessage(playerid,0xFFA500AAstring);
GivePlayerMoney(playeridGranaPizza);
TogglePlayerControllable(playerid,1);
KillTimer(timerGorjeta[playerid]);
KillTimer(EntregandoPizza[playerid]);
return 
1;
}
return 
1;


Espero que tenham gostado e lembrando esse й o meu primeiro FilterScript
Reply
#2

Legal +REP
Reply
#3

Bem legal mais acho que poderia ter melhorado o codigo em si falto ideitaзгo, e a string nгo precisa ser.string[250]; se o limite do chat e 144 string[144]; mais pelo primeiro FS esta muito bom parabens.

Desculpe to pelo cel
Reply
#4

Inovador, gostei.. parabйns!
Reply
#5

Legal, Gostei...
Reply
#6

Muito bacana. Pra servidores RP que usam missхes mini-games, tб aн uma proposta boa. Muito legal.
Reply
#7

Simples e legal parabйns
Reply
#8

Simples e inovador. Gostei.

Parabйns. +1
Reply
#9

Muito obrigado pessoal
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)