Thread: [FilterScript] Profissão "Fabricante"
View Single Post
Old 25/06/2020, 01:36 PM   #1
uliano
Big Clucker
 
uliano's Avatar
 
Join Date: Oct 2015
Location: San Andreas
Posts: 162
Reputation: 9
Post Profissão Fabricante v1

Bom, Recentemente eu resolvi praticar um Pouco do que eu sei (Que é Muito Pouco mesmo..)E o Resultado foi esse ai, Uma Pequena Profissão, Pretendo Melhorar ela algum dia, mais enfim, espero que curtam, pq eu adorei :/, é meu primeiro projeto digamos assim...

Vídeo De Visualização

O Sistema:

Code:
///includes///
#include <a_samp>
#include <zcmd>
///includes///

///Defines///
#define FILTERSCRIPT
#define COR_TEXTOS 0xFFFFFF88
#define VERMELHO 0xFB0000FF
#define AMARELO 0xFFFF00FF
#define AZUL_CLARO 0x00C2ECFF
#define VERDE 0x9ACD32AA
#define DialogBoxEx 1
///Defines///

///news///
new EntradaPickup; 
new SaidaPickup; 
new fab[MAX_PLAYERS]; 
new UsouComando[MAX_PLAYERS];
new funcdomes;
new vigarista;
new chefe;
new Fabricante[MAX_PLAYERS];  
new FabricanteTrabalhando[MAX_PLAYERS];
new CarFab[4];
///news///

public OnFilterScriptInit()
{
	Create3DTextLabel("{FFFFFF}aperte a tecla {30E7F8}F{FFFFFF} para entrar",COR_TEXTOS, 1779.0621,-1662.8247,14.4381+1, 15, 0);
	Create3DTextLabel("{FFFFFF}aperte a tecla {30E7F8}F{FFFFFF} para sair",COR_TEXTOS, 1062.2560,2077.3176,10.8203+1, 15, 0);
	Create3DTextLabel("{FFFFFF}Ola, Eu Sou o {30E7F8}Nathan {FFFFFF}Funcionario do Mes\nDicas?!?, Aperte F aqui..",COR_TEXTOS, 1077.9709,2086.6970,12.6279+1, 15, 0);
	Create3DTextLabel("{FFFFFF}Ola, Eu Sou o {30E7F8}Daniel {FFFFFF}Quer Saber por que Não sou o Funcionario do Mes?\nAperte F aqui..",COR_TEXTOS, 1057.6287,2085.4500,10.8203+1, 15, 0);
	Create3DTextLabel("{FFFFFF}Ola, Eu Sou o {30E7F8}Juliano {FFFFFF}Seu CHEFE\nVejamos Quantos Voce Ganhou...",COR_TEXTOS, 1086.4468,2121.7532,15.3504+1, 15, 0);
	Create3DTextLabel("{FFA500}Emprego Fabrica\n{FFFFFF}Digite /empregofabrica",0xFFA500AA,1773.0682,-1660.6495,14.4254,10.0,0);
	CarFab[0] = AddStaticVehicle(543,1760.5476,-1660.5618,13.3748,89.1338,1,1);
	CarFab[1] = AddStaticVehicle(543,1760.6503,-1663.5511,13.3736,90.8183,1,1);
	CarFab[2] = AddStaticVehicle(461,1760.6465,-1665.9012,13.1429,90.8826,1,1);
	AddStaticPickup(1210, 23, 1773.0682,-1660.6495,14.4254);
	EntradaPickup = CreatePickup(1318, 23, 1779.0621,-1662.8247,14.4381, -1);
	SaidaPickup = CreatePickup(1318, 23, 1062.2560,2077.3176,10.8203, -1);
	funcdomes = CreateActor (8, 1077.9709,2086.6970,12.6279,96.4708);
	ApplyActorAnimation(funcdomes, "ped","IDLE_chat", 4.1,1,0,0,1,0);
	vigarista = CreateActor (163, 1057.6287,2085.4500,10.8203,271.6024);
	ApplyActorAnimation(vigarista, "ped","IDLE_chat", 4.1,1,0,0,1,0);
	chefe = CreateActor (18, 1086.4468,2121.7532,15.3504,192.9545);
	ApplyActorAnimation(chefe, "ped","IDLE_chat", 4.1,1,0,0,1,0);
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}


main()
{
	print("\n----------------------------------");
	print("Certamente o Sistema ta Ligado!!");
	print("----------------------------------\n");
}


