[Pedido] Adc timer, tentei deu erros pq й pra 2
#1

Queria colocar um timer de 1 mim pra esperar pra consertar o carro, tentei colocar, mas n consegui pq deu erro na hora de definir o playerid e o giveplayerid, qm puder ajuda ai pq ta consertando bem na hora q da o cmd =\
pawn Код:
else if(strcmp(x_Emprego,"reparo",true) == 0)
            {
                if(RepairOffer[playerid] < 999)
                {
                    if(GetPlayerMoney(playerid) > RepairPrice[playerid])
                    {
                        if(IsPlayerInAnyVehicle(playerid))
                        {
                            if(IsPlayerConnected(RepairOffer[playerid]))
                            {
                                GetPlayerName(RepairOffer[playerid], giveplayer, sizeof(giveplayer));
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                RepairCar[playerid] = GetPlayerVehicleID(playerid);
                                SetVehicleHealth(RepairCar[playerid], 1000.0);
                                RepairVehicle(RepairCar[playerid]);
                                format(string, sizeof(string), "* O mecвnico %s reparou seu veнculo por R$%d.",giveplayer,RepairPrice[playerid]);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "* Vocк reparou o veнculo de %s, e R$%d foi adicionado no seu salбrio.",sendername,RepairPrice[playerid]);
                                SendClientMessage(RepairOffer[playerid], COLOR_LIGHTBLUE, string);
                                PlayerInfo[RepairOffer[playerid]][pMechSkill] ++;
                                if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 50)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 2, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 100)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 3, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 200)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 4, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 400)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 5, Agora ele pode adicionar combustivel para qualquer carro."); }
                                PlayerInfo[RepairOffer[playerid]][pSalario] += RepairPrice[playerid];
                                GivePlayerMoney(playerid, -RepairPrice[playerid]);
                                RepairOffer[playerid] = 999;
                                RepairPrice[playerid] = 0;
                                return 1;
                            }
                            return 1;
                        }
                        return 1;
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode permitir o reparo !");
                        return 1;
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   Falta uma oferta para Vocк reparar o carro !");
                    return 1;
                }
            }
Reply
#2

Use, SetTimexEx..

Exemplo:
pawn Код:
// Na funзгo
SetTimerEx("Reparar", 1000*60, false, "ii", playerid, giveplayerid);
//Callback

forward Reparar(playerid, giveplayerid);
public Reparar(playerid, giveplayerid)
{
// Aqui a funзгo de reparar o carro.
return 1;
}
Reply
#3

fica dando erro no undefined giveplayerid playerid na primeira linha
pawn Код:
forward AceitarReparoTempo(playerid, giveplayerid);
public AceitarReparoTempo(playerid, giveplayerid)
                            {
                                GetPlayerName(RepairOffer[playerid], giveplayer, sizeof(giveplayer));
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                RepairCar[playerid] = GetPlayerVehicleID(playerid);
                                SetVehicleHealth(RepairCar[playerid], 1000.0);
                                RepairVehicle(RepairCar[playerid]);
                                format(string, sizeof(string), "* O mecвnico %s reparou seu veнculo por R$%d.",giveplayer,RepairPrice[playerid]);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "* Vocк reparou o veнculo de %s, e R$%d foi adicionado no seu salбrio.",sendername,RepairPrice[playerid]);
                                SendClientMessage(RepairOffer[playerid], COLOR_LIGHTBLUE, string);
                                PlayerInfo[RepairOffer[playerid]][pMechSkill] ++;
                                if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 50)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 2, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 100)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 3, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 200)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 4, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 400)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 5, Agora ele pode adicionar combustivel para qualquer carro."); }
                                PlayerInfo[RepairOffer[playerid]][pSalario] += RepairPrice[playerid];
                                GivePlayerMoney(playerid, -RepairPrice[playerid]);
                                RepairOffer[playerid] = 999;
                                RepairPrice[playerid] = 0;
                                return 1;
                            }
Reply
#4

pawn Код:
forward AceitarReparoTempo(playerid, giveplayerid);
public AceitarReparoTempo(playerid, giveplayerid)
//mete
forward AceitarReparoTempo(playerid, giveplayer);
public AceitarReparoTempo(playerid, giveplayer)
Reply
#5

