[Ajuda] Coma boto esse codigo no meu GM?
#1

Code:
#include <a_samp>
#define MAX_VEICULOS        2000
#define vermelho            0xD50000AA
#define verde               0x00B000AA
#define ARQUIVO_VEICULO     "Veiculos.stakline"
#define DIALOGS             1589
enum vp{dono[20],trancado}
new VEICULO_DONO[MAX_VEICULOS][vp],tmp1,tmp2,tmp3,tmp4;
//============================================================================*/

public OnFilterScriptInit()
{
    new Argumento[8][100];
	new str[256];
    new modeloid,Float:x,Float:y,Float:z,Float:a,cor1,cor2,veiculoid;
	new File: ArquivoVeiculo = fopen(ARQUIVO_VEICULO, io_read);
	if (ArquivoVeiculo)
	{
		for(new id; id<MAX_VEICULOS; id++)
		{
			fread(ArquivoVeiculo, str);
			split(str, Argumento, ',');

            modeloid     =       strval   (Argumento[0]);
			x            =       floatstr (Argumento[1]);
			y            =       floatstr (Argumento[2]);
			z            =       floatstr (Argumento[3]);
			a            =       floatstr (Argumento[4]);
			cor1         =       strval   (Argumento[5]);
			cor2         =       strval   (Argumento[6]);
            veiculoid = AddStaticVehicle(modeloid,x,y,z,a,cor1,cor2);
            format(VEICULO_DONO[veiculoid][dono],20,Argumento[7]);
		}
		fclose(ArquivoVeiculo);
	}
    print("\n---------------------------------------");
	print(" Veiculo Player - by Stakline -HomeHots");
	print("---------------------------------------\n");
	return 1;
}
//============================================================================//
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/vp", true) == 0) {
            if (PlayerInfo[playerid][pAdmin] >= 4))
        ShowPlayerDialog(playerid,DIALOGS+1,DIALOG_STYLE_INPUT,"Veiculo Player","Digite o ID do player:\n(que serб dono do veнculo):","Ok","Cancelar");
        return 1;
    }
//----------------------------------------------------------------------------//
    if(strcmp(cmdtext, "/vptrancar", true) == 0) {
        if(!IsPlayerInAnyVehicle(playerid)){
            SendClientMessage(playerid,vermelho,"Vocк nгo estб em um veiculo!");
            return 1;
        }
        new Veiculo = GetPlayerVehicleID(playerid);
        if(CompararStrings(VEICULO_DONO[Veiculo][dono],PlayerNome(playerid))){
            if(VEICULO_DONO[Veiculo][trancado] == 1){
                SendClientMessage(playerid, vermelho, "[BGG]: O veнculo jб estб trancado!");
                return 1;
            }
            VEICULO_DONO[Veiculo][trancado] = 1;
            SendClientMessage(playerid, verde, "[BGG]: Veiculo trancado com sucesso.");
            return 1;
        }else{
            SendClientMessage(playerid, vermelho, "[BGG]: Esse veiculo nгo й seu!");
            return 1;
        }

    }
//----------------------------------------------------------------------------//
    if(strcmp(cmdtext, "/vpdestrancar", true) == 0) {
        if(!IsPlayerInAnyVehicle(playerid)){
            SendClientMessage(playerid,vermelho,"Vocк nгo estб em um veiculo!");
            return 1;
        }
        new Veiculo = GetPlayerVehicleID(playerid);
        if(CompararStrings(VEICULO_DONO[Veiculo][dono],PlayerNome(playerid))){
            if(VEICULO_DONO[Veiculo][trancado] == 0){
                SendClientMessage(playerid, vermelho, "[BGG]: O veнculo jб estб destrancado!");
                return 1;
            }
            VEICULO_DONO[Veiculo][trancado] = 0;
            SendClientMessage(playerid, verde, "[BGG]: Veiculo destrancado com sucesso.");
            return 1;
        }else{
            SendClientMessage(playerid, vermelho, "[BGG]: Esse veiculo nгo й seu!");
            return 1;
        }
    }
    if(strcmp(cmdtext, "/vpcomandos", true) == 0) {
        SendClientMessage(playerid, verde, "[BGG]: /vptrancar e /vpdestrancar!");
        return 1;
    }
	return 0;
}
//============================================================================//
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(!ispassenger){
        if(VeiculoDono(playerid, vehicleid) == -1){return 1;}
        if(VeiculoDono(playerid, vehicleid)){
            SendClientMessage(playerid, verde, "[BGG]: Bem Vindo ao Seu Veiculo.");
        }else{
            if(VEICULO_DONO[vehicleid][trancado] == 1){
                RemovePlayerFromVehicle(playerid);
                new Float:x,Float:y,Float:z;
                GetPlayerPos(playerid,x,y,z);
                SetPlayerPos(playerid,x,y,z+0.5);
                new msg[256];
                format(msg,256,"[BGG]: Este veiculo й exclusivo de %s!",VEICULO_DONO[vehicleid][dono]);
                SendClientMessage(playerid, vermelho, msg);
            }

        }
    }
    return 1;
}
//============================================================================//
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOGS+1){
        if(response){
            if(!IsNumeric(inputtext)){
                SendClientMessage(playerid, vermelho, "[BGG]:  Por favor digite o ID do player!");
                ShowPlayerDialog(playerid,DIALOGS+1,DIALOG_STYLE_INPUT,"Veiculo Player","Digite o ID do player:\n(que serб dono do veнculo):","Ok","Cancelar");
                return 1;
            }
            tmp1 = 0;tmp2 = 0;tmp3= 0;
            tmp1 = strval(inputtext);
            if(!IsPlayerConnected(strval(inputtext))){
        	    SendClientMessage(playerid, vermelho, "[BGG]:  Jogador nгo estб conectado!");
                ShowPlayerDialog(playerid,DIALOGS+1,DIALOG_STYLE_INPUT,"Veiculo Player","Digite o ID do player:\n(que serб dono do veнculo):","Ok","Cancelar");
                return 1;
            }
            ShowPlayerDialog(playerid,DIALOGS+2,DIALOG_STYLE_INPUT,"Veiculo Player","Digite o ID do veнculo:\n(de 411 а 611)","Ok","Cancelar");
            return 1;
        }else{return SendClientMessage(playerid, vermelho, "[BGG]: Criaзгo cancelada!");}
    }
