[ajuda] DestroyPickup nao esta a funcionar bem!
#1

Bem amigos como no meu server tenho ja um checkpoint e nao posso usar mais, estava a tentar criar um sistema simples de camionistas, tipo uma missao.

o jogador chega a um certo local tem la um pickup que abre uma dialog

pawn Код:
if(pickupid == camionista)
    {
    ShowPlayerDialog(playerid, camiao, DIALOG_STYLE_LIST, "Escolhe uma missгo", "Camionista - percurso pequeno 150Ђ\nCamionista - percurso medio 300Ђ\nCamionista - percurso grande 600Ђ ", "Aceitar", "Sair");
    }
a resposta da dialog й esta:
pawn Код:
if(dialogid == camiao)
    {
        if(response)
        {
            if(listitem == 0)
            {
        DisablePlayerCheckpoint(playerid);
        new pName[MAX_PLAYER_NAME];
        GetPlayerName(playerid,pName,sizeof(pName));
        new string[248];
        format(string,sizeof(string),"O %s esta agora numa missгo de camionista! Caminho CURTO",pName);
        SendClientMessageToAll(cor1, string);
        SendClientMessage(playerid,0x14B4E3AA, "{FF0000}[Missгo] {ADADAD}Segue para o ponto vermelho no mapa!");
        CreateVehicle(515,-273.8338,1549.2905,76.3786,134.9243, 145, 145, 10000);
        oi = CreateVehicle(450,-312.6722,1564.7621,76.3805,223.7617, 145, 145, 10000);
        SetPlayerCheckpoint(playerid, 690.5525,897.1948,-39.3216,0.0);
        camiao1 = CreatePickup(1247, 14, 690.5525,897.1948,-39.3216);
            }
            if(listitem == 1)
            {
        DisablePlayerCheckpoint(playerid);
        new pName[MAX_PLAYER_NAME];
        GetPlayerName(playerid,pName,sizeof(pName));
        new string[248];
        format(string,sizeof(string),"O %s esta agora numa missгo de camionista! Caminho MEDIO",pName);
        SendClientMessageToAll(cor1, string);
        SendClientMessage(playerid,0x14B4E3AA, "{FF0000}[Missгo] {ADADAD}Segue para o ponto vermelho no mapa!");
        CreateVehicle(515,-273.8338,1549.2905,76.3786,134.9243, 145, 145, 10000);
        oi1 = CreateVehicle(435,-312.6722,1564.7621,76.3805,223.7617, 145, 145, 10000);
        SetPlayerCheckpoint(playerid, -1908.2871,-1672.0751,23.0156,0.0);
        camiao2 = CreatePickup(1247, 14, -1908.2871,-1672.0751,23.0156);
            }
            if(listitem == 2)
            {
        DisablePlayerCheckpoint(playerid);
        new pName[MAX_PLAYER_NAME];
        GetPlayerName(playerid,pName,sizeof(pName));
        new string[248];
        format(string,sizeof(string),"O %s esta agora numa missгo de camionista! Caminho LONGO",pName);
        SendClientMessageToAll(cor1, string);
        SendClientMessage(playerid,0x14B4E3AA, "{FF0000}[Missгo] {ADADAD}Segue para o ponto vermelho no mapa!");
        CreateVehicle(515,-273.8338,1549.2905,76.3786,134.9243, 145, 145, 10000);
        oi2 = CreateVehicle(584,-312.6722,1564.7621,76.3805,223.7617, 145, 145, 10000);
        SetPlayerCheckpoint(playerid, 2457.8542,-2077.2993,13.3195,0.0);
        camiao3 = CreatePickup(1247, 14, 2457.8542,-2077.2993,13.3195);
            }
            }
        return 1;
Agora para destruir os veiculos criados e a pickup criada eu fiz assim

pawn Код:
if(pickupid == camiao1)
    {
    new currentveh;
    currentveh = GetPlayerVehicleID(playerid);
    DestroyVehicle(currentveh);
    DestroyVehicle(oi);
    DisablePlayerCheckpoint(playerid);
    DestroyPickup(camiao1);
    GivePlayerMoney(playerid, 150);
    SendClientMessage(playerid, 0x14E551AA, "{FF0000}[Missгo] {ADADAD}Exelente trabalho, 150Ђ! Volta quando poderes");
    SendClientMessageToAll(0x14E551AA, "{FF0000}[Missгo] {ADADAD}Podes agora fazer trabalho de camionista - CURTO!");
    }
    if(pickupid == camiao2)
    {
    new currentveh;
    currentveh = GetPlayerVehicleID(playerid);
    DestroyVehicle(currentveh);
    DestroyVehicle(oi1);
    DisablePlayerCheckpoint(playerid);
    DestroyPickup(camiao2);
    GivePlayerMoney(playerid, 300);
    SendClientMessage(playerid, 0x14E551AA, "{FF0000}[Missгo] {ADADAD}Exelente trabalho, 300Ђ! Volta quando poderes");
    SendClientMessageToAll(0x14E551AA, "{FF0000}[Missгo] {ADADAD}Podes agora fazer trabalho de camionista - MEDIO!");
    }
    if(pickupid == camiao3)
    {
    new currentveh;
    currentveh = GetPlayerVehicleID(playerid);
    DestroyVehicle(currentveh);
    DestroyVehicle(oi2);
    DisablePlayerCheckpoint(playerid);
    DestroyPickup(camiao3);
    GivePlayerMoney(playerid, 500);
    SendClientMessage(playerid, 0x14E551AA, "{FF0000}[Missгo] {ADADAD}Exelente trabalho, 600Ђ! Volta quando poderes");
    SendClientMessageToAll(0x14E551AA, "{FF0000}[Missгo] {ADADAD}Podes agora fazer trabalho de camionista - GRANDE!");
    }
Vou esplicar o problema.

Eu vou ao dialog, escolho o primeiro, ele cria o veiculo e o pick up, quando chego ao pick up ele destroi o veiculo e o pick up e recebo os 150. Tudo certo ate aqui

se fizer de novo quando chego pela segunda vez ao pick up vou receber 2 vezes os 150, se fizer 3x vou receber 3x os 150.

O que eu queria era que de cada vez que fosse la so recebesse 1x 150

Alguem me ajuda ?

RESOLVIDO
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)