[Ajuda] Sistema de corda bugado
#1

Edit
Encerrado
Reply
#2

pawn Код:
if(strcmp(cmd, "/Corda", true) == 0){
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 497){
        Sliding[playerid] = 1;
        new Float:X,
            Float:Y,
            Float:Z;
        GetPlayerPos(playerid, X, Y, Z);
        RemovePlayerFromVehicle(playerid); // Remove o jogador do veiculo
        TogglePlayerControllable(playerid, 0); //Congela o jogador o que essa linha DIZ ?     entao se mudar para 1 depois que ele alcanзar a posiзao ele vai se movimentar!
        SetTimerEx("Slide", 400, 0, "i", playerid); //Settimer de 400 ms
        SendClientMessage(playerid, COLOR_WHITE, "Voce esta descendo do helicуptero!");
    }
    else
    SendClientMessage(playerid,-1, "{FF0000}[ERRO] Vocк nгo esta em um Helicуptero!");
    return 1;
}

public Slide(playerid){
    if(Sliding[playerid] == 1){
        new Float:X,
            Float:Y,
            Float:Z;
        GetPlayerPos(playerid, X, Y, Z);
        SetPlayerPos(playerid, X, Y, Z - 5.00);
        DestroyObject(Corda[playerid]);
        Corda[playerid] = CreateObject(19089, X, Y, Z, 0.0, 0.0, 0.0, 300.0);
        SetTimerEx("Slide", 1000, 0, "i", playerid);
    }
    return 1;
}

//agora tente fazer ae eu  nao posso ajudar nao entendi o modo desse codigo se ele estivesse pelo menos completo!
vai tentado ae eu nao tenho esse codigo ae completo entao nao posso ajudar!
Reply
#3

Edit
Encerrado
Reply
#4

pawn Код:
if(strcmp(cmd, "/corda", true) == 0)
{
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 497)
    {
        new Float:X, Float:Y, Float:Z;
        GetPlayerPos(playerid, X, Y, Z);
        Sliding[playerid] = 1;
        RemovePlayerFromVehicle(playerid);
        TogglePlayerControllable(playerid, true);
        SetTimerEx("Slide", 400, 0, "i", playerid);
        SendClientMessage(playerid, COLOR_WHITE, "Vocк estб descendo do helicуptero!");
    }
    else
    {
        SendClientMessage(playerid,-1, "{FF0000}[ERRO] Vocк nгo estб em um helicуptero!");
    }
    return 1;
}

if(strcmp(cmd, "/parar", true) == 0)
{
    if(Sliding[playerid] == 1)
    {
        Sliding[playerid] = 0;
        TogglePlayerControllable(playerid, false);
        SendClientMessage(playerid, COLOR_WHITE, "Vocк chegou ao chгo!");
        DestroyObject(Corda[playerid]);
    }
    return 1;
}
Reply
#5

N deu
Reply
#6

pawn Код:
#include <a_samp>

new Corda[MAX_PLAYERS];
new Sliding[MAX_PLAYERS];

#define TimerSegundo(%0)    %0*1000
#define Callback<q.i>%0(%1) forward %0(%1); public %0(%1)

public OnPlayerConnect(playerid){
    Sliding[playerid] = 0;
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[]){
    if(strcmp(cmd, "/Corda", true) == 0){
        if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 497){
            Sliding[playerid] = 1;
            new Float:X,
                Float:Y,
                Float:Z;
            GetPlayerPos(playerid, X, Y, Z);
            RemovePlayerFromVehicle(playerid);
            TogglePlayerControllable(playerid, 0);
            Corda[playerid] = CreateObject(19089, X, Y, Z, 0.0, 0.0, 0.0, 300.0);
            SetTimerEx("Slide", TimerSegundo(1), 0, "i", playerid);
            SendClientMessage(playerid, -1, "Voce esta descendo do helicуptero!");
        }
        else
        SendClientMessage(playerid,-1, "[ERRO] Vocк nгo esta em um Helicуptero!");
        return true;
    }
    if(strcmp(cmd, "/parar", true) == 0){
        if(Sliding[playerid] == 1){
            Sliding[playerid] = 0;
            TogglePlayerControllable(playerid, 1);
            SendClientMessage(playerid,-1, "Vocк chegou ao chгo");
            DestroyObject(Corda[playerid]);
        }
        return true;
    }
    return false;
}


Callback<q.i>Slide(playerid){
    if(Sliding[playerid] == 1){
        new Float:X,
            Float:Y,
            Float:Z;
        GetPlayerPos(playerid, X, Y, Z);
        SetPlayerPos(playerid, X, Y, Z - 5.00);
        SetTimerEx("Slide", TimerSegundo(1), 0, "i", playerid);
    }
    return true;
}
tenta ae e lembra de usar /parar antes de chegar ao chao .
Reply
#7

Mais й isso q eu queiria, Nгo ter este comando de parar quando ele chegar no chao a corda deleta e ele descongela
Reply
#8

Quote:
Originally Posted by Vinicius_TroLL
Посмотреть сообщение
Mais й isso q eu queiria, Nгo ter este comando de parar quando ele chegar no chao a corda deleta e ele descongela
a cara para fazer isso voce tera que calcular toda uma bruxaria de angulo do player ate chegar nisso ae eu nao vou nem tentar isso ae!
Reply
#9

Ok se й dificil dxa queto kkk vlw por ter tentado me ajudar +rep pra vcs
Reply
#10

Nгo sei como isso funciona, mas nгo da para fazer tipo um time? Vocк calcula mais ou menos o tempo que o cara leva pra chegar no chгo, e invйs por angulo, faz por timer
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)