[Ajuda] Mensagem de Rank!
#1

Pessoal, jб fiz um post parecido com este mбs nгo conseguir resultado. Agora uns meses depois resolvi fazer-lo novamente! Queria que alguйm me ajuda-se com uma mensagem ao passar de rank

Exemplo:

Um player estб trabalhando ele estб exatamente com um level de 399 de Rank, quando ele termina o Trabalho vem mais 2 ranks ou seja de 399 para 401 e passou de 400 jб almenta o level no rank vai para "Caminhoneiro Bom" quando ele for para este level queria que aparece-se a Mensagem para Todos os Players que Tal Player passou de level de rank de Tal Rank para Tal Rank! Jб sei como faz a mensagem sу quero saber como fasso para a Mensagem aparecer na hora certa! Quando ele terminar o trabalho.

Quem puder ajudar eu agradeзo, agradeзo desde jб!
Reply
#2

Posta o cуdigo de quando ele estiver com 400 ele passar de rank.
Reply
#3

Quote:
Originally Posted by [BOPE]Seu._.Madruga
View Post
Posta o cуdigo de quando ele estiver com 400 ele passar de rank.
Nгo tem este cуdigo estб definido jб tipo!
Ele estб com 400 de level estб definido para ele ser "caminhoneiro bom"
Ele digita /rank aparece o rank dele "Seu Rank й: Caminhoneiro Novato" ele faz uns 200 trabalho ai ele aperta de novo /rank ai ja muda ja vai pro "Caminhoneiro Amador" sу que ele sу ver quando digita /rank queria que aparece-se pra todos uma mensagem ao passar eu nao tenho codigo de 400 ele passa de rank.. Vai Automatico!
Reply
#4

Bom posso atй ter uma idйia,me passe o Comando /trabalhar ou /t ?
Reply
#5

Posta aqui o comando /rank

Pois nгo tem como eu te falar oque fazer sendo que nem conheзo o sistema.
Reply
#6

