13.10.2013, 17:18
Gente, estou tentando colocar um sistema de placas no meu gm, mas se eu deixar ele carregar como filescript ele trava todos os cmds do meu serv, entгo tentei colocar ele incluso dentro do gamemode, mas na hora que vai compilar, o pawno dб relatуrio de erros
o que eu faзo?
esse й o cуdigo pawno do filescript
E esse й o cуdigo inteiro da parte do gm que eu quero colocar o fs:
o que eu faзo?
esse й o cуdigo pawno do filescript
Code:
#include <a_samp> public OnPlayerCommandText( playerid, cmdtext[]) { if ( strcmp( cmdtext, "/mudarplaca", true) == 0) { ShowPlayerDialog(playerid, 10101, DIALOG_STYLE_INPUT, "Sistema de Placa", "Digite sua Placa:\n\nMaximo de 8 Caracteres", "Mudar", "Cancelar"); return 1; } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 10101) { new string[128], Float:X, Float:Y, Float:Z, Float:angle; if(strlen(inputtext) < 1 || strlen(inputtext) > 8) return SendClientMessage(playerid, 0xAFAFAFAA, "Texto Invalido."); else { format(string, sizeof(string), "Vocк mudou o texto de sua placa para '%s'.", inputtext); SendClientMessage(playerid, 0x33CCFFAA, string); GetPlayerPos(playerid, X, Y, Z); GetPlayerFacingAngle(playerid, angle); SetVehicleNumberPlate(GetPlayerVehicleID(playerid), inputtext); SetVehicleToRespawn(GetPlayerVehicleID(playerid)); GetPlayerPos(playerid, X, Y, Z); SetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z); SetVehicleZAngle(GetPlayerVehicleID(playerid), angle); PutPlayerInVehicle(playerid, GetPlayerVehicleID(playerid), 0); SetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z+2); } } return 1; }
Code:
if(dialogid == 4501) // Menu { if(response == 1) { if(listitem == 0) // Entrar no Carro { if(NaFaculdade[playerid] == 1) return SendClientMessage(playerid, Vermelho, "Vocк estб na Universidade e estб incapacitado de fazer isto."); if(preso[playerid] == 1) return SendClientMessage(playerid, Vermelho, "Vocк estб incapacitado de fazer isto pois estб preso."); if(algemado[playerid] == 1) return SendClientMessage(playerid, Vermelho, "Vocк estб incapacitado de fazer isto pois estб algemado."); if(cercado[playerid] == 1) return SendClientMessage(playerid, Vermelho, "Vocк estб incapacitado de fazer isto pois estб cercado."); if(nogame[playerid] == 1) return SendClientMessage(playerid, Vermelho, "Vocк estб incapacitado de fazer isto pois estб em um game!"); if(autoescola[playerid] == 1) return SendClientMessage(playerid, Vermelho, "Vocк estб incapacitado de fazer isto pois estб na Auto-Escola!"); for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Exists(string)) { if(IsPlayerConnected(playerid)) { if(strcmp(dini_Get(string, "Dono"), GetPlayerNameEx(playerid), false) == 0) { PutPlayerInVehicle(playerid, dini_Int(string, "Id"), 0); if(GetCarros(playerid) > 1) { ShowPlayerDialog(playerid, 4504, DIALOG_STYLE_MSGBOX, "Aviso", "{1B70E0}Vocк tem mais de um veнculo, clique em 'Prуximo' para entrar em seu prуximo veнculo.", "OK", "Prуximo"); } return 1; } } } } } if(listitem == 1) // Salvar Posiзгo { if(IsPlayerInAnyVehicle(playerid)) { new Float:carroX, Float:carroY, Float:carroZ, Float:carroA; new vid = GetPlayerVehicleID(playerid); GetVehiclePos(vid, carroX, carroY, carroZ); GetVehicleZAngle(vid, carroA); for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Int(string, "Id") == vid) { if(IsPlayerConnected(playerid)) { if(strcmp(dini_Get(string, "Dono"), GetPlayerNameEx(playerid), false) == 0) { format(STRX, sizeof(STRX), "%s", GetPlayerArea(playerid)); if(strcmp("Commerce", STRX, true) == 0 || strcmp("Pershing Square", STRX, true) == 0) { SendClientMessage(playerid, Amarelo, "Vocк nгo pode salvar veнculos neste local."); return 1; } else { dini_FloatSet(string, "CordX", Float:carroX); dini_FloatSet(string, "CordY", Float:carroY); dini_FloatSet(string, "CordZ", Float:carroZ); dini_FloatSet(string, "Angulo", Float:carroA); DestroyVehicle(dini_Int(string, "Id")); vid = AddStaticVehicle(dini_Int(string, "Modelo"), dini_Float(string, "CordX"), dini_Float(string, "CordY"), dini_Float(string, "CordZ"), dini_Float(string, "Angulo"), dini_Int(string, "Cor1"), dini_Int(string, "Cor2")); dini_IntSet(string, "Id", vid); SendClientMessage(playerid, Verde, "Seu veнculo foi salvo na sua posiзгo."); return 1; } } else { SendClientMessage(playerid, Vermelho, "Este veнculo nгo й seu!"); return 1; } } } } } else { SendClientMessage(playerid, Vermelho, "Para salvar a posiзгo vocк presisa estar em seu veнculo."); } } if(listitem == 2) // Cуpia das Chaves { ShowPlayerDialog(playerid, 4505, DIALOG_STYLE_LIST, "Chaves", "{0000FF}Copiar\n{00EEFF}Tomar", "OK", "Cancelar"); } if(listitem == 1) // Sistema de Placas { ShowPlayerDialog(playerid, 0, DIALOG_STYLE_INPUT, "Sistema de Placa", "Digite sua Placa:\n\nMaximo de 8 Caracteres", "Mudar", "Cancelar"); return 1; } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 0) { new string[128], Float:X, Float:Y, Float:Z, Float:angle; if(strlen(inputtext) < 1 || strlen(inputtext) > 8) return SendClientMessage(playerid, 0xAFAFAFAA, "Texto Invalido."); else { format(string, sizeof(string), "Vocк mudou o texto de sua placa para '%s'.", inputtext); SendClientMessage(playerid, 0x33CCFFAA, string); GetPlayerPos(playerid, X, Y, Z); GetPlayerFacingAngle(playerid, angle); SetVehicleNumberPlate(GetPlayerVehicleID(playerid), inputtext); SetVehicleToRespawn(GetPlayerVehicleID(playerid)); GetPlayerPos(playerid, X, Y, Z); SetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z); SetVehicleZAngle(GetPlayerVehicleID(playerid), angle); PutPlayerInVehicle(playerid, GetPlayerVehicleID(playerid), 0); SetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z+2); } } return 1; } if(listitem == 3) // Alterar Primeira Cor { if(IsPlayerInAnyVehicle(playerid)) { format(STRX, sizeof(STRX), "{33AA33}Alterar Primeira Cor\n\n{33AAFF}Digite o ID da cor desejada:"); ShowPlayerDialog(playerid, 4502, DIALOG_STYLE_INPUT, "Meu Carro", STRX, "Alterar", "Cancelar"); } else { SendClientMessage(playerid, Vermelho, "Para mudar a cor vocк presisa estar em seu veнculo."); } } if(listitem == 4) // Alterar Segunda Cor { if(IsPlayerInAnyVehicle(playerid)) { format(STRX, sizeof(STRX), "{33AA33}Alterar Segunda Cor\n\n{33AAFF}Digite o ID da cor desejada:"); ShowPlayerDialog(playerid, 4503, DIALOG_STYLE_INPUT, "Meu Carro", STRX, "Alterar", "Cancelar"); } else { SendClientMessage(playerid, Vermelho, "Para mudar a cor vocк presisa estar em seu veнculo."); } } if(listitem == 5) // Respawnar Carro { new carroid; for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Exists(string)) { if(IsPlayerConnected(playerid)) { if(strcmp(dini_Get(string, "Dono"), GetPlayerNameEx(playerid), false) == 0) { DestroyVehicle(dini_Int(string, "Id")); carroid = AddStaticVehicle(dini_Int(string, "Modelo"), dini_Float(string, "CordX"), dini_Float(string, "CordY"), dini_Float(string, "CordZ"), dini_Float(string, "Angulo"), dini_Int(string, "Cor1"), dini_Int(string, "Cor2")); dini_IntSet(string, "Id", carroid); if(dini_Int(string, "TRoda") == 1) { AddVehicleComponent(carroid, dini_Int(string, "Roda")); } if(dini_Int(string, "TPaintjob") == 1) { ChangeVehiclePaintjob(carroid, dini_Int(string, "Paintjob")); } if(dini_Int(string, "TNitro") == 1) { AddVehicleComponent(carroid, dini_Int(string, "Nitro")); } if(dini_Int(string, "TSuspensao") == 1) { AddVehicleComponent(carroid, dini_Int(string, "Suspensao")); } if(dini_Int(string, "TNeon") == 1) { ChangeVehicleNeon(carroid, dini_Int(string, "Neon")); } if(dini_Int(string, "TSub") == 1) { ChangeVehicleSubwoofer(carroid, dini_Int(string, "Sub")); } if(dini_Int(string, "TAutoTunning") == 1) { AutoTunningRun(carroid); } } } } } } if(listitem == 6) // Ferramentas { if(!IsPlayerInAnyVehicle(playerid)) { SendClientMessage(playerid, 0xCC0000FF, "Vocк precisa estar no veнculo para usar esta opзгo."); } else { ShowPlayerDialog(playerid, vcontrole, DIALOG_STYLE_LIST, "Controle", "{FF0000}Luzes\n{0800FF}Abrir/Fechar Capo\n{00FF08}Abrir/Fechar Boot\n{FFFF00}Motor\n{AE00FF}Alarme", "Confirmar", "Cancelar"); } } if(listitem == 7) // Vender Carro { new VehicleID = GetPlayerVehicleID(playerid); for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(IsPlayerInAnyVehicle(playerid) && GetPlayerVehicleSeat(playerid) == 0 && VehicleID == dini_Int(string, "Id")) { if(IsPlayerConnected(playerid)) { if(strcmp(dini_Get(string, "Dono"), GetPlayerNameEx(playerid), false) == 0) { dini_Set(string, "Dono", "Ninguem"); dini_IntSet(string, "TDono", 0); dini_IntSet(string, "CarVIP", 0); GivePlayerGrana(playerid, dini_Int(string, "Preco")); format(string, sizeof(string), "%s vendeu um veнculo. Local: %s", GetPlayerNameEx(playerid), GetPlayerArea(playerid)); SendClientMessageToAll(Azul, string); return 1; } else { SendClientMessage(playerid, Vermelho, "Este veнculo nгo й seu!"); return 1; } } } } SendClientMessage(playerid, Vermelho, "Vocк precisa estar dentro de seu veнculo para vende-lo."); } if(listitem == 8) // Alterar Modelo { if(IsPlayerInAnyVehicle(playerid)) { ShowPlayerDialog(playerid, modeloveiculo, DIALOG_STYLE_INPUT, "Alterar Modelo", "{FF0000}[x] {00FF00}Os ID's vгo de {FF0000}400 {00FF00}a {FF0000}611\n\n{00FF00}Digite o novo ID do veнculo para mudar:", "OK", "Cancelar"); } else { SendClientMessage(playerid, Vermelho, "Vocк nгo estб em seu veнculo para muda-lo!"); } } if(listitem == 9) { if(IsPlayerInAnyVehicle(playerid)) { ShowPlayerDialog(playerid, tunar, DIALOG_STYLE_LIST, "Tuning Menu", STRD_TUNNING, "OK", "Cancelar"); } else { SendClientMessage(playerid, Vermelho, "Vocк precisa estar em seu veнculo para tuna-lo."); } } if(listitem == 10) { new VehicleID = GetPlayerVehicleID(playerid); for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Int(string, "Id") == VehicleID) { if(strcmp(dini_Get(string, "Dono"), GetPlayerNameEx(playerid), false) == 0) { if(dini_Int(string, "TRoda") == 1) { dini_IntSet(string, "TRoda", 0); RemoveVehicleComponent(VehicleID, dini_Int(string, "Roda")); } if(dini_Int(string, "TPaintjob") == 1) { dini_IntSet(string, "TPaintjob", 0); ChangeVehiclePaintjob(VehicleID, 3); } if(dini_Int(string, "TNitro") == 1) { dini_IntSet(string, "TNitro", 0); RemoveVehicleComponent(VehicleID, dini_Int(string, "Nitro")); } if(dini_Int(string, "TSuspensao") == 1) { dini_IntSet(string, "TSuspensao", 0); RemoveVehicleComponent(VehicleID, dini_Int(string, "Suspensao")); } if(dini_Int(string, "TNeon") == 1) { dini_IntSet(string, "TNeon", 0); ChangeVehicleNeon(VehicleID, 6); } if(dini_Int(string, "TSub") == 1) { dini_IntSet(string, "TSub", 0); ChangeVehicleSubwoofer(VehicleID, 5); } if(dini_Int(string, "TAutoTunning") == 1) { dini_IntSet(string, "TAutoTunning", 0); AutoTunningRemove(VehicleID); } return 1; } } } SendClientMessage(playerid, Vermelho, "Vocк precisa estar em seu veнculo para destuna-lo."); } } } if(dialogid == 4502) { if(response == 1) { if(!VBIsNumeric(inputtext)) { SendClientMessage(playerid, Vermelho, "Valor invбlido, tente novamente!"); return 1; } else { new VehicleID = GetPlayerVehicleID(playerid); for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Exists(string)) { if(VehicleID == dini_Int(string, "Id")) { dini_IntSet(string, "Cor1", StrToInt(inputtext)); ChangeVehicleColor(dini_Int(string, "Id"), dini_Int(string, "Cor1"), dini_Int(string, "Cor2")); return 1; } } } SendClientMessage(playerid, Vermelho, "Este veнculo nгo й seu!"); } } } if(dialogid == 4503) { if(response == 1) { if(!VBIsNumeric(inputtext)) { SendClientMessage(playerid, Vermelho, "Valor invбlido, tente novamente!"); return 1; } else { new VehicleID = GetPlayerVehicleID(playerid); for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Exists(string)) { if(VehicleID == dini_Int(string, "Id")) { dini_IntSet(string, "Cor2", StrToInt(inputtext)); ChangeVehicleColor(dini_Int(string, "Id"), dini_Int(string, "Cor1"), dini_Int(string, "Cor2")); return 1; } } } SendClientMessage(playerid, Vermelho, "Este veнculo nгo й seu!"); } } } if(dialogid == 4504) { if(response == 0) { for(new carro = 0; carro < MAX_CONCES; carro++) { format(string, sizeof(string), PASTA_CONCE, carro); if(dini_Exists(string)) { if(IsPlayerConnected(playerid)) { if(strcmp(dini_Get(string, "Dono"), GetPlayerNameEx(playerid), false) == 0) { if(!IsVehicleOccupied(dini_Int(string, "Id"))) { PutPlayerInVehicle(playerid, dini_Int(string, "Id"), 0); if(GetCarros(playerid) > 1) { ShowPlayerDialog(playerid, 4504, DIALOG_STYLE_MSGBOX, "Aviso", "{1B70E0}Vocк tem mais de um veнculo, clique em 'Prуximo' para entrar em seu prуximo veнculo.", "OK", "Prуximo"); } return 1; } } } } } } } if(dialogid == 4505) { if(response == 1) { if(listitem == 0) // Copiar { ShowPlayerDialog(playerid, 4506, DIALOG_STYLE_INPUT, "Chaves", "{009E77}Digite o ID ou o Nome da pessoa (online)\n{009E77}em seguida dк espaзo o digite o Conce ID do veнculo:\n\n{009E69}OBS: {00899E}Use /infoveiculo para ver o Conce ID de algum veнculo.", "OK", "Cancelar"); } if(listitem == 1) // Tomar { ShowPlayerDialog(playerid, 4507, DIALOG_STYLE_INPUT, "Chaves", "{009E77}Digite corretamente o Nome da pessoa\n{009E77}em seguida dк espaзo o digite o Conce ID do veнculo:", "OK", "Cancelar"); } } } if(dialogid == 4506) { if(response == 1) { new plid, id; if(sscanf(inputtext, "ud", plid, id)) { ShowPlayerDialog(playerid, 4506, DIALOG_STYLE_INPUT, "Chaves", "{99009E}Opss, vocк digitou algo errado!\n\n{009E77}Digite o ID ou o Nome da pessoa (online)\n{009E77}em seguida dк espaзo o digite o Conce ID do veнculo:\n\n{009E69}OBS: {00899E}Use /infoveiculo para ver o Conce ID de algum veнculo.", "OK", "Cancelar"); return 1; } format(file, sizeof(file), PASTA_CONCE, id); if(dini_Exists(file)) { if(strcmp(dini_Get(file, "Dono"), GetPlayerNameEx(playerid), false) == 0 || pAdmin[playerid] >= 2) { if(strcmp(dini_Get(file, "Convidado1"), "Ninguem", false) == 0) { dini_Set(file, "Convidado1", GetPlayerNameEx(plid)); format(string, sizeof(string), "%s te deu uma cуpia da chave do veнculo: %d", GetPlayerNameEx(playerid), id); SendClientMessage(plid, Blue, string); format(string, sizeof(string), "Cуpia gerada com sucesso, agora %s pode usar seu veнculo!", GetPlayerNameEx(plid)); SendClientMessage(playerid, Verde, string); return 1; } if(strcmp(dini_Get(file, "Convidado2"), "Ninguem", false) == 0) { dini_Set(file, "Convidado2", GetPlayerNameEx(plid)); format(string, sizeof(string), "%s te deu uma cуpia da chave do veнculo: %d", GetPlayerNameEx(playerid), id); SendClientMessage(plid, Blue, string); format(string, sizeof(string), "Cуpia gerada com sucesso, agora %s pode usar seu veнculo!", GetPlayerNameEx(plid)); SendClientMessage(playerid, Verde, string); return 1; } if(strcmp(dini_Get(file, "Convidado3"), "Ninguem", false) == 0) { dini_Set(file, "Convidado3", GetPlayerNameEx(plid)); format(string, sizeof(string), "%s te deu uma cуpia da chave do veнculo: %d", GetPlayerNameEx(playerid), id); SendClientMessage(plid, Blue, string); format(string, sizeof(string), "Cуpia gerada com sucesso, agora %s pode usar seu veнculo!", GetPlayerNameEx(plid)); SendClientMessage(playerid, Verde, string); return 1; } SendClientMessage(playerid, Vermelho, "O limite de chaves foi ecedido!"); } else { SendClientMessage(playerid, Vermelho, "Vocк nгo й dono deste veнculo."); } } else { SendClientMessage(playerid, Vermelho, "Veнculo invбlido, tente novamente!"); } return 1; } } if(dialogid == 4507) { if(response == 1) { new nick[MAX_PLAYER_NAME], id; if(sscanf(inputtext, "s[24]d", nick, id)) { ShowPlayerDialog(playerid, 4507, DIALOG_STYLE_INPUT, "Chaves", "{99009E}Opss, vocк digitou algo errado!\n\n{009E77}Digite corretamente o Nome da pessoa\n{009E77}em seguida dк espaзo o digite o Conce ID do veнculo:", "OK", "Cancelar"); return 1; } format(file, sizeof(file), PASTA_CONCE, id); if(dini_Exists(file)) { if(strcmp(dini_Get(file, "Dono"), GetPlayerNameEx(playerid), false) == 0 || pAdmin[playerid] >= 2) { if(strcmp(dini_Get(file, "Convidado1"), nick, false) == 0) { dini_Set(file, "Convidado1", "Ninguem"); format(string, sizeof(string), "Vocк tomou a chave de %s agora ele(a) nгo pode usar seu veнculo!", nick); SendClientMessage(playerid, Verde, string); return 1; } if(strcmp(dini_Get(file, "Convidado2"), nick, false) == 0) { dini_Set(file, "Convidado2", "Ninguem"); format(string, sizeof(string), "Vocк tomou a chave de %s agora ele(a) nгo pode usar seu veнculo!", nick); SendClientMessage(playerid, Verde, string); return 1; } if(strcmp(dini_Get(file, "Convidado3"), nick, false) == 0) { dini_Set(file, "Convidado3", "Ninguem"); format(string, sizeof(string), "Vocк tomou a chave de %s agora ele(a) nгo pode usar seu veнculo!", nick); SendClientMessage(playerid, Verde, string); return 1; } SendClientMessage(playerid, Vermelho, "Verifique se digitou o nome corretamente!"); } else { SendClientMessage(playerid, Vermelho, "Vocк nгo й dono deste veнculo."); } } else { SendClientMessage(playerid, Vermelho, "Veнculo invбlido, tente novamente!"); } } } return 1; }