Jump to content

Help About First Person


aneco

Recommended Posts

hi i found a script on resources.

visiblecock = 1 
cockpit = 1
rollEnabler = 1
aircraftCompat = 0
ax = nil
isBike = nil
 
function cam()
        local theVehicle = getPedOccupiedVehicle(getLocalPlayer())
        if theVehicle then
            if cockModel == getElementModel(theVehicle) then
                if rollEnabler then
                    local ax, ay, az = getElementPosition(gnat)
                    local bx, by, bz = getElementPosition(bee)
                    local z = az-bz
                    roll = -0.8*math.deg(math.asin(z))
                end
                local x, y, z = getElementPosition(gnat)
                local cx, cy, cz = getElementPosition(fly)
                setCameraMatrix(x, y, z, cx, cy, cz, roll)
                cockVehicle = theVehicle
                cockModel = getElementModel(theVehicle)
            else
                camStop(theVehicle, 0)
                camStart(theVehicle, 0)
            end
        elseif charles then
            camStop(cockVehicle, 0)
        end
    end
 
function camStart(theVehicle, seat)
        if (cockpit == 1) then
            if (seat == 0) then
                local x, y, z = getElementPosition(getLocalPlayer())
                fly = createObject(3803, x, y, z)
                setElementAlpha(fly, 0)
                gnat = createObject(3803, x, y, z)
                setElementAlpha(gnat, 0)
                bee = createObject(3803, x, y, z)
                setElementAlpha(bee, 0)
                local vModel = getElementModel(theVehicle)
                if (vModel == 426 or vModel ==  596 or vModel == 597 or vModel == 420) then -- Premier based cars
                    ax, ay, az = -0.55, 1, 0.5
                    bx, by, bz = -0.55, -0.2, 0.55
                elseif (vModel == 598) then -- LVPD
                    ax, ay, az =  -0.55, 1, 0.6
                    bx, by, bz =  -0.55, -0.2, 0.65
                elseif (vModel == 490) then -- FBI Rancher
                    ax, ay, az =  -0.55, 3, 0.7
                    bx, by, bz =  -0.55, 0.2, 0.75
                elseif (vModel == 427) then -- SWAT Truck
                    ax, ay, az =  -0.5, 3, 0.9
                    bx, by, bz =  -0.5, 0.8, 0.95
                elseif (vModel == 599 or vModel == 489 or vModel == 505) then -- Rancher based cars
                    ax, ay, az =  -0.55, 1, 0.7
                    bx, by, bz =  -0.55, -0.4, 0.75
                elseif (vModel == 602) then -- Alpha
                    ax, ay, az =  -0.55, 1, 0.3
                    bx, by, bz =  -0.55, -0.4, 0.37
                elseif (vModel == 496) then -- Blista Compact
                    ax, ay, az =  -0.48, 1, 0.4
                    bx, by, bz =  -0.48, -0.5, 0.45
                elseif (vModel == 401) then -- Bravura
                    ax, ay, az =  -0.55, 1, 0.4
                    bx, by, bz =  -0.55, -0.3, 0.45
                elseif (vModel == 518) then -- Buccaneer
                    ax, ay, az =  -0.6, 1, 0.35
                    bx, by, bz =  -0.6, -0.2, 0.4
                elseif (vModel == 527) then -- Cadrona
                    ax, ay, az =  -0.45, 1, 0.45
                    bx, by, bz =  -0.45, -0.3, 0.5
                elseif (vModel == 589) then -- Club
                    ax, ay, az =  -0.5, 1, 0.65
                    bx, by, bz =  -0.5, -0.3, 0.7
                elseif (vModel == 419) then -- Esperanto
                    ax, ay, az =  -0.5, 1, 0.3
                    bx, by, bz =  -0.5, -0.4, 0.35
                elseif (vModel == 533) then -- Feltzer
                    ax, ay, az =  -0.5, 1, 0.4
                    bx, by, bz =  -0.5, -0.4, 0.45
                elseif (vModel == 526) then -- Fortune
                    ax, ay, az =  -0.5, 1, 0.3
                    bx, by, bz =  -0.5, -0.3, 0.35
                elseif (vModel == 474) then -- Hermes
                    ax, ay, az =  -0.5, 1, 0.45
                    bx, by, bz =  -0.5, -0.5, 0.48
                elseif (vModel == 545) then -- Hustler
                    ax, ay, az =  -0.4, 1, 0.4
                    bx, by, bz =  -0.4, -0.4, 0.45
                elseif (vModel == 517) then -- Majestic
                    ax, ay, az =  -0.45, 1, 0.45
                    bx, by, bz =  -0.45, -0.3, 0.5
                elseif (vModel == 410) then -- Manana
                    ax, ay, az =  -0.45, 1, 0.45
                    bx, by, bz =  -0.45, -0.3, 0.5
                elseif (vModel == 600) then -- Picador
                    ax, ay, az =  -0.55, 1, 0.42
                    bx, by, bz =  -0.55, -0.1, 0.47
                elseif (vModel == 436) then -- Previon
                    ax, ay, az =  -0.45, 1, 0.47
                    bx, by, bz =  -0.45, -0.35, 0.52
                elseif (vModel == 580) then -- Stafford
                    ax, ay, az =  -0.55, 1, 0.65
                    bx, by, bz =  -0.55, -0.2, 0.75
                elseif (vModel == 439) then -- Stallion
                    ax, ay, az =  -0.5, 1, 0.35
                    bx, by, bz =  -0.5, -0.7, 0.4
                elseif (vModel == 549) then -- Tampa
                    ax, ay, az =  -0.45, 1, 0.4
                    bx, by, bz =  -0.5, -0.2, 0.45
                elseif (vModel == 491) then -- Virgo
                    ax, ay, az =  -0.45, 1, 0.3
                    bx, by, bz =  -0.45, -0.5, 0.35
                elseif (vModel == 445) then -- Admiral
                    ax, ay, az =  -0.5, 1, 0.5
                    bx, by, bz =  -0.5, -0.3, 0.55
                elseif (vModel == 507) then -- Elegant
                    ax, ay, az =  -0.55, 1, 0.45
                    bx, by, bz =  -0.55, -0.3, 0.5
                elseif (vModel == 585) then -- Emperor
                    ax, ay, az =  -0.5, 1, 0.6
                    bx, by, bz =  -0.5, -0.3, 0.65
                elseif (vModel == 587) then -- Euros
                    ax, ay, az =  -0.55, 1, 0.4
                    bx, by, bz =  -0.55, -0.6, 0.45
                elseif (vModel == 604 or vModel == 466) then -- Glendale
                    ax, ay, az =  -0.5, 1, 0.45
                    bx, by, bz =  -0.5, -0.2, 0.5
                elseif (vModel == 492) then -- Greenwood
                    ax, ay, az =  -0.5, 1, 0.5
                    bx, by, bz =  -0.5, -0.3, 0.55
                elseif (vModel == 546) then -- Intruder
                    ax, ay, az =  -0.6, 1, 0.45
                    bx, by, bz =  -0.6, -0.5, 0.5
                elseif (vModel == 551) then -- Merit
                    ax, ay, az =  -0.5, 1, 0.45
                    bx, by, bz =  -0.5, -0.2, 0.5
                elseif (vModel == 516) then -- Nebula
                    ax, ay, az =  -0.5, 1, 0.45
                    bx, by, bz =  -0.5, -0.2, 0.5
                elseif (vModel == 467) then -- Oceanic
                    ax, ay, az =  -0.5, 1, 0.45
                    bx, by, bz =  -0.5, -0.2, 0.5
                elseif (vModel == 547) then -- Primo
                    ax, ay, az =  -0.5, 1, 0.5
                    bx, by, bz =  -0.5, -0.3, 0.55
                elseif (vModel == 405) then -- Sentinel
                    ax, ay, az =  -0.4, 1, 0.35
                    bx, by, bz =  -0.4, -0.3, 0.4
                elseif (vModel == 409) then -- Stretch
                    ax, ay, az =  -0.5, 2, 0.4
                    bx, by, bz =  -0.5, 0.7, 0.45
                elseif (vModel == 550) then -- Sunrise
                    ax, ay, az =  -0.55, 1, 0.3
                    bx, by, bz =  -0.55, -0.3, 0.4
                elseif (vModel == 566) then -- Tahoma
                    ax, ay, az =  -0.55, 1, 0.35
                    bx, by, bz =  -0.55, -0.25, 0.45
                elseif (vModel == 540) then -- Vincent
                    ax, ay, az =  -0.55, 1, 0.35
                    bx, by, bz =  -0.55, -0.45, 0.4
                elseif (vModel == 421) then -- Washington
                    ax, ay, az =  -0.45, 1, 0.35
                    bx, by, bz =  -0.45, -0.15, 0.4
                elseif (vModel == 529) then -- Willard
                    ax, ay, az =  -0.55, 1, 0.5
                    bx, by, bz =  -0.55, -0.4, 0.55
                -- elseif (vModel == 592) then -- Andromeda has no cockpit
                    -- ax, ay, az =  0, 20, 2
                    -- bx, by, bz =  0, 13, 4
                elseif (vModel == 577) then -- AT 400
                    ax, ay, az =  -0.5, 30, 4
                    bx, by, bz =  -0.5, 24, 4.8
                elseif (vModel == 511) then -- Beagle
                    ax, ay, az =  -0.4, 4, -0.5
                    bx, by, bz =  -0.4, 1.7, 0
                elseif (vModel == 548) then -- Cargobob
                    ax, ay, az =  -0.68, 9, -0.5
                    bx, by, bz =  -0.68, 4.3, -0.1
                elseif (vModel == 512) then -- Cropduster
                    ax, ay, az =  0, 1, 0.5
                    bx, by, bz =  0, -0.35, 0.5
                elseif (vModel == 593) then -- Dodo
                    ax, ay, az =  -0.32, 1, 0.65
                    bx, by, bz =  -0.32, -0.2, 0.65
                elseif (vModel == 425) then -- Hunter
                    ax, ay, az =  0, 5, 0.7
                    bx, by, bz =  0, 2.3, 0.7
                elseif (vModel == 520) then -- Hydra
                    ax, ay, az =  0, 5, 0.6
                    bx, by, bz =  0, 2.7, 0.65
                elseif (vModel == 417) then -- Leviathan
                    ax, ay, az =  -0.5, 9, 1.2
                    bx, by, bz =  -0.5, 3, 1.2
                elseif (vModel == 487 or vModel == 497) then -- Maverick based vehicles
                    ax, ay, az =  -0.5, 5, 0.5
                    bx, by, bz =  -0.5, 1.3, 0.5
                elseif (vModel == 553) then -- Nevada
                    ax, ay, az =  -0.4, 20, 0.2
                    bx, by, bz =  -0.4, 9.3, 0.6
                elseif (vModel == 488) then -- News chopper
                    ax, ay, az =  -0.5, 5, 0.5
                    bx, by, bz =  -0.5, 0.5, 0.5
                elseif (vModel == 563) then -- Raindance
                    ax, ay, az =  -0.5, 9, 0.3
                    bx, by, bz =  -0.5, 2.3, 0.3
                elseif (vModel == 476) then -- Rustler
                    ax, ay, az =  0, 1, 0.4
                    bx, by, bz =  0, -0.6, 0.4
                elseif (vModel == 469 or vModel ==  447) then -- Sparrow based vehicles
                    ax, ay, az =  -0.4, 5, 0.5
                    bx, by, bz =  -0.4, 0.7, 0.5
                elseif (vModel == 519) then -- Shamal
                    ax, ay, az =  -0.4, 10, 0
                    bx, by, bz =  -0.4, 5, 0.5
                elseif (vModel == 460) then -- Skimmer
                    ax, ay, az =  -0.35, 1, 0.5
                    bx, by, bz =  -0.35, 0, 0.7
                elseif (vModel == 513) then -- Stunt Plane
                    ax, ay, az =  0, 1, 0.2
                    bx, by, bz =  0, -1.3, 0.2
                elseif (vModel == 581 or vModel == 521 or vModel == 461 or vModel == 522) then -- BF 400, PCJ 600, FCR 900, NRG 500
                    ax, ay, az =  0, 1, 0.75
                    bx, by, bz =  0, -0.05, 0.75
                    isBike = 1
                elseif (vModel == 509) then -- Bike
                    ax, ay, az =  0, 1, 0.7
                    bx, by, bz =  0, -0.3, 0.7
                elseif (vModel == 481) then -- BMX
                    ax, ay, az =  0, 1, 0.7
                    bx, by, bz =  0, -0.2, 0.7
                elseif (vModel == 462 or vModel == 448) then -- Faggio based vehicles
                    ax, ay, az =  0, 1, 0.8
                    bx, by, bz =  0, -0.2, 0.8
                    isBike = 1
                elseif (vModel == 463) then -- Freeway
                    ax, ay, az =  0, 1, 0.8
                    bx, by, bz =  0, -0.6, 0.8
                elseif (vModel == 510) then -- Mountain Bike
                    ax, ay, az =  0, 1, 0.7
                    bx, by, bz =  0, -0.1, 0.7
                elseif (vModel == 468) then -- Sanchez
                    ax, ay, az =  0, 1, 0.85
                    bx, by, bz =  0, -0.3, 0.85
                    isBike = 1
                elseif (vModel == 586) then -- Wayfarer
                    ax, ay, az =  0, 1, 0.9
                    bx, by, bz =  0, -0.5, 0.9
                    isBike = 1
                elseif (vModel == 472) then -- Coastguard
                    ax, ay, az =  -0.2, 1, 1.4
Link to comment

i gotta admit the code is pretty noob made, someone forgot about xml, mysql, or at least tables, i recommend re-scripting it, and it'll take 5times less space, and will be less lag

and use [lua][ /lua] or

[ /code] tags.

heres a deal, put those cockpit values in proper table with veh id as a key, and ill help you adjust the code.

Link to comment

i found new script but when im driving and steer car cam wont steer.

local x, y, z, x1, y1, z1 
local fpcam = false 
  
bindKey( "F2", "down", 
   function() 
      if fpcam then 
         setCameraTarget(getLocalPlayer(), getLocalPlayer()) 
      end 
      fpcam = not fpcam 
   end 
) 
  
addEventHandler("onClientPreRender", root, 
    function() 
        if fpcam then 
            x, y, z = getPedBonePosition(getLocalPlayer(), 6) 
            setCameraMatrix(x, y, z, x + x1, y + y1, z + z1) 
            dxDrawImage(screenWidth/2-10, screenHeight/2-10, 20, 20, "images/aimer.png") 
            local tarX, tarY, tarZ = getWorldFromScreenPosition(screenWidth/2, screenHeight/2, 30) 
            setPedAimTarget(getLocalPlayer(), tarX, tarY, tarZ) 
        end 
    end 
) 
  
addEventHandler("onClientCursorMove", root, 
    function( _, _, _, _, wx, wy, wz ) 
        local cx, cy, cz = getCameraMatrix() 
        x1 = ( wx - cx ) / 300 
        y1 = ( wy - cy ) / 300 
        z1 = ( wz - cz ) / 300 
    end 
) 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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