Jump to content

[Ayuda] Puertas Automaticas


DanielZ3RO

Recommended Posts

Hola estaba haciendo un sencillo script de abrir puertas cuando un jugador se acerca, pero las puertas quedan estaticas, las probe con comandos como /abrir y /cerrar y funcionan perfecto, no se cual es el error en el codigo por que tal como esta ahora el codigo no funcionan, de antemano gracias.

objeto1 = createObject ( 2929, 211.8, 1875, 14, 0, 0, 0 ) 
objeto2 = createObject ( 2929, 215.9, 1875, 14, 0, 0, 0) 
x,y,z = getElementPosition ( objecto1, objeto2 ) 
zona = createColRectangle ( x,y, 10, 10 ) 
  
function funcion1() 
moveObject ( objeto1, 2000, 208, 1875, 14 ) 
moveObject ( objeto2, 2000, 219.8, 1875, 14 ) 
end 
addEventHandler ( "onColShapeHit", zona, funcion1 ) 
  
function funcion2() 
moveObject ( objeto1, 2000, 211.8, 1875, 14 ) 
moveObject ( objeto2, 2000, 215.9, 1875, 14 ) 
end 
addEventHandler ( "onColShapeLeave", zona, funcion2 ) 

Link to comment
  • MTA Team
en vez de
Zona = createColRectangle ( x,y, 10, 10 ) 

cambialo por

Zona = createColCircle ( x,y, 10, 10 ) 

No tiene nada que ver.

@Daniel

Asi:

  
objeto1 = createObject ( 2929, 211.8, 1875, 14, 0, 0, 0 ) 
objeto2 = createObject ( 2929, 215.9, 1875, 14, 0, 0, 0) 
x1,y1,z1 = getElementPosition ( objeto1 ) 
x2,y2,z2 = getElementPosition ( objeto2 ) 
zona = createColRectangle ( x1,y1, 10, 10 ) 
zona2 = createColRectangle(x2,y2,10,10) 
  
function abrirprincipal() 
moveObject ( objeto1, 2000, 208, 1875, 14 ) 
end 
function abrirsecundario() 
moveObject ( objeto2, 2000, 219.8, 1875, 14 ) 
end 
  
function cerrarprincipal() 
moveObject ( objeto1, 2000, 211.8, 1875, 14 ) 
end 
function cerrarsecundario() 
moveObject ( objeto2, 2000, 215.9, 1875, 14 ) 
end 
  
addEventHandler ( "onColShapeHit", zona, abrirprincipal ) 
addEventHandler ( "onColShapeHit", zona2, abrirsecundario ) 
addEventHandler ( "onColShapeLeave", zona, cerrarprincipal ) 
addEventHandler ( "onColShapeLeave", zona2, cerrarsecundario ) 

PD: De igual manera, las posiciones que especificaste son todas iguales, por lo tanto nada se movera.De acuerdo a como quieres mover las puertas, modificas la posicion Z que en esta caso en todas es "14"

Link to comment
PD: De igual manera, las posiciones que especificaste son todas iguales, por lo tanto nada se movera.De acuerdo a como quieres mover las puertas, modificas la posicion Z que en esta caso en todas es "14"

Si te fijas bien, las posiciones no son todas iguales, en el caso del primer objeto, sus coordenadas originales son:

'211.8, 1875, 14'

y el busca mover el objeto hacia:

'208, 1875, 14'

Mientras que en el segundo objeto las posiciones originales son:

'215.9, 1875, 14'

y el desea moverlas hacia:

'219.8, 1875, 14'.

Cambiar la posición 'Z' sirve para moverlas de arriba hacia abajo y viceversa, en cambio el quiere mover la posición 'X', lo que debería mover las puertas hacia los lados.

Link to comment
  • MTA Team
Lo solucione abriendola por comandos /abrir y /cerrar :c

Si quieres hacerla por comandos, puedes hacer comandos variados..Ej /puerta1

Y con ese mismo comando, abres y cierras la puerta..

Yo hize un script de demostración con variaciones de comando..El link es: Este

Dentro del lua de ese script esta explicado todo en como variar un comando, y el uso de variables globales para determinar el estado de algo..En este caso, si esta abierto o cerrado.

Link to comment
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...