//===================================================================================================================================================================================//
    if(dialogid == DIALOGS+2){
        if(response){
            if(!IsNumeric(inputtext)){
                SendClientMessage(playerid, vermelho, "[BGG]: Modelo ID Incorreto! (400 a 611) -  NUMEROS!");
                ShowPlayerDialog(playerid,DIALOGS+2,DIALOG_STYLE_INPUT,"Veiculo Player","Digite o ID do veнculo:\n(de 411 а 611)","Ok","Cancelar");
                return 1;
            }
            tmp2 = strval(inputtext);
            if(tmp2 < 400 || tmp2 > 611){
                ShowPlayerDialog(playerid,DIALOGS+2,DIALOG_STYLE_INPUT,"Veiculo Player - ","Digite o ID do veнculo:\n(de 411 а 611)","Ok","Cancelar");
                SendClientMessage(playerid, vermelho, "[BGG]: Modelo ID Incorreto! (400 a 611)");
                return 1;
            }
            ShowPlayerDialog(playerid,DIALOGS+3,DIALOG_STYLE_LIST,"Veнculo Player - Cor 1:"," Preto \n Branco \n Vermelho \n Azul \n Verde \n Amarelo \n Rosa \n Marron \n Cinza \n Ouro \n Azul Escuro \n Azul Claro \n Verde \n Cinza Escuro \n Vermelho Escuro \n Marron Escuro \n« Voltar","Pintar","Fechar");
        }else{return SendClientMessage(playerid, vermelho, "[BGG]: Criaзгo cancelada!");}
        return 1;
    }
//===================================================================================================================================================================================//
    if(dialogid == DIALOGS+3){
        if(response){
            if(listitem == 0){tmp3= 0;}
            else if(listitem == 1){tmp3= 1;}
            else if(listitem == 2){tmp3= 3;}
            else if(listitem == 3){tmp3= 79;}
            else if(listitem == 4){tmp3= 86;}
            else if(listitem == 5){tmp3= 6;}
            else if(listitem == 6){tmp3= 126;}
            else if(listitem == 7){tmp3= 66;}
            else if(listitem == 8){tmp3= 24;}
            else if(listitem == 9){tmp3= 123;}
            else if(listitem == 10){tmp3= 53;}
            else if(listitem == 11){tmp3= 93;}
            else if(listitem == 12){tmp3= 83;}
            else if(listitem == 13){tmp3= 25;}
            else if(listitem == 14){tmp3= 43;}
            else if(listitem == 15){tmp3= 84;}
            ShowPlayerDialog(playerid,DIALOGS+4,DIALOG_STYLE_LIST,"Veнculo Player - Cor 2:"," Preto \n Branco \n Vermelho \n Azul \n Verde \n Amarelo \n Rosa \n Marron \n Cinza \n Ouro \n Azul Escuro \n Azul Claro \n Verde \n Cinza Escuro \n Vermelho Escuro \n Marron Escuro \n« Voltar","Pintar","Fechar");
        }else{return SendClientMessage(playerid, vermelho, "[BGG]: Criaзгo cancelada!");}
        return 1;
    }
