Jump to content

me ayudan con moveObject


JuanM27

Recommended Posts

hola que tal, bueno tengo un problema que no puedo resolver ni con los ejemplos de la wiki :roll:

y no se a quien preguntar mas que en este foro.

bueno le comento, estoy queriendo poner la barrera en la entrada del garage de la comisaria de LS, ya tengo el id del objecto las posiciones y rotaciones.

pero cuando hago el codigo para que se mueva si un player tiene un skin se levante o se baje la barrera.

dejo el codigo que tengo en mi script, para que vean y me puedan dicir que es lo que tengo mal

PoliBarraObj1 = createObject ( 968, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 90, 89) 
PoliBarra1 = createColTube ( 1541, -1630, 12.5, 25, 10) 
  
function BARRA1 ( player ) 
    if ( getElementType ( player ) == "player" ) then 
        local skin = getElementModel ( player ) 
  
if skin == 280 or skin == 281 or skin == 282 or skin == 283 or skin == 284 or skin == 285 or skin == 286 or skin == 287 or skin == 288 or skin == 265 or skin == 266 or skin == 267 then 
                setTimer ( function ()  
                    moveObject ( PoliBarraObj1, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 0, 89) 
                end, 500, 1 ) 
  
            else 
  
                setTimer ( function () 
                --  outputChatBox ( "Usted no es Policia!!, alejese YA!", player, 0,0,200 ) 
                end, 100, 1 ) 
            end 
  
        local seat = getPedOccupiedVehicleSeat(player) 
        if seat == 0 then 
                local car = getPedOccupiedVehicle(player) 
                local skin = getElementModel ( player ) 
  
if skin == 280 or skin == 281 or skin == 282 or skin == 283 or skin == 284 or skin == 285 or skin == 286 or skin == 287 or skin == 288 or skin == 265 or skin == 266 or skin == 267 then 
                    setTimer ( function ()  
                        moveObject ( PoliBarraObj1, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) 
                    end, 500, 1 ) 
                end 
        end 
    end 
end   
  
addEventHandler( "onColShapeHit", PoliBarra1, BARRA1 ) 
  
  
function Barra1Close () 
    setTimer ( function ()  
       moveObject ( PoliBarraObj1, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) 
    end, 500, 1 ) 
end 
addEventHandler( "onColShapeLeave", PoliBarra1, Barra1Close ) 

esto lo tengo del lado server

muchas gracias

Link to comment
PoliBarraObj1 = createObject ( 968, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 90, 89) 
PoliBarra1 = createColTube ( 1541, -1630, 12.5, 25, 10) 
local policeSkins = {[265] = true, [266] = true, [267] = true} 
for i=280, 288 do 
    policeSkins[i] = true 
end 
  
function BARRA1 ( player ) 
    if ( getElementType ( player ) == "player" ) then 
        local skin = getElementModel ( player ) 
        if (policeSkins[skin]) then 
            moveObject ( PoliBarraObj1, 3000, 11544.5999755859,-1630.8000488281, 13.300000190735, 0, 0, 89) 
        else 
            outputChatBox ( "Usted no es Policia!!, alejese YA!", player, 0,0,200 ) 
        end 
    elseif ( getElementType ( player ) == "vehicle" ) then   
        local player = getVehicleController(player) 
        local seat = getPedOccupiedVehicleSeat(player) 
        if (seat == 0 )then 
            local skin = getElementModel ( player ) 
            if (policeSkins[skin]) then 
                moveObject ( PoliBarraObj1, 3000, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) 
            end 
        end 
    end 
end    
addEventHandler( "onColShapeHit", PoliBarra1, BARRA1 ) 
  
function Barra1Close () 
    moveObject ( PoliBarraObj1, 3000, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) 
end 
addEventHandler( "onColShapeLeave", PoliBarra1, Barra1Close ) 

Tienes algo mal en la posicion al abrirse, porque no se abre, es como si se teleportase a otra parte.

Link to comment
PoliBarraObj1 = createObject ( 968, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 90, 89) 
PoliBarra1 = createColTube ( 1541, -1630, 12.5, 25, 10) 
local policeSkins = {[265] = true, [266] = true, [267] = true} 
for i=280, 288 do 
    policeSkins[i] = true 
end 
  
function BARRA1 ( player ) 
    if ( getElementType ( player ) == "player" ) then 
        local skin = getElementModel ( player ) 
        if (policeSkins[skin]) then 
            moveObject ( PoliBarraObj1, 3000, 11544.5999755859,-1630.8000488281, 13.300000190735, 0, 0, 89) 
        else 
            outputChatBox ( "Usted no es Policia!!, alejese YA!", player, 0,0,200 ) 
        end 
    elseif ( getElementType ( player ) == "vehicle" ) then   
        local player = getVehicleController(player) 
        local seat = getPedOccupiedVehicleSeat(player) 
        if (seat == 0 )then 
            local skin = getElementModel ( player ) 
            if (policeSkins[skin]) then 
                moveObject ( PoliBarraObj1, 3000, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) 
            end 
        end 
    end 
end    
addEventHandler( "onColShapeHit", PoliBarra1, BARRA1 ) 
  
function Barra1Close () 
    moveObject ( PoliBarraObj1, 3000, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) 
end 
addEventHandler( "onColShapeLeave", PoliBarra1, Barra1Close ) 

Tienes algo mal en la posicion al abrirse, porque no se abre, es como si se teleportase a otra parte.

Ah, gracias por ejemplo

lo probe y asi anda pero no se sube la barrera, sino que se baja (osea se me mete abajo del suelo)

tenia mal esta posicion 11544.5999755859 ?

Pd: yo las posiciones las tome del map edit, esta bien que use esas posiciones?

saludos y gracias

Link to comment

disculpame que sea molesto, es que de verdad no entiendo.

las posiciones son esta

Barrera Baja = 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 90, 89

Barrera Levantada = 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 0, 89

pero yo pongo esas posiciones, pero en vez de levantar o bajar

la barrera gira a 90º

busque en la wiki sobre moveObject pero la verdad no explican bien y solo da 3 ejemplos en comandos, pero ninguno me sirbio

saludos

Link to comment

listo amigos ya lo descubri como es el tema del moveobject :P

para que la barrera levante es

moveObject ( PoliBarraObj1, 3000, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, -90, 0) 

y para que se baje es

moveObject ( PoliBarraObj1, 3000, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 90, 0) 

la verdad me costo entenderlo.

pero muchas gracias por su tiempo

saludos

Link to comment

hola de nuevo, ya se que anda pero tengo una duda

se le podria poner algo a este codigo para que siempre este en el mismo punto final e inicial?

osea un tope

le explico por que, si yo paso la barrera sube y baja bien, pero si pasan 2 jugadores, y 1 se detiene

la barrera cuando baja se baja mas del suelo

y despues cuando pasa otro la barrera no se levanta hasta donde se tiene que levantar,

y tengo que estar reiniciando el script para que la barrera se quede en su lugar.

ejemplo yo paso con un auto y no dejo que la barrera se levante los -90 que yo tengo en el scrip, pongalen que se levanta solo -60, pero al bajarse se baja los 90, y queda bajo el nivel de altura que yo le di.

pero cuando alguien vuelve a pasar, la barrera no se levanta los -90, sino que su rotacion vuelve a ser -60

nose si me entiende como me estoy dando a esplicar, ami me gustaria que sea como por ejemplo el server cit o sx entre otros

que la barrera se levanta siempre lo mismo y no importa si el jugador paso saltando, en bici, o corriendo.

asi es como yo lo tengo.

function BARRA1 ( player ) 
    if ( getElementType ( player ) == "player" ) then 
        local skin = getElementModel ( player ) 
        if (policeSkins[skin]) then 
            moveObject ( PoliBarraObj1, 3000, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, -85, 0) 
       -- else 
          --  outputChatBox ( "Usted no es Policia!!, alejese YA!", player, 0,0,200 ) 
        end 
    elseif ( getElementType ( player ) == "vehicle" ) then  
        local player = getVehicleController(player) 
        local seat = getPedOccupiedVehicleSeat(player) 
        if (seat == 0 )then 
            local skin = getElementModel ( player ) 
            if (policeSkins[skin]) then 
                moveObject ( PoliBarraObj1, 3000, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, -85, 0) 
            end 
        end 
    end 
end   
addEventHandler( "onColShapeHit", PoliBarra1, BARRA1 ) 
  
function Barra1Close (player) 
if ( getElementType ( player ) == "player" ) then 
local skin = getElementModel ( player ) 
        if (policeSkins[skin]) then 
    moveObject ( PoliBarraObj1, 3000, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 85, 0) 
    end 
    end 
end 
addEventHandler( "onColShapeLeave", PoliBarra1, Barra1Close ) 

que me faltaria agregarle para que funcione bien?

saludos y muchas gracias

Link to comment
  • Recently Browsing   0 members

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