0 Üye ve 1 Ziyaretçi konuyu incelemekte.
local ghostAvail = falsefunction toggleVehicleGhost() if guiCheckBoxGetSelected(getControl(wndMain, 'anticol')) then outputChatBox("Your car will not collide with other cars..",250,250,250) ghostAvail = true setElementData ( g_Me, "freeroam:ghost", true ) local veh = getPedOccupiedVehicle ( g_Me ) if veh and getPedOccupiedVehicleSeat (g_Me) == 0 then for i, v in ipairs ( getElementsByType ("vehicle", true) ) do if veh ~= v then setElementCollidableWith ( veh, v, false ) end end end else outputChatBox("Your car will collide with other cars..",250,0,250) setElementData ( g_Me, "freeroam:ghost", false ) ghostAvail = false if veh and getPedOccupiedVehicleSeat (g_Me) == 0 then for i, v in ipairs ( getElementsByType ("vehicle", true) ) do if veh ~= v then local occupant = getVehicleOccupant (veh) if not occupant or not getElementData (occupant,"freeroam:ghost") then setElementCollidableWith ( veh, v, true ) end end end end endendfunction onStreamIn ( ) local veh = getPedOccupiedVehicle ( g_Me ) if veh then if getElementType ( source ) == "vehicle" then local occupant = getVehicleOccupant (veh) if isElementCollidableWith ( veh, source ) then if ghostAvail or ( occupant and getElementData ( occupant, "freeroam:ghost" ) and getPedOccupiedVehicleSeat (occupant) == 0 ) then setElementCollidableWith ( veh, source, false ) end else if not ghostAvail or ( occupant and not getElementData ( occupant, "freeroam:ghost" ) ) then setElementCollidableWith ( veh, source, true ) end end end endendaddEventHandler ( "onClientElementStreamIn", root, onStreamIn )function checkPlayersGhosts (dataName) if getElementType ( source ) == "player" and dataName == "freeroam:ghost" and source ~= localPlayer then local veh = getPedOccupiedVehicle ( source ) local localVeh = getPedOccupiedVehicle ( g_Me ) if veh and getPedOccupiedVehicleSeat (source) == 0 and isElementStreamedIn (veh) then local newValue = getElementData ( source, dataName ) if newValue then for i, v in ipairs ( getElementsByType ("vehicle", true) ) do if veh ~= v then setElementCollidableWith ( veh, v, false ) end end else for i, v in ipairs ( getElementsByType ("vehicle", true) ) do if veh ~= localVeh then setElementCollidableWith ( veh, v, true ) else if not ghostAvail then setElementCollidableWith ( veh, v, true ) end end end end end endendaddEventHandler ( "onClientElementDataChange", getRootElement(), checkPlayersGhosts )addEventHandler("onClientVehicleEnter", getRootElement(), function(thePlayer, seat) -- if thePlayer ~= getLocalPlayer() then if seat == 0 then if getElementData (thePlayer,"freeroam:ghost") then -- local localVeh = getPedOccupiedVehicle ( g_Me ) -- if localVeh and localVeh ~= source then for i, v in ipairs ( getElementsByType ("vehicle", true) ) do if source ~= v then setElementCollidableWith ( source, v, false ) end end -- end end end -- end end)addEventHandler("onClientVehicleExit", getRootElement(), function(thePlayer, seat) -- if thePlayer ~= getLocalPlayer() then if seat == 0 then -- local localVeh = getPedOccupiedVehicle ( g_Me ) -- if localVeh and localVeh ~= source then if getElementData (thePlayer,"freeroam:ghost") then for i, v in ipairs ( getElementsByType ("vehicle", true) ) do if source ~= localVeh then setElementCollidableWith ( source, v, true ) else if not ghostAvail then setElementCollidableWith ( source, v, true ) end end end end end -- end end)