//===================================================================================================================================================================================//
    if(dialogid == DIALOGS+4){
        if(response){
            if(listitem == 0){tmp4= 0;}
            else if(listitem == 1){tmp4= 1;}
            else if(listitem == 2){tmp4= 3;}
            else if(listitem == 3){tmp4= 79;}
            else if(listitem == 4){tmp4= 86;}
            else if(listitem == 5){tmp4= 6;}
            else if(listitem == 6){tmp4= 126;}
            else if(listitem == 7){tmp4= 66;}
            else if(listitem == 8){tmp4= 24;}
            else if(listitem == 9){tmp4= 123;}
            else if(listitem == 10){tmp4= 53;}
            else if(listitem == 11){tmp4= 93;}
            else if(listitem == 12){tmp4= 83;}
            else if(listitem == 13){tmp4= 25;}
            else if(listitem == 14){tmp4= 43;}
            else if(listitem == 15){tmp4= 84;}
            if(CriarVeiculoPlayer(playerid,tmp1,tmp2,tmp3,tmp4)){
                SendClientMessage(playerid, verde, "[BGG]: Veiculo Criado e Salvo com sucesso!");
                new msg[256];
                format(msg,256,"[BGG]: %s criou um veiculo exclusivo para vocк!",PlayerNome(playerid));
                SendClientMessage(tmp2, verde, msg);
            }else{
                SendClientMessage(playerid, verde, "[BGG]: Erro ao criar o veiculo!");
            }
        }else{return SendClientMessage(playerid, vermelho, "[BGG]: Criaзгo cancelada!");}
        return 1;
    }
//===================================================================================================================================================================================//
    return 0;
}
//============================================================================//
stock PlayerNome(id){
    new Nome[MAX_PLAYER_NAME];
    GetPlayerName(id, Nome, MAX_PLAYER_NAME);
    return Nome;
}
//============================================================================//
stock CompararStrings(String1[],String2[]){
    if(strlen(String1) == 0 || strlen(String2) == 0){
        return false;
    }
    if(strcmp(String1 ,String2, true ) == 0 ){
        //printf("'%s' й igual б '%s'!",String1,String2);
        return true;
    }else{
        //printf("'%s' й diferente de '%s'!",String1,String2);
        return false;
    }
}
//============================================================================//
stock CriarVeiculoPlayer(playerid,plid,modeloid,cor1,cor2){
	new Float:x, Float:y, Float:z, Float:a, string[256], File:temp, veiculoid;

    GetPlayerPos(playerid, x, y, z);
    GetPlayerFacingAngle(playerid,a);

	format(string, sizeof(string), "%d,%f,%f,%f,%f,%d,%d,%s,\r\n", modeloid,x,y,z,a,cor1,cor2,PlayerNome(plid));
	temp = fopen(ARQUIVO_VEICULO, io_append);
    fwrite(temp, string);
    fclose(temp);

    veiculoid = AddStaticVehicle(modeloid,x,y,z,a,cor1,cor2);
    format(VEICULO_DONO[veiculoid][dono],20,PlayerNome(plid));
    return 1;
}
//============================================================================//
stock VeiculoDono(playerid, veiculoid){
    if(strlen(VEICULO_DONO[veiculoid][dono]) == 0){
        return -1;
    }
    if(!CompararStrings(VEICULO_DONO[veiculoid][dono],PlayerNome(playerid))){
        return 0;
    }
    return 1;
}
//============================================================================//
forward split(const strsrc[], strdest[][], delimiter);
public split(const strsrc[], strdest[][], delimiter)
{
	new i, li;
	new aNum;
	new len;
	while(i <= strlen(strsrc)){
	    if(strsrc[i]==delimiter || i==strlen(strsrc)){
	        len = strmid(strdest[aNum], strsrc, li, i, 128);
	        strdest[aNum][len] = 0;
	        li = i+1;
	        aNum++;
		}
		i++;
	}
	return 1;
}
//============================================================================//
stock IsNumeric(const string[]) {
    new length=strlen(string);
    if (length==0) return false;
    for (new i = 0; i < length; i++) {
        if (
        (string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+')
        || (string[i]=='-' && i!=0)
        || (string[i]=='+' && i!=0)
        ) return false;
    }
    if (length==1 && (string[0]=='-' || string[0]=='+')) return false;
    return true;
}
//============================================================================//
Como ponho isso no meu Gm?

ele vem base do BMG.
Reply
#2

Um Exemplo...
pegue o que tem em OnFilterScriptInit e coloque em OnGameModeInit.
Pegue o que tem em OnPlayerCommandText e coloque na mesma Public do GameMode.

e por ai vai...
Reply
#3

Valew ja ajudou bastante se der algum ERRO posto aki
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)