Quote:
Originally Posted by PedexM
View Post
Bom posso atй ter uma idйia,me passe o Comando /trabalhar ou /t ?
pawn Code:
COMMAND:trabalhar(playerid, params[])
{
    // Send the command to all admins so they can see it
    SendAdminText(playerid, "/trabalhar", params);

    // Check if the player has logged in
    if (APlayerData[playerid][LoggedIn] == true)
    {
        // First check if the player already has a job
        if (APlayerData[playerid][JobStarted] == false)
        {
            // Check the player's class
            switch (APlayerData[playerid][PlayerClass])
            {
                case ClassTruckDriver:
                {
                    // Get the id of the convoy (if the player is in a convoy)
                    new Convoy = APlayerData[playerid][ConvoyID];

                    // Check if the player is part of a convoy AND is not the leader
                    if ((APlayerData[playerid][InConvoy] == true) && (AConvoys[Convoy][Members][0] != playerid))
                    {
                        // Let the player know he's not the leader of his convoy and cannot start a job
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк nгo й o lнder do Comboio, por tanto nгo pode iniciar uma missгo.");
                        // Exit the function
                        return 1;
                    }

                    // A convoy-leader proceeds here, and also a normal player (no convoy-member)

                    // Check if the player is the driver of a vehicle
                    if (GetPlayerVehicleSeat(playerid) == 0)
                    {
                        // Check if the player is inside a valid trucking vehicle
                        switch (GetVehicleModel(GetPlayerVehicleID(playerid)))
                        {
                            case VehicleFlatbed, VehicleDFT30, VehicleCementTruck: // Flatbed, DFT-30, CementTruck
                                if (APlayerData[playerid][TruckerLicense] == 1) // Check if the player has acquired a truckers license
                                    ShowPlayerDialog(playerid, DialogTruckerJobMethod, DIALOG_STYLE_LIST, "Selecione o mйtodo:", "Configurar sua prуpria carga e rota\r\nAtribuir auto-carga", "Selecionar", "Cancelar");
                                else
                                    Trucker_StartRandomJob(playerid); // Start a random job

                            case VehicleLineRunner, VehicleTanker, VehicleRoadTrain: // Player is driving a truck which needs a trailer
                                if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid))) // Check if there is a trailer attached
                                    if (APlayerData[playerid][TruckerLicense] == 1) // Check if the player has acquired a truckers license
                                        ShowPlayerDialog(playerid, DialogTruckerJobMethod, DIALOG_STYLE_LIST, "Selecione o mйtodo:", "Configurar sua prуpria carga e rota\r\nAtribuir auto-carga", "Selecionar", "Cancelar");
                                    else
                                        Trucker_StartRandomJob(playerid); // Start a random job
                                else
                                    SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa de um trailer para iniciar o trabalho.");

                            default: SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um caminhгo para iniciar o trabalho.");
                        }
                    }
                    else
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um caminhгo para iniciar o trabalho.");
                }
                case ClassBusDriver:
                {
                    // Check if the player is the driver of a vehicle
                    if (GetPlayerVehicleSeat(playerid) == 0)
                        if (GetVehicleModel(GetPlayerVehicleID(playerid)) == VehicleCoach) // Check if the player is inside a valid busdriver vehicle
                            if (APlayerData[playerid][BusLicense] == 1) // Check if the player has acquired a busdriver license
                                ShowPlayerDialog(playerid, DialogBusJobMethod, DIALOG_STYLE_LIST, "Selecione o mйtodo :", "Escolha sua prуpria rota de фnibus\r\nAtribuir auto-rota", "Selecionar", "Cancelar");
                            else
                                BusDriver_StartJob(playerid, random(sizeof(ABusRoutes))); // Start a random job
                        else
                            SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar dirigindo um фnibus para iniciar o trabalho!");
                    else
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar dirigindo um фnibus para iniciar o trabalho!");
                }
                case ClassPilot:
                {
                    // Check if the player is the driver of a vehicle
                    if (GetPlayerVehicleSeat(playerid) == 0)
                    {
                        // Check if the player is inside a valid piloting vehicle
                        switch (GetVehicleModel(GetPlayerVehicleID(playerid)))
                        {
                            case VehicleShamal, VehicleNevada, VehicleMaverick, VehicleCargobob, VehicleAT400, VehicleAndromada, VehicleDodo: // Plane (Shamal), Plane (Nevada), helicopter (Maverick)
                                Pilot_StartRandomJob(playerid); // Start a random piloting job
                            default: SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo de voo para iniciar o trabalho.");
                        }
                    }
                    else
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo de voo para iniciar o trabalho.");
                }
                case ClassMafia:
                {
                    // Check if the player is the driver of a vehicle
                    if (GetPlayerVehicleSeat(playerid) == 0)
                    {
                        // Check if the player is inside a valid piloting vehicle
                        switch (GetVehicleModel(GetPlayerVehicleID(playerid)))
                        {
                            case VehicleSandKing, VehicleMoonbeam: // Sangking, Moonbeam
                                Mafia_StartRandomJob(playerid); // Start a random mafia job
                            default: SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo da mбfia para iniciar o trabalho.");
                        }
                    }
                    else
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo da mбfia para iniciar o trabalho.");
                }
                case ClassCourier:
                {
                    // Check if the player is the driver of a vehicle
                    if (GetPlayerVehicleSeat(playerid) == 0)
                    {
                        // Check if the player is inside a valid courier vehicle
                        switch (GetVehicleModel(GetPlayerVehicleID(playerid)))
                        {
                            case VehicleBurrito, VehicleFaggio, VehicleBenson: // Van (Burrito), bike (Faggio)
                                Courier_StartJob(playerid); // Start a random courier job
                            default: SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo dos Correios para iniciar o trabalho.");
                        }
                    }
                    else
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo dos Correios para iniciar o trabalho.");
                }
                case ClassRoadWorker:
                {
                    // Check if the player is the driver of a vehicle
                    if (GetPlayerVehicleSeat(playerid) == 0)
                    {
                        // Check if the player is inside a valid courier vehicle
                        switch (GetVehicleModel(GetPlayerVehicleID(playerid)))
                        {
                            case VehicleUtilityVan, VehicleTowTruck: // Utility Van, Towtruck
                                Roadworker_StartRandomJob(playerid); // Start a random roadworker job
                            default: SendClientMessage(playerid, 0xFF0000FF, "Vocк precisa estar conduzindo um veнculo do DNIT para iniciar o trabalho.");
                        }
                    }
                    else
                        SendClientMessage(playerid, 0xFF0000FF, " Vocк precisa estar conduzindo um veнculo do DNIT para iniciar o trabalho.");
                }
                default: SendClientMessage(playerid, 0xFF0000FF, " A sua classe nгo pode fazer todos os trabalhos.");
            }
        }
        else // Send a message to let the player know he already has a job
            SendClientMessage(playerid, 0xFF0000FF, " Vocк jб estб realizando um trabalho!");
    }
    else
        return 0;

    // Let the server know that this was a valid command
    return 1;
}
Reply
#7