Deu! Mas deu 2 erros ccomo eu vou pegar o repairid lб de cima pra funзгo
pawn Код:
else if(strcmp(x_Emprego,"reparo",true) == 0)
            {
                if(RepairOffer[playerid] < 999)
                {
                    if(GetPlayerMoney(playerid) > RepairPrice[playerid])
                    {
                        if(IsPlayerInAnyVehicle(playerid))
                        {
                            if(IsPlayerConnected(RepairOffer[playerid]))
                            {
                                SetTimerEx("AceitarReparoTempo", 60000, false, "ii", playerid, giveplayerid);
                            }
                            return 1;
                        }
                        return 1;
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode permitir o reparo !");
                        return 1;
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   Falta uma oferta para Vocк reparar o carro !");
                    return 1;
                }
            }
pawn Код:
forward AceitarReparoTempo(playerid, giveplayer);
public AceitarReparoTempo(playerid, giveplayer)
                            {
                                new string[128];
                                GetPlayerName(RepairOffer[playerid], giveplayer, sizeof(giveplayer)); // C:\Documents and Settings\Administrador\Desktop\SAMP\gamemodes\RPG.pwn(82416) : error 035: argument type mismatch (argument 2) ~ C:\Documents and Settings\Administrador\Desktop\SAMP\gamemodes\RPG.pwn(82416) : error 035: argument type mismatch (argument 2)
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                RepairCar[playerid] = GetPlayerVehicleID(playerid);
                                SetVehicleHealth(RepairCar[playerid], 1000.0);
                                RepairVehicle(RepairCar[playerid]);
                                format(string, sizeof(string), "* O mecвnico %s reparou seu veнculo por R$%d.",giveplayer,RepairPrice[playerid]);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "* Vocк reparou o veнculo de %s, e R$%d foi adicionado no seu salбrio.",sendername,RepairPrice[playerid]);
                                SendClientMessage(RepairOffer[playerid], COLOR_LIGHTBLUE, string);
                                PlayerInfo[RepairOffer[playerid]][pMechSkill] ++;
                                if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 50)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 2, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 100)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 3, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 200)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 4, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 400)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 5, Agora ele pode adicionar combustivel para qualquer carro."); }
                                PlayerInfo[RepairOffer[playerid]][pSalario] += RepairPrice[playerid];
                                GivePlayerMoney(playerid, -RepairPrice[playerid]);
                                RepairOffer[playerid] = 999;
                                RepairPrice[playerid] = 0;
                                return 1;
                            }
Ali a linha comentada os erros!
Reply
#6

tenta assim
pawn Код:
forward AceitarReparoTempo(playerid, giveplayerid);
public AceitarReparoTempo(playerid, giveplayerid)
                            {
                                new string[128], giveplayer[25];
                                GetPlayerName(RepairOffer[giveplayerid], giveplayer, sizeof(giveplayer));                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                RepairCar[playerid] = GetPlayerVehicleID(giveplayerid);
                                SetVehicleHealth(RepairCar[playerid], 1000.0);
                                RepairVehicle(RepairCar[playerid]);
                                format(string, sizeof(string), "* O mecвnico %s reparou seu veнculo por R$%d.",giveplayer,RepairPrice[playerid]);
                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "* Vocк reparou o veнculo de %s, e R$%d foi adicionado no seu salбrio.",sendername,RepairPrice[playerid]);
                                SendClientMessage(RepairOffer[playerid], COLOR_LIGHTBLUE, string);
                                PlayerInfo[RepairOffer[playerid]][pMechSkill] ++;
                                if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 50)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 2, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 100)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 3, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 200)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 4, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 400)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 5, Agora ele pode adicionar combustivel para qualquer carro."); }
                                PlayerInfo[RepairOffer[playerid]][pSalario] += RepairPrice[giveplayerid];
                                GivePlayerMoney(playerid, -RepairPrice[giveplayerid]);
                                RepairOffer[playerid] = 999;
                                RepairPrice[playerid] = 0;
                                return 1;
                            }
Reply
#7

Quote:
Originally Posted by MatheusDalZot
Посмотреть сообщение
tenta assim
pawn Код:
forward AceitarReparoTempo(playerid, giveplayerid);
public AceitarReparoTempo(playerid, giveplayerid)
                            {
                                new string[128], giveplayer[25];
                                GetPlayerName(RepairOffer[giveplayerid], giveplayer, sizeof(giveplayer));                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                RepairCar[playerid] = GetPlayerVehicleID(giveplayerid);
                                SetVehicleHealth(RepairCar[playerid], 1000.0);
                                RepairVehicle(RepairCar[playerid]);
                                format(string, sizeof(string), "* O mecвnico %s reparou seu veнculo por R$%d.",giveplayer,RepairPrice[playerid]);
                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "* Vocк reparou o veнculo de %s, e R$%d foi adicionado no seu salбrio.",sendername,RepairPrice[playerid]);
                                SendClientMessage(RepairOffer[playerid], COLOR_LIGHTBLUE, string);
                                PlayerInfo[RepairOffer[playerid]][pMechSkill] ++;
                                if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 50)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 2, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 100)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 3, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 200)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 4, Agora ele pode adicionar combustivel para qualquer carro."); }
                                else if(PlayerInfo[RepairOffer[playerid]][pMechSkill] == 400)
                                { SendClientMessage(RepairOffer[playerid], COLOR_YELLOW, "* Seu mecanico e cargo 5, Agora ele pode adicionar combustivel para qualquer carro."); }
                                PlayerInfo[RepairOffer[playerid]][pSalario] += RepairPrice[giveplayerid];
                                GivePlayerMoney(playerid, -RepairPrice[giveplayerid]);
                                RepairOffer[playerid] = 999;
                                RepairPrice[playerid] = 0;
                                return 1;
                            }
Incorrecto.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)