[Ayuda] Abrir y cerrar barrera (MoveObject)
#1

Hola, tengo un problema.. Quize poner para una especie de peaje, una barrera para que se abriera y cerrara, el problema es el siguente:

CreateObject(968, 142.22, 1957.36, 19.35, -0.10, 90.00, 180.00); //CERRADA
CreateObject(968, 142.22, 1957.36, 19.35, -0.10, 0.00, 180.00); //ABIERTA

Yo lo que necesito es modificar los grados R-Y de 0° a 90° (Marcado en rojo) y el MoveObject es imposible esto... Solo permite mover el objeto en las coordenadas X, Y y Z.. (Marcado en verde)..
Como se soluciona esto?

Practicamente vendria a ser algo asi como esto, nomas que sin el bug: [ame]http://www.youtube.com/watch?v=ncRPouRTI8k[/ame]
Reply
#2

Si se puede rotar con MoveObject.
pawn Код:
MoveObject(ID, 142.22, 1957.36, 19.35+0.0001,0.0001, -0.10, 90.00, 180.00); //CERRADA
MoveObject(ID, 142.22, 1957.36, 19.35-0.0001,0.0001, -0.10, 0.00,  180.00); //ABIERTA
Reply
#3

Braun, prove con SetObjectRot pero no se puede controlar la velocidad de apertura, o cierra o abre, no va de a poquito

Daniel-92, Como se hace eso?? Si pongo MoveObject(Puerta, 142.22, 1957.36, 19.35, -0.10, 90.00, 180.00, 3); No me aparece la barrera
Reply
#4

MoveObject()
Reply
#5

Quote:
Originally Posted by Ghostmen
Посмотреть сообщение
Braun, prove con SetObjectRot pero no se puede controlar la velocidad de apertura, o cierra o abre, no va de a poquito

Daniel-92, Como se hace eso?? Si pongo MoveObject(Puerta, 142.22, 1957.36, 19.35, -0.10, 90.00, 180.00, 3); No me aparece la barrera
pawn Код:
new Puerta;

public OnGameModeInit() {
    Puerta = CreateObject(968, 142.22, 1957.36, 19.35, -0.10, 90.00, 180.00);
}

//Donde quieras que abra
MoveObject(Puerta, 142.22, 1957.36, 19.35-0.0001,0.0001, -0.10, 0.00,  180.00); //ABIERTA


//Donde quieras que cierre
MoveObject(Puerta, 142.22, 1957.36, 19.35+0.0001,0.0001, -0.10, 90.00,  180.00); //CERRADA
Reply
#6

Quote:
Originally Posted by Daniel-92
Посмотреть сообщение
pawn Код:
new Puerta;

public OnGameModeInit() {
    Puerta = CreateObject(968, 142.22, 1957.36, 19.35, -0.10, 90.00, 180.00);
}

//Donde quieras que abra
MoveObject(Puerta, 142.22, 1957.36, 19.35-0.0001,0.0001, -0.10, 0.00,  180.00); //ABIERTA


//Donde quieras que cierre
MoveObject(Puerta, 142.22, 1957.36, 19.35+0.0001,0.0001, -0.10, 90.00,  180.00); //CERRADA
Muchas Gracias, ahora funciona a la perfeccion.. Solo debia agregar esto: +0.0001,0.0001, por cierto que es?

Vendira a quedar MoveObject(objectid, Float:X, Float:Y, Float:Z +0.0001,0.0001, Float:RotX , Float:RotY , Float:RotZ );
Reply
#7

Para que funcione la rotaciуn en MoveObject hay que modificar por lo menos alguna coordena X,Y o Z para eso se le suma +0.0001 a la coordenada Z y el otro 0.0001 es la velocidad en unidades por segundos, asн que como la diferencia entre +0.0001 y -0.0001 es 0.0002 el tiempo que tomarб la barrera en bajar o subir serб de 0.0002 dividido entre 0.0001 que serнan 2 segundos.
Reply
#8

Quote:
Originally Posted by Daniel-92
Посмотреть сообщение
Para que funcione la rotaciуn en MoveObject hay que modificar por lo menos alguna coordena X,Y o Z para eso se le suma +0.0001 a la coordenada Z y el otro 0.0001 es la velocidad en unidades por segundos, asн que como la diferencia entre +0.0001 y -0.0001 es 0.0002 el tiempo que tomarб la barrera en bajar o subir serб de 0.0002 dividido entre 0.0001 que serнan 2 segundos.
Oka, se lo agradezco. Ahi le di un +1 de reputacion
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)