[Ajuda] Movendo Objeto como Veiculo
#1

Boa noite povo,

Queria fazer por exemplo os objetos definidos como ObjetoQueMove, se moverem quando eu estiver em certo local, e apertar uma tecla, ai o player ficaria congelado, e as teclas de movimentos como W,A,S,D Moveriam o objeto para a Frente, Direita, Esquerda, Traz, e a tecla Q rodava o veiculo um pouco para a esquerda, e a E, rodava para direita, sу que se ficasse segurando alguma tecla, ela ficasse floodando a funзгo programada, fazendo ficar andando, como se fosse um carro, sу que em um objeto, e vocк congelado.

Eu tentei fazer com um Barco e fiz isso.

pawn Код:
new NavioNovo;
#define ID_Objeto   1
#define Distancia_Movimento 1.0

public OnFilterScriptInit()
{
    print("\n--------------------------------------");
    print(" Sistema navio");
    print("--------------------------------------\n");
    NavioNovo = CreateObject(10230,-1428.3000500,1534.8000500,7.8000000,0.0000000,0.0000000,0.0000000); //object(freighter_sfe) (1)
    printf("ID do Objeto do Navio й %i", NavioNovo);
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp("/frente",cmdtext,true,0)==0)
    {
        new Float:oX,Float:oY,Float:oZ;
        GetObjectPos(ID_Objeto,oX,oY,oZ);
        MoveObject(ID_Objeto, oX+Distancia_Movimento, oY+Distancia_Movimento, oZ, 2);
        SendClientMessage(playerid, 0xFFFFFFFAA,"Voce moveu o barco pra frente");
        return 1;
    }
    if(strcmp("/atras",cmdtext,true,0)==0)
    {
        new Float:oX,Float:oY,Float:oZ;
        GetObjectPos(ID_Objeto,oX,oY,oZ);
        MoveObject(ID_Objeto, oX-Distancia_Movimento, oY-Distancia_Movimento, oZ, 2);
        SendClientMessage(playerid, 0xFFFFFFFAA,"Voce moveu o barco pra traz");
    }
Se fosse com mais objetos, como por exemplo 5, eu teria que mover 1 de cada vez ?

Se puderem me ajudar, eu fico grato, pode ser atй me ajudando б desenvolver o cуdigo, mandando tуpicos e posts, que me ajudem nessa empreitada, ou mandando bases, para eu desenvolver o meu mais otimizados e etc.
Reply
#2

#UP Alguem
Reply
#3

Basta vocк criar os objetos e movк-los junto ao comando frente, ex:
pawn Код:
new objeto[5]
//objeto parado
objeto[0] = createobject(... x, y, z, ...); // objeto 1
objeto[1] = createobject(... x, y, z, ...); // objeto 2
objeto[2] = createobject(... x, y, z, ...); // objeto 3
objeto[3] = createobject(... x, y, z, ...); // objeto 4
objeto[4] = createobject(... x, y, z, ...); // objeto 5

//mover frente vai ajustando todos eles da forma que desejar
moveobject(objeto[0], x+10, y, z, 5); // objeto 1
moveobject(objeto[1], x+10, y, z, 5); // objeto 2
moveobject(objeto[2], x+10, y, z, 5); // objeto 3
moveobject(objeto[3], x+10, y, z, 5); // objeto 4
moveobject(objeto[4], x+10, y, z, 5); // objeto 5
Reply
#4

Algumas funзхes que vocк vai usar:

SetVehicleParamsEx
OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
Reply
#5

Quote:
Originally Posted by MatheusDalZot
Посмотреть сообщение
Basta vocк criar os objetos e movк-los junto ao comando frente, ex:
pawn Код:
new objeto[5]
//objeto parado
objeto[0] = createobject(... x, y, z, ...); // objeto 1
objeto[1] = createobject(... x, y, z, ...); // objeto 2
objeto[2] = createobject(... x, y, z, ...); // objeto 3
objeto[3] = createobject(... x, y, z, ...); // objeto 4
objeto[4] = createobject(... x, y, z, ...); // objeto 5

//mover frente vai ajustando todos eles da forma que desejar
moveobject(objeto[0], x+10, y, z, 5); // objeto 1
moveobject(objeto[1], x+10, y, z, 5); // objeto 2
moveobject(objeto[2], x+10, y, z, 5); // objeto 3
moveobject(objeto[3], x+10, y, z, 5); // objeto 4
moveobject(objeto[4], x+10, y, z, 5); // objeto 5
pawn Код:
for(new i = 0; i < objeto; ++i) {
    moveobject(objeto[i], x+10, y, z, 5); // objeto 1...5
}
Reply
#6

Quote:
Originally Posted by MultiKill
Посмотреть сообщение
Pra que SetVehicleParamsEx, Sendo que eu nгo vou mover veiculos e sim, um objeto como se fosse um ?

Obrigado б todos os outros que me ajudaram ai =D
Reply
#7

da uma olhada nesse script

https://sampforum.blast.hk/showthread.php?tid=378993

vc vai ver outro modo de fazer isso.
Reply
#8

Quote:
Originally Posted by FaveladoBR
Посмотреть сообщение
Pra que SetVehicleParamsEx, Sendo que eu nгo vou mover veiculos e sim, um objeto como se fosse um ?

Obrigado б todos os outros que me ajudaram ai =D
Vocк disse no poste que queria mover o objeto com as teclas w,s,d,a
Se nгo desligar o veiculo ele vai acelerar o veiculo enquanto meche com o portгo.
Reply
#9

Quote:
Originally Posted by PT
Посмотреть сообщение
da uma olhada nesse script

https://sampforum.blast.hk/showthread.php?tid=378993

vc vai ver outro modo de fazer isso.
Nossa, Que daora, Seria bem mais simples do que eu ia fazer, mais nгo ia ficar tгo legal, como eu tinha imaginado, pois eu colocaria para dirigir o proprio objeto, apesar de ser complicado, ficaria legal atй.

Eu ia colocar como aquele barco da Бrea 69, ou aquele cargueiro de SF, para alguns players dirigirem, apesar que ainda dб nй, sу criar uma vбriavel que verifique se tem alguem no veiculo e setar o player no veiculo nй.....

Vlw PT, +Rep mesmo nгo valendo hu3.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)