public OnPlayerConnect(playerid)
{
	Fabricante[playerid] = 0; FabricanteTrabalhando[playerid] = 0;
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    Fabricante[playerid] = 0; FabricanteTrabalhando[playerid] = 0;
	return 1;
}

public OnPlayerSpawn(playerid)
{
	SetPlayerPos(playerid, 1766.9008,-1667.1234,14.4103);
	return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    new veiculo = GetPlayerVehicleID(playerid);
    if(veiculo == CarFab[0] || veiculo == CarFab[1] || veiculo == CarFab[2] || veiculo == CarFab[3])
	{
	if(Fabricante[playerid] == 0)
	{
	SendClientMessage(playerid,VERMELHO,"ERRO: Veiculo reservado para os Fabricantes");
	RemovePlayerFromVehicle(playerid);
	return 1;
	}
	else if(FabricanteTrabalhando[playerid] == 0) return SendClientMessage(playerid,VERDE,"INFO: Veiculo da Fabrica Quebrar, perdera Sua Casa!!!, Use com Cuidado");
	return 1;
	}
	return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
    if(fab[playerid] == 1) 
    {
//        ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 2; 
        SetPlayerCheckpoint(playerid, 1060.5924,2093.0979,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 2) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 3; 
        SetPlayerCheckpoint(playerid, 1060.9850,2099.4604,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 3) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 4; 
        SetPlayerCheckpoint(playerid, 1064.5771,2100.8745,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 4) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 5; 
        SetPlayerCheckpoint(playerid, 1071.7848,2101.3376,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 5) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 6; 
        SetPlayerCheckpoint(playerid, 1072.6425,2097.6826,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 6) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 7; 
        SetPlayerCheckpoint(playerid, 1063.8796,2097.6338,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 7) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 8; 
        SetPlayerCheckpoint(playerid, 1058.2371,2119.9094,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 8) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 9; 
        SetPlayerCheckpoint(playerid, 1058.5020,2125.0527,10.8203, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 9) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 10; 
        SetPlayerCheckpoint(playerid, 1091.8154,2077.7617,15.3504, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 10)
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid);
        fab[playerid] = 11; 
        SetPlayerCheckpoint(playerid, 1092.4624,2086.0024,15.3504, 2.0);
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 11)
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 12; 
        SetPlayerCheckpoint(playerid, 1086.0305,2120.2253,15.3504, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    else if(fab[playerid] == 12) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        DisablePlayerCheckpoint(playerid);
        fab[playerid] = 13; 
        SetPlayerCheckpoint(playerid, 1086.7411,2120.1260,15.3504, 2.0); 
        SendClientMessage(playerid, 0xFFFFFFFF, "Você Montou Uma Peça, vá para o próximo Checkpoint");
        return 1;
    }
    if(fab[playerid] == 13) 
    {
        ApplyAnimation(playerid, "GANGS", "DEALER_DEAL", 10.1, 0, 1, 0, 0, -1);
        new reward, string[128];
        DisablePlayerCheckpoint(playerid); 
        fab[playerid] = 0;
        reward = GivePlayerMoney(playerid, GetPlayerMoney(playerid) + random(5000) + 1000);
        format(string, sizeof(string), "Voce Terminou a Produção de Joias");
        SendClientMessage(playerid, 0xFFFFFFFF, string);
    }
    return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == EntradaPickup)
{
//	SetPlayerInterior(playerid, 11); // Interior Do Local que Será Setado.
//	SetPlayerPos(playerid, 932.6444,2150.4995,1011.0234); // Setando ele Para Dentro do Interior.
}
if(pickupid == SaidaPickup)
{
//     SetPlayerInterior(playerid, 0); // Interior Do Local que Será Setado.
//     SetPlayerPos(playerid, 1779.0621,-1662.8247,14.4381); // Setando ele Para Fóra Ou Seja Saindo do Interior.
}
	return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if ((newkeys==KEY_SECONDARY_ATTACK)) // Key ( F / Enter )
{
   	cmd_entrarfabrica(playerid); // Ao Apertar "F" Funcionará o Comando Do Lado.
	cmd_sairfabrica(playerid); // Ao Apertar "F" Funcionará o Comando Do Lado.
	cmd_ajudafabrica(playerid); // Ao Apertar "F" Funcionará o Comando Do Lado.
	cmd_troll(playerid); // Ao Apertar "F" Funcionará o Comando Do Lado.
   //Se Quiser Colocar mais, a vontade.
}
	return 1;
}

///Comandos///
CMD:entrarfabrica(playerid)
{
   if(IsPlayerInRangeOfPoint(playerid, 2.0, 1779.0621,-1662.8247,14.4381))
   {
       SetPlayerInterior(playerid, 0); 
       SetPlayerPos(playerid, 1062.2560,2077.3176,10.8203);
   }
   return true; // Returnando a 1
}

CMD:sairfabrica(playerid)
{
   if(IsPlayerInRangeOfPoint(playerid, 2.0, 1062.2560,2077.3176,10.8203))
   {
      SetPlayerInterior(playerid, 0); // Setando o Interior ao Sair.
      SetPlayerPos(playerid, 1779.0621,-1662.8247,14.4381); // Setado Para Aqui ( TELE )
   }
   return true; // Returnando a 1
}
CMD:comecar(playerid, cmdtext)
{
	if(Fabricante[playerid] == 0) return SendClientMessage(playerid,VERMELHO,"ERRO: Você não é um Fabricante, Pegue a Profissão!");
	if(!IsPlayerInRangeOfPoint(playerid, 2.0, 1062.2560,2077.3176,10.8203)) return SendClientMessage(playerid,0xE74C3CFF,"ERRO: Você não está no local correto!");
	if(UsouComando[playerid] > gettime()) return SendClientMessage(playerid, -1,  "Você usou este comando recentemente. Aguarde algum tempo para usá-lo novamente.");
    fab[playerid] = 1; 
    SetPlayerCheckpoint(playerid, 1060.5924,2093.0979,10.8203, 2.0); 
    UsouComando[playerid] = gettime() + 240;
    SendClientMessage(playerid, 0xFFFFFFFF, "Você Começou a Montagem de Joias, Vá até o CheckPoint para Iniciar!!");
    SetPlayerSkin(playerid, 8);
    return 1;
}
CMD:fabrica(playerid)
{
	SetPlayerPos(playerid, 1761.3630,-1663.6487,13.5593);
	return 1;
}
CMD:ajudafabrica(playerid)
{
	if(Fabricante[playerid] == 0) return SendClientMessage(playerid,VERMELHO,"ERRO: Você não é um Fabricante!");
	if(IsPlayerInRangeOfPoint(playerid, 2.0, 375.5736,-68.2086,1001.5151)) return SendClientMessage(playerid,VERMELHO,"ERRO: Você não é um Fabricante!");
	new str[512];
	format(str, sizeof(str), "Digite /comecar perto da porta de entrada para iniciar seu trabalho na Fabrica.\n Cuidado Em quem voce confia aqui na fabrica, eles podem te passar a perna, Inclusive o Tal do ""Daniel"" \n Os Valores Finais são aleatorios, as vezes Bom, as vezes Ruin, Boa Sorte Novato", playerid);
	ShowPlayerDialog(playerid, DialogBoxEx, DIALOG_STYLE_MSGBOX, "Instruções", str, "Ok", "Cancelar");
	return 1;
}
CMD:empregofabrica(playerid)
{
    if(!IsPlayerInRangeOfPoint(playerid, 2.0, 1773.0682,-1660.6495,14.4254)) return SendClientMessage(playerid,VERMELHO,"ERRO: Você não está no local correto!");
    if(Fabricante[playerid] == 1) return SendClientMessage(playerid,VERMELHO,"ERRO: Você já é um Fabricante!");
	SendClientMessage(playerid,AZUL_CLARO,"INFO: Parabéns, vocé virou um Fabricante!Converse com o Funcionario do Mes para ver seus comandos");
	Fabricante[playerid] = 1; SetPlayerSkin(playerid, 8);
	return 1;
}
CMD:troll(playerid)
{
	if(!IsPlayerInRangeOfPoint(playerid, 2.0, 1057.6287,2085.4500,10.8203))
	SetPlayerInterior(playerid, 0);
	SetPlayerPos(playerid, 1548.5536,-1354.3528,329.4686);
	SendClientMessage(playerid,0xE74C3CFF,"POR CAUSA DISSO!!! +1 ENGANADO KKKKKKKKKKKKKKKKKKKKKK");
	return 1;
}
Obvio que aceito Criticas Construtivas, ou Dicas de como melhorar, desde que elas sejam saudáveis, sem toxidade Ok?, Tchau e Obrigado
__________________
Meus Projetos
Code:
  1. Profissão Fabricante https://forum.sa-mp.com/showthread.php?t=676966
IP: 91.121.87.14:4511

Last edited by uliano; 25/06/2020 at 03:38 PM.
uliano is offline   Reply With Quote