Quote:
Originally Posted by [BOPE]Seu._.Madruga
View Post
Posta aqui o comando /rank

Pois nгo tem como eu te falar oque fazer sendo que nem conheзo o sistema.
pawn Code:
COMMAND:meurank(playerid, params[])
{
    // Setup local variables
    new Name[MAX_PLAYER_NAME];
    new Msg[2000];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    // Check if the player has logged in
    if (APlayerData[playerid][LoggedIn] == true)
    {
        // Construct the rules
        format(Msg, 2000, "%s{FFFFFF}Olб, {FF0000}%s {FFFFFF}Veja abaixo seus ranks em cada Profissao:\n\n", Msg, Name);
        format(Msg, 2000, "%s{00FF00}Rank{FFFFFF} como{FFFF00} Caminhoneiro{FFFFFF} й:{FF0000} %s\n{FFFFFF}Pontos como {FFFF00}Caminhoneiro{FFFFFF} й: %i\n\n",Msg, Rank, APlayerData[playerid][StatsTruckerJobs]);
        format(Msg, 2000, "%s{00FF00}Rank{FFFFFF} como{00D1D1} Motorista de Onibus{FFFFFF} й: %s\nPontos como {00D1D1}Motorista de Onibus{FFFFFF}: %i\n\n", Msg, Rank2, APlayerData[playerid][StatsBusDriverJobs]);
        format(Msg, 2000, "%s{00FF00}Rank{FFFFFF} como{0070AF} Piloto{FFFFFF} й: %s\nPontos como {0070AF}Piloto{FFFFFF}: %i\n\n", Msg, Rank3, APlayerData[playerid][StatsPilotJobs]);
        format(Msg, 2000, "%s{00FF00}Rank{FFFFFF} como{0A00FF} Policial{FFFFFF} й: %s\nPontos como {0A00FF}Policial{FFFFFF}: %i\n\n", Msg, Rank4, APlayerData[playerid][StatsPoliceFined]);
        format(Msg, 2000, "%s{00FF00}Rank{FFFFFF} como{7D00B8} Mafioso{FFFFFF} й: %s\nPontos como {7D00B8}Mafioso{FFFFFF}: %i\n\n", Msg, Rank5, APlayerData[playerid][StatsMafiaJobs]);
        format(Msg, 2000, "%s{FF0000}%s{FFFFFF} Trabalhe e conquiste altos ranks\n{FF0000}Vocк tem alguma duvida? {FFFFFF}/admins /comandos{FF0000} Divirta-se!", Msg, Name);
        // Show a dialog that shows the rules
        ShowPlayerDialog(playerid, Dialog_Rank, DIALOG_STYLE_MSGBOX, "Seu Rank!", Msg, "Aceitar", TXT_DialogButtonCancel);
    }
    else
        return 0;

    // Let the server know that this was a valid command
    return 1;
}
Reply
#8

Nossa vocк estб usando PPC_Trucking...(Ele й complicado,jб tive que ouvir muitas crнticas por usar ele e ser novato)

-

A Minha мdeia era: Quando Ele terminar a Missгo , Verificar o Score Dele , E Colocar o prуprio comando /rank embaixo, Sу que como eu pensava que vocк estava criando um GM do 0 de Caminhoneiro, a Maioria tem como salvar os Trabalhos Feitos, tipo no comando tinha para iniciar e terminar o comando,mas como o do PPC_Trucking й confuso(Eu acho que sу o Dono do GM Entende ele, Pois as Arrays que ele criou,sгo vбrias,e para adicionar uma se tem que ir em muitos lugares), porйm eu posso te dб uma нdeia,pode ser complicada,em PPC_Defines tem a Enum APlayerData , Vocк vai lб em baixo e faz assim:

pawn Code:
RentedVehicleID // Estб deste jeito no final
}

//Coloca Assim Agora

    RentedVehicleID,
    Trabalhos
}
Agora vocк tem que procurar aonde termina a missгo(nгo sei onde й), e logo embaixo,vocк acha um lugar e coloca
pawn Code:
APlayerData[playerid][Trabalhos] ++;
e Tenta Encaixar o Comando /rank lб exemplo

pawn Code:
APlayerData[playerid][Trabalhos] ++;
    if(APlayerData[playerid][Trabalhos] < 100 && > 200 APlayerData[playerid][Trabalhos])//Algo Assim
    {
         SendClientMessage(playerid, -1, "Vocк agora й Caminhoneiro Iniciante,Parabens");
    }
        if(APlayerData[playerid][Trabalhos] < 200 && > 300 APlayerData[playerid][Trabalhos])//Algo Assim
    {
         SendClientMessage(playerid, -1, "Vocк agora й Caminhoneiro Mйdio,Parabens");
    }
//Continua...
Ai vocк tem que saber onde salva os leveis , dinheiros, e adicionar tambйm Igual a deles sу que com "Trabalhos"
Eu acho muito dнficil isso(Eu nгo daria conta disso)
Mas como muitos jб me recomendaram,PPC_Trucking nгo й para Iniciantes(eu tambйm sou).
Reply
#9

Quote:
Originally Posted by PedexM
View Post
Nossa vocк estб usando PPC_Trucking...(Ele й complicado,jб tive que ouvir muitas crнticas por usar ele e ser novato)

-

A Minha мdeia era: Quando Ele terminar a Missгo , Verificar o Score Dele , E Colocar o prуprio comando /rank embaixo, Sу que como eu pensava que vocк estava criando um GM do 0 de Caminhoneiro, a Maioria tem como salvar os Trabalhos Feitos, tipo no comando tinha para iniciar e terminar o comando,mas como o do PPC_Trucking й confuso(Eu acho que sу o Dono do GM Entende ele, Pois as Arrays que ele criou,sгo vбrias,e para adicionar uma se tem que ir em muitos lugares), porйm eu posso te dб uma нdeia,pode ser complicada,em PPC_Defines tem a Enum APlayerData , Vocк vai lб em baixo e faz assim:

pawn Code:
RentedVehicleID // Estб deste jeito no final
}

//Coloca Assim Agora

    RentedVehicleID,
    Trabalhos
}
Agora vocк tem que procurar aonde termina a missгo(nгo sei onde й), e logo embaixo,vocк acha um lugar e coloca
pawn Code:
APlayerData[playerid][Trabalhos] ++;
e Tenta Encaixar o Comando /rank lб exemplo

pawn Code:
APlayerData[playerid][Trabalhos] ++;
    if(APlayerData[playerid][Trabalhos] < 100 && > 200 APlayerData[playerid][Trabalhos])//Algo Assim
    {
         SendClientMessage(playerid, -1, "Vocк agora й Caminhoneiro Iniciante,Parabens");
    }
        if(APlayerData[playerid][Trabalhos] < 200 && > 300 APlayerData[playerid][Trabalhos])//Algo Assim
    {
         SendClientMessage(playerid, -1, "Vocк agora й Caminhoneiro Mйdio,Parabens");
    }
//Continua...
Ai vocк tem que saber onde salva os leveis , dinheiros, e adicionar tambйm Igual a deles sу que com "Trabalhos"
Eu acho muito dнficil isso(Eu nгo daria conta disso)
Mas como muitos jб me recomendaram,PPC_Trucking nгo й para Iniciantes(eu tambйm sou).
Meu sistema de rank й assim:
pawn Code:
rank(playerid)
{
            switch(APlayerData[playerid][StatsTruckerJobs])
            {
                case 0..500:       strcat(Rank,   "Novato               ");
                case 501..700:     strcat(Rank,   "Aprendiz             ");
                case 701..900:     strcat(Rank,   "Estreante           ");
                case 901..1100:     strcat(Rank,   "Profissional        ");
                case 1101..1300:     strcat(Rank,   "Veterano            ");
                case 1301..1600:     strcat(Rank,   "Ninja              ");
                case 1601..1800:     strcat(Rank,   "Viciado             ");
                case 1801..2000:    strcat(Rank,  "Rei da Estrada      ");
            }
            switch(APlayerData[playerid][StatsBusDriverJobs])
            {
                case 0..500:       strcat(Rank2,   "Novato             ");
                case 501..700:     strcat(Rank2,   "Motorista          ");
                case 701..900:     strcat(Rank2,   "Estreante           ");
                case 901..1100:     strcat(Rank2,   "Profissional       ");
                case 1101..1300:     strcat(Rank2,   "Veterano            ");
                case 1301..1600:     strcat(Rank2,   "Ninja               ");
                case 1601..1800:     strcat(Rank2,   "Viciado             ");
                case 1801..2000:    strcat(Rank2,  "Motorista Rei       ");
            }

            switch(APlayerData[playerid][StatsPilotJobs])
            {
                case 0..500:       strcat(Rank3,   "Novato      ");
                case 501..700:     strcat(Rank3,   "Aprendiz    ");
                case 701..900:     strcat(Rank3,   "Estreante   ");
                case 901..1100:     strcat(Rank3,   "Profissional");
                case 1101..1300:     strcat(Rank3,   "Veterano    ");
                case 1301..1600:     strcat(Rank3,   "Ninja       ");
                case 1601..1800:     strcat(Rank3,   "Viciado     ");
                case 1801..2000:    strcat(Rank3,  "Piloto Уtimo");
            }
            switch(APlayerData[playerid][StatsPilotJobs])
            {
                case 0..500:       strcat(Rank4,   "Guarda             ");
                case 501..700:     strcat(Rank4,   "Seguranзa          ");
                case 701..900:     strcat(Rank4,   "Policial Rodoviario");
                case 901..1100:     strcat(Rank4,  "Policial Federal   ");
                case 1101..1300:     strcat(Rank4, "SWAT               ");
                case 1301..1600:     strcat(Rank4, "FBI                ");
            }
            switch(APlayerData[playerid][StatsMafiaJobs])
            {
                case 0..500:       strcat(Rank5,   "Capanga   ");
                case 501..700:     strcat(Rank5,   "Ladrгo    ");
                case 701..900:     strcat(Rank5,   "Experiente");
                case 901..1100:     strcat(Rank5,   "Veterano  ");
                case 1101..1300:     strcat(Rank5,   "Assasino  ");
                case 1301..1600:     strcat(Rank5,   "Mafioso   ");
            }
            /*if(APlayerData[playerid][StatsPilotJobs] < 701)
            {
            new MSGRANK[128], Name[MAX_PLAYER_NAME];
            GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
            format(MSGRANK,128, "Parabйns ao Jogador %s agora ele esta com Ranking Level %s", Name, Rank2);
            SendClientMessageToAll(-1, MSGRANK);
            }*/

}
E os trabalhos fica salvo na pasta do jogador ADataPlayerData[playerid][StatsTruckerJobs]
Ja estб definido para ganhar 2 ranks a cada trabalho. Nгo quero que a Mesangem apareзa para o Jogador. Queria que aparece-se uma Mensagem para todos os Jogadores "SendClientMessageToAll"
Reply
#10

Ah , nгo vi que jб tinha definido os trabalhos, Tenta aplicar o Rank , onde termina o trabalho, para verificar,meu PPC_Trucking estб em inglкs e estб dнficil achar onde termina o trabalho,e й sу trocar o SendClientMessage,sу que vocк achar onde termina o trabalho,metade do caminho jб estб feito,e eu vou te ajudando.
Reply
#11

Quote:
Originally Posted by PedexM
View Post
Ah , nгo vi que jб tinha definido os trabalhos, Tenta aplicar o Rank , onde termina o trabalho, para verificar,meu PPC_Trucking estб em inglкs e estб dнficil achar onde termina o trabalho,e й sу trocar o SendClientMessage,sу que vocк achar onde termina o trabalho,metade do caminho jб estб feito,e eu vou te ajudando.
Conseguir com sua Explicaзгo!! Vlw mesmo cara estavo precisando disso! + REP
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)