public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/trabalhar", cmdtext, true, 10) == 0) { ShowPlayerDialog(playerid, Dialog_Carga, DIALOG_STYLE_LIST, "Lista de Cargas", "Alimentos\nCombustнveis", "Selecionar", "Cancelar"); return 1; } return 0; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == Dialog_Carga) { if(response) { if(IsPlayerInVehicle(playerid, 455 else SendClientMessage(playerid, Cor_Vermelha, "Para poder trabalhar vocк precisa estar em um veнculo."); if(IsPlayerInVehicle(playerid, 578 else SendClientMessage(playerid, Cor_Vermelha, "Para poder trabalhar vocк precisa estar em um veнculo."); if(IsPlayerInAnyVehicle(playerid)) else SendClientMessage(playerid, Cor_Vermelha, "Vocк nгo pode transportar este tipo de mercadoria com este veнculo" if(listitem == 0) ShowPlayerDialog(playerid, Dialog_Carregamento, DIALOG_STYLE_LIST, "Local de carregamento", "Lanchonete, Bairro: East Los Santos, Cidade: Los Santos\nPizzaria, Bairro: Idlewood, Cidade: Los Santos" "Selecionar" "Cancelar"); if(listitem == 0) SetPlayerCheckpoint(playerid, 2390.5249,-1487.5503,23.8281, 3.0); if(IsPlayerInCheckpoint(playerid)) ShowPlayerDialog(playerid, Dialog_Descarregamento, DIALOG_STYLE_LIST, "Local de descarregamento", "Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos" "Selecionar" "Cancelar"); if(listitem == 0) SetPlayerCheckpoint(playerid, 2113.0525,-1783.4459,13.3878, 3.0); if(IsPlayerInCheckpoint(playerid)) GivePlayerMoney(playerid, 1000); SendClientMessage(playerid, Cor_Verde, "Parabкns vocк transportou Alimentos de: Lanchonete, Bairro: East Los Santos para Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos if(listitem == 1) ShowPlayerDialog(playerid, Dialog_Descarregamento, DIALOG_STYLE_LIST, "Local de descarregamento", "Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos" "Selecionar" "Cancelar"); SetPlayerCheckpoint(playerid, 2113.0525,-1783.4459,13.3878, 3.0); if(IsPlayerInCheckpoint(playerid)) SendClientMessage(playerid, Cor_Amarela, "Parabкns vocк transportou Alimentos de: Pizzaria, Bairro: Idlewood, Cidade: Los Santos para Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos"); GivePlayerMoney(playerid, 1000); return 1; }
#define Cor_Vermelha 0xFF0000AA
#define COR_AMARELO 0xFFFF00
#define Dialog_Carga 25
#define Dialog_Carregamento 26
#define Dialog_Descarregamento 27
CMD:trabalhar(playerid, params[]) { ShowPlayerDialog(playerid, Dialog_Carga, DIALOG_STYLE_LIST, "Lista de Cargas", "Alimentos\nCombustнveis", "Selecionar", "Cancelar"); return 1; }
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == Dialog_Carga) { if(response) { if(listitem == 0) ShowPlayerDialog(playerid, Dialog_Carregamento, DIALOG_STYLE_LIST, "Local de carregamento", "Lanchonete, Bairro: East Los Santos, Cidade: Los Santos\nPizzaria, Bairro: Idlewood, Cidade: Los Santos" "Selecionar" "Cancelar"); if(listitem == 0) SetPlayerCheckpoint(playerid, 2390.5249,-1487.5503,23.8281, 3.0); if(IsPlayerInCheckpoint(playerid)) ShowPlayerDialog(playerid, Dialog_Descarregamento, DIALOG_STYLE_LIST, "Local de descarregamento", "Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos" "Selecionar" "Cancelar"); if(listitem == 0) SetPlayerCheckpoint(playerid, 2113.0525,-1783.4459,13.3878, 3.0); if(IsPlayerInCheckpoint(playerid)) GivePlayerMoney(playerid, 1000); SendClientMessage(playerid, 0xFF0000FF, "Parabкns vocк transportou Alimentos de: Lanchonete, Bairro: East Los Santos para Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos"); if(listitem == 1) ShowPlayerDialog(playerid, Dialog_Descarregamento, DIALOG_STYLE_LIST, "Local de descarregamento", "Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos" "Selecionar" "Cancelar"); SetPlayerCheckpoint(playerid, 2113.0525,-1783.4459,13.3878, 3.0); if(IsPlayerInCheckpoint(playerid)) SendClientMessage(playerid, 0xFFFF00, "Parabкns vocк transportou Alimentos de: Pizzaria, Bairro: Idlewood, Cidade: Los Santos para Mercearia 69$, Bairro: Idlewood, Cidade: Los Santos"); GivePlayerMoney(playerid, 1000); } }
Galera esse cуdigo quem fez fui eu pode tar ruim mais й oque eu sei fazer sу que estб dando isto |
//Includes Fundamentais HAHA *-* #include <a_samp> #include <zcmd> #include <sscanf2> //Defines Times #define Caminhoneiro 1 #define CorCaminhoneiro 0xAAF1FAFF //Defines Macros #define SCM SendClientMessage #define SCMA SendClientMessageToAll //Define Dialogo! #define DialogoTrabalhos 155 enum CaminhoneiroMissao //Essa enum sу serve para as missхes,nгo retire,se quiser modifique! { ID, NomeCarregar[128], Float:CarregarX, Float:CarregarY, Float:CarregarZ, NomeDescarregar[128], Float:DescarregarX, Float:DescarregarY, Float:DescarregarZ, Pagamento, NomeCarga[128] } enum MissaoInfo { Classe, Trabalhando } new Missao[MAX_PLAYERS][MissaoInfo]; new MisCaminhoneiro[][CaminhoneiroMissao] = { {0, "Missгo 1", 0.0, 0.0, 0.0, "Missгo 2", 0.0, 0.0, 0.0, 1000, "Cimento"}, {1, "Missгo 3", 0.0, 0.0, 0.0, "Missгo 4", 0.0, 0.0, 0.0, 1000, "Cimento"}, {2, "Missгo 5", 0.0, 0.0, 0.0, "Missгo 6", 0.0, 0.0, 0.0, 1000, "Cimento"}, {3, "Missгo 7", 0.0, 0.0, 0.0, "Missгo 8", 0.0, 0.0, 0.0, 1000, "Cimento"}, {4, "Missгo 9", 0.0, 0.0, 0.0, "Missгo 10", 0.0, 0.0, 0.0, 1000, "Cimento"} }; //{ID, "Nome do Lugar de Carregar", Coordenadas de carregar, "Nome do Lugar de Descarregar", Coordenadas de descarregar, Pagamento, "Oque Carregar"}, new Float:SpawnCaminhoneiro[][4] = //Spawn Escolha os SpawnsRandoms! { {-1574.3555, -2747.2380, 48.5391}, {-1574.3555, -2747.2380, 48.5391}, {-1574.3555, -2747.2380, 48.5391} }; forward Descongelar(playerid); public Descongelar(playerid) { TogglePlayerControllable(playerid, true); return 1; } public OnGameModeInit() { //Classe AddPlayerClass(6, 00.00, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);//Caminhoneiro 0 AddPlayerClass(32, 00.00, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);//Caminhoneiro 1 AddPlayerClass(131, 00.00, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);//Caminhoneiro 2 //Carros Spawn 1,2,3 AddStaticVehicleEx(515,-1545.1810000,-2747.9026000,49.5388000,169.5600000,-1,-1,15); //Roadtrain AddStaticVehicleEx(515,-1540.5913000,-2750.2205000,49.4988000,169.5600000,-1,-1,15); //Roadtrain AddStaticVehicleEx(515,-1535.9431000,-2753.1897000,49.5188000,169.5600000,-1,-1,15); //Roadtrain AddStaticVehicleEx(435,-1531.0387000,-2754.3723000,49.0663000,168.7800000,-1,-1,15); //Trailer 1 AddStaticVehicleEx(435,-1526.4016000,-2756.6875000,49.0663000,168.7800000,-1,-1,15); //Trailer 1 return 1; } public OnGameModeExit() { return 1; } public OnPlayerRequestClass(playerid, classid) { switch(classid) { case 0,1,2: { GameTextForPlayer(playerid, "~y~~h~~h~Caminhoneiro", 3000, 4); Missao[playerid][Classe] = Caminhoneiro; SetPlayerPos(playerid, 2179.413574, 1285.552368, 42.549133); SetPlayerFacingAngle(playerid, 89.761169); SetPlayerCameraLookAt(playerid, 2179.413574, 1285.552368, 42.549133); SetPlayerCameraPos(playerid, 2179.413574 + (5 * floatsin(-89.761169, degrees)), 1285.552368 + (5 * floatcos(-89.761169, degrees)), 42.549133); } } if(Missao[playerid][Classe] == Caminhoneiro) { SetPlayerColor(playerid, CorCaminhoneiro); } return 1; } public OnPlayerSpawn(playerid) { if(Missao[playerid][Classe] == Caminhoneiro) { new rand = random(sizeof(SpawnCaminhoneiro)); SetPlayerPos(playerid, SpawnCaminhoneiro[rand][0], SpawnCaminhoneiro[rand][1], SpawnCaminhoneiro[rand][2]); SetPlayerFacingAngle(playerid, SpawnCaminhoneiro[rand][3]); } return 1; } public OnPlayerEnterCheckpoint(playerid) { if(Missao[playerid][Trabalhando] == 1) { switch(Missao[playerid][Classe]) { case Caminhoneiro: { new vID = GetPlayerVehicleID(playerid); if(GetVehicleModel(vID) == 403 || GetVehicleModel(vID) == 515 || GetVehicleModel(vID) == 514 || GetVehicleModel(vID) == 455 || GetVehicleModel(vID) == 578) { if(!IsTrailerAttachedToVehicle(vID)) return SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк estб sem trailer !!"); TogglePlayerControllable(playerid, false); GameTextForPlayer(playerid, "Descarregue Agora!", 5000, 4); GameTextForPlayer(playerid, "Carregando...", 3000, 4); SetTimerEx("Descongelar", 5000, false, "i", playerid); DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, MisCaminhoneiro[playerid][DescarregarX], MisCaminhoneiro[playerid][DescarregarY], MisCaminhoneiro[playerid][DescarregarZ], 10.0); Missao[playerid][Trabalhando] = 2; } else { SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк deve estб dentro de um caminhгo para Carregar!"); } } } } else if(Missao[playerid][Trabalhando] == 2) { switch(Missao[playerid][Classe]) { case Caminhoneiro: { new vID = GetPlayerVehicleID(playerid); if(GetVehicleModel(vID) == 403 || GetVehicleModel(vID) == 515 || GetVehicleModel(vID) == 514 || GetVehicleModel(vID) == 455 || GetVehicleModel(vID) == 578) { if(!IsTrailerAttachedToVehicle(vID)) return SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк estб sem trailer !!"); TogglePlayerControllable(playerid, false); GameTextForPlayer(playerid, "Trabalho Concluido!", 5000, 4); GameTextForPlayer(playerid, "Descarregando...", 3000, 4); SetTimerEx("Descongelar", 5000, false, "i", playerid); DisablePlayerCheckpoint(playerid); Missao[playerid][Trabalhando] = 0; GivePlayerMoney(playerid, MisCaminhoneiro[playerid][Pagamento]); SetPlayerScore(playerid, GetPlayerScore(playerid)+2); new Linha[100]; format(Linha, sizeof(Linha), "{FF0000}[INFO]{FFFFFF}: Vocк concluiu seu trabalho e ganhou : R$ %d e 2 Scores !", MisCaminhoneiro[playerid][Pagamento]); SCM(playerid, -1, Linha); format(Linha, sizeof(Linha), "{FF0000}[INFO]{FFFFFF}: Vocк transportou %s, de %s para %s !", MisCaminhoneiro[playerid][NomeCarga], MisCaminhoneiro[playerid][NomeCarregar], MisCaminhoneiro[playerid][NomeDescarregar]); SCM(playerid, -1, Linha); } else { SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк deve estб dentro de um caminhгo para Descarregar!"); } } } } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) { case DialogoTrabalhos: { switch(listitem) { case 0 .. 10: { if(Missao[playerid][Classe] == Caminhoneiro) { new Linha[160]; SetPlayerCheckpoint(playerid, MisCaminhoneiro[listitem][CarregarX], MisCaminhoneiro[listitem][CarregarY], MisCaminhoneiro[listitem][CarregarZ], 10.0); format(Linha, sizeof(Linha), "{FF0000}[TRABALHO]{FFFFFF}: Leve a Carga: {FFFF00}%s{FFFFFF} de{FFFF00} %s {FFFFFF}Para{FFFF00} %s",MisCaminhoneiro[listitem][NomeCarga], MisCaminhoneiro[listitem][NomeCarregar], MisCaminhoneiro[listitem][NomeDescarregar]); SCM(playerid, -1, Linha); Missao[playerid][Trabalhando] = 1; } } } } } return 1; } CMD:trabalhar(playerid) { new Msg[400], Linha[100]; if(Missao[playerid][Trabalhando] > 1) return SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк jб estб trabalhando !"); if(Missao[playerid][Classe] == Caminhoneiro) { new vID = GetPlayerVehicleID(playerid); if(GetVehicleModel(vID) == 403 || GetVehicleModel(vID) == 515 || GetVehicleModel(vID) == 514 || GetVehicleModel(vID) == 455 || GetVehicleModel(vID) == 578) { if(!IsTrailerAttachedToVehicle(vID)) return SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк estб sem trailer !!"); for(new tb = 0; tb < sizeof MisCaminhoneiro; tb++) { if(IsPlayerInRangeOfPoint(playerid, 10000, MisCaminhoneiro[tb][CarregarX], MisCaminhoneiro[tb][CarregarY], MisCaminhoneiro[tb][CarregarZ])) { format(Linha, sizeof(Linha), "Transporte %s - De %s - Para %s\n",MisCaminhoneiro[tb][NomeCarga], MisCaminhoneiro[tb][NomeCarregar], MisCaminhoneiro[tb][NomeDescarregar]); strcat(Msg, Linha); Missao[playerid][Trabalhando] = 1; } } } else { SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк deve estб dentro de um caminhгo para iniciar o trabalho!"); } ShowPlayerDialog(playerid, DialogoTrabalhos, DIALOG_STYLE_LIST, "Escolha sua Carga", Msg, "Selecionar", "Cancelar"); } return 1; } CMD:parartrabalho(playerid) { if(Missao[playerid][Trabalhando] == 0) return SCM(playerid, -1, "{FF0000}[ERRO]{FFFFFF}: Vocк nгo estб trabalhando para cancelar!"); DisablePlayerCheckpoint(playerid); Missao[playerid][Trabalhando] = 0; SCM(playerid, -1, "{FF0000}[INFO]{FFFFFF}: Vocк cancelou o seu trabalho e pagou :{FF0000} R$ 500"); GivePlayerMoney(playerid, -500); return 1; } CMD:mudar(playerid) { ForceClassSelection(playerid); SetPlayerHealth(playerid, 0.0); return 1; }
CMD:carregamento(playerid){ SetPlayerCheckpoint(playerid, 2390.5249,-1487.5503,23.8281, 3.0); SendClientMessage(playerid,-1,"[Carregamento]Checkpoint marcado no mapa."); return 1; }
"Selecionar" "Cancelar"