'LinKin Posted December 24, 2013 Posted December 24, 2013 Hello, I've made this fun resource. It's purpose is to remove a ped from his vehicle. function leaveVehicle(thePlayer) outputChatBox("Command Executed") for i, player in ipairs (getElementsByType("player")) do if player == thePlayer then outputChatBox("Player = Source") if isPedInVehicle (player) then outputChatBox("Ejecting...") removePedFromVehicle ( player ) end end end end addCommandHandler("eject", leaveVehicle) Works fine, but I've got one trouble. As soon as the player is removed from the vehicle, something auto-warps him again into his vehicle. I think it has something to do with Race scripts. But I'm not sure... Debugscript 3 ouputs this: INFO: Warping player into vehicle for |GMC|LinKin How can I avoid this auto-warping after removing the player from the vehicle? Need a clanwar script? Click here! Do you want some free scripts for your DD server? Visit my website.
Castillo Posted December 24, 2013 Posted December 24, 2013 ------------------------ -- Keep players in vehicles g_checkPedIndex = 0 TimerManager.createTimerFor("raceresource","warppeds"):setTimer( function () -- Make sure all players are in a vehicle local maxCheck = 6 -- Max number to check per call local maxWarp = 3 -- Max number to warp per call local warped = 0 for checked = 0, #g_Players - 1 do if checked >= maxCheck or warped >= maxWarp then break end g_checkPedIndex = g_checkPedIndex + 1 if g_checkPedIndex > #g_Players then g_checkPedIndex = 1 end local player = g_Players[g_checkPedIndex] if not getPedOccupiedVehicle(player) then local vehicle = g_Vehicles[player] if vehicle and isElement(vehicle) and not isPlayerRaceDead(player) then outputDebugString( "Warping player into vehicle for " .. tostring(getPlayerName(player)) ) warpPedIntoVehicle( player, vehicle ) warped = warped + 1 end end end end, 50,0 ) That's the code that warps the players back into their vehicles, is inside "race/race_server.lua". San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Saml1er Posted December 25, 2013 Posted December 25, 2013 ------------------------ -- Keep players in vehicles g_checkPedIndex = 0 TimerManager.createTimerFor("raceresource","warppeds"):setTimer( function () -- Make sure all players are in a vehicle local maxCheck = 6 -- Max number to check per call local maxWarp = 3 -- Max number to warp per call local warped = 0 for checked = 0, #g_Players - 1 do if checked >= maxCheck or warped >= maxWarp then break end g_checkPedIndex = g_checkPedIndex + 1 if g_checkPedIndex > #g_Players then g_checkPedIndex = 1 end local player = g_Players[g_checkPedIndex] if not getPedOccupiedVehicle(player) then local vehicle = g_Vehicles[player] if vehicle and isElement(vehicle) and not isPlayerRaceDead(player) then outputDebugString( "Warping player into vehicle for " .. tostring(getPlayerName(player)) ) warpPedIntoVehicle( player, vehicle ) warped = warped + 1 end end end end, 50,0 ) That's the code that warps the players back into their vehicles, is inside "race/race_server.lua". I think he wanted to remove ped from Vehicle. here -- function leaveVehicle (thePlayer) local vehicle = getPedOccupiedVehicle(thePlayer) if vehicle and isElement(vehicle) and not isPlayerRaceDead(thePlayer) then outputChatBox(getPlayerName(thePlayer).." is out from vehicle ) removePedFromVehicle ( thePlayer ) end end addCommandHandler("eject", leaveVehicle)
'LinKin Posted December 25, 2013 Author Posted December 25, 2013 Thank you both. I've managed to do it by commenting 2 lines in race_server.lua --outputDebugString( "Warping player into vehicle for " .. tostring(getPlayerName(player)) ) --warpPedIntoVehicle( player, vehicle ) But I was wondering, is it possible to make a condition in race_server so that it doesn't execute these lines when my custom resource to eject a player from his vehicle is running? Something like; if not getResourceData(myscript,"state") == "Running" then outputDebugString( "Warping player into vehicle for " .. tostring(getPlayerName(player)) ) warpPedIntoVehicle( player, vehicle ) end Note: I know getResourceData function doesn't exist. It was just an example to make you understand what I am looking for. Thanks in advance. Need a clanwar script? Click here! Do you want some free scripts for your DD server? Visit my website.
johny46 Posted December 25, 2013 Posted December 25, 2013 Sure it is possible. Try this: if getResourceState(getResourceFromName("your resource name")) == "running" then --don't warp ped into vehicle else --warp ped back to his vehicle end
Castillo Posted December 25, 2013 Posted December 25, 2013 ------------------------ -- Keep players in vehicles g_checkPedIndex = 0 TimerManager.createTimerFor("raceresource","warppeds"):setTimer( function () -- Make sure all players are in a vehicle local maxCheck = 6 -- Max number to check per call local maxWarp = 3 -- Max number to warp per call local warped = 0 for checked = 0, #g_Players - 1 do if checked >= maxCheck or warped >= maxWarp then break end g_checkPedIndex = g_checkPedIndex + 1 if g_checkPedIndex > #g_Players then g_checkPedIndex = 1 end local player = g_Players[g_checkPedIndex] if not getPedOccupiedVehicle(player) then local vehicle = g_Vehicles[player] if vehicle and isElement(vehicle) and not isPlayerRaceDead(player) then outputDebugString( "Warping player into vehicle for " .. tostring(getPlayerName(player)) ) warpPedIntoVehicle( player, vehicle ) warped = warped + 1 end end end end, 50,0 ) That's the code that warps the players back into their vehicles, is inside "race/race_server.lua". I think he wanted to remove ped from Vehicle. here -- function leaveVehicle (thePlayer) local vehicle = getPedOccupiedVehicle(thePlayer) if vehicle and isElement(vehicle) and not isPlayerRaceDead(thePlayer) then outputChatBox(getPlayerName(thePlayer).." is out from vehicle ) removePedFromVehicle ( thePlayer ) end end addCommandHandler("eject", leaveVehicle) I wasn't posting a solution, I was showing him what was causing the warping-back-to-vehicle problem. San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
'LinKin Posted December 25, 2013 Author Posted December 25, 2013 Thanks. Need a clanwar script? Click here! Do you want some free scripts for your DD server? Visit my website.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now