Jump to content

Very bad problem with a vehicle spawner


Leonard.DC

Recommended Posts

Hi, i alredy have all the RP vehicle spawner working on my Rpg server, i have Police, Medic, Crim, Free, Etc, Vehicles spawners and working 100%, But i don't know why this mechanic spawner doesn't want to work, checked debugscript, 0 errors and 0 problems, i have checked the script thousends of times, but i can't locate the problem, onClientGUIClick works nice, but when i click the button "Spawn", the vehicle doesn't spawn and the Gui doesn't quit, why???

----Client Side------ 
  
    Window2 = guiCreateWindow ( 0.2, 0.2, 0.25, 0.5, "Mechanic vehicles", true ) 
    buttonmev = guiCreateButton ( 0.5, 0.8, 0.45, 0.15, "Close", true, Window2 ) 
    button2 = guiCreateButton ( 0.01, 0.8, 0.45, 0.15, "Spawn", true, Window2 ) 
    label2 = guiCreateLabel ( 0.1, 0.1, 0.9, 0.1, "Take your vehicle", true, Window2 ) 
    showCursor(false) 
    guiSetVisible( Window2, false ) 
    guiWindowSetSizable( Window2, false ) 
  
vehicles2 = 
                { 
                {"Bobcat", 422}, 
                {"Picador", 600}, 
                {"TowTruck", 525}, 
                } 
          
        grid = guiCreateGridList(0.01, 0.2, 0.99, 0.5, true, Window2) 
        guiGridListAddColumn(grid, "Vehicles", 0.85) 
          
        for i,veh in ipairs(vehicles2) do 
             row = guiGridListAddRow(grid) 
             -- 
             guiGridListSetItemText(grid, row, 1, tostring(veh[1]), false, false) 
             guiGridListSetItemData(grid, row, 1, tostring(veh[2])) 
        end 
          
    function useMec() 
        local row, col = guiGridListGetSelectedItem(grid)   
        if (row and col and row ~= -1 and col ~= -1) then 
            local model = tonumber(guiGridListGetItemData(grid, row, 1)) 
            if model ~= "" then 
                triggerServerEvent("CreVehiceMecv", localPlayer, model) 
                guiSetVisible(Window2,false) 
            showCursor(false) 
            end 
        end 
    end 
    addEventHandler("onClientGUIClick", button2, useMec, false) 
      
    function close() 
        if (source == buttonmev) then 
            guiSetVisible(Window2,false) 
            showCursor(false) 
        end 
    end 
    addEventHandler("onClientGUIClick", buttonmev, close) 
        
    function showGUImev() 
        guiSetVisible(Window2,true) 
        showCursor(true) 
    end 
    addEvent("showGUImecv",true) 
    addEventHandler("showGUImecv", getRootElement(), showGUImev) 
     
      function errorVehMecDx () 
        dxDrawText("Restricted Vehicle", 357, 926, 974, 967, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, true, false, false) 
        dxDrawText("Restricted Vehicle", 357, 924, 974, 965, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, true, false, false) 
        dxDrawText("Restricted Vehicle", 355, 926, 972, 967, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, true, false, false) 
        dxDrawText("Restricted Vehicle", 355, 924, 972, 965, tocolor(0, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, true, false, false) 
        dxDrawText("Restricted Vehicle", 356, 925, 973, 966, tocolor(255, 0, 0, 255), 1.00, "pricedown", "center", "center", false, false, true, false, false) 
    end 
     
    function errorVehMec () 
    addEventHandler("onClientRender",getRootElement(),errorVehMecDx) 
    playSound ("fail.mp3") 
    setTimer(function() removeEventHandler("onClientRender",getRootElement(),errorVehMecDx) end,7000,1) 
    end 
    addEvent ("failvehmec", true) 
    addEventHandler ("failvehmec", root, errorVehMec) 

-------Server Side------- 
  
    markermev = createMarker( 1036.52332, -1027.04517, 31.10156, "cylinder", 2, 255, 255, 0, 255 ) 
    markermev1 = createMarker( 2118.23779, -1139.20654, 24.05363, "cylinder", 2, 255, 255, 0, 255 ) 
    markermev2 = createMarker( 2099.13696, 2170.94922, 9.82031, "cylinder", 2, 255, 255, 0, 255 ) 
    markermev3 = createMarker( -1988.39319, 249.08885, 34.17188, "cylinder", 2, 255, 255, 0, 255 ) 
    markermev4 = createMarker( -1986.62317, 267.63120, 34.17936, "cylinder", 2, 255, 255, 0, 255 ) 
  
    local vehicles2 = {} 
      
    function spawnVehMe(id) 
        local x, y, z = getElementPosition(source) 
        if isElement(vehicles2[source]) then destroyElement(vehicles2[source]) end 
        vehicles2[source] = createVehicle(id, x + 2, y, z) 
        warpPedIntoVehicle(source, vehicles2[source]) 
    end 
    addEvent("CreVehiceMecv",true) 
    addEventHandler("CreVehiceMecv", root, spawnVehMe) 
      
    addEventHandler("onPlayerQuit", root, 
    function() 
         if isElement(vehicles2[source]) then 
              destroyElement(vehicles2[source]) 
              vehicles2[source] = nil 
         end 
    end) 
  
function showGUIMechv(hitPlayer) 
    if hitPlayer and getElementType(hitPlayer) == "player" and not isPedInVehicle (hitPlayer) then 
        if ( getPlayerTeam ( hitPlayer ) == getTeamFromName ( "Mechanic" ) ) then 
            triggerClientEvent (hitPlayer,"showGUImecv",hitPlayer) 
        else 
            outputChatBox ("You can't use this marker",hitPlayer, 255, 0, 0) 
            triggerClientEvent (hitPlayer, "failvehmec", hitPlayer) 
        end 
    end 
end  
addEventHandler("onMarkerHit",markermev,showGUIMechv) 
addEventHandler("onMarkerHit",markermev1,showGUIMechv) 
addEventHandler("onMarkerHit",markermev2,showGUIMechv) 
addEventHandler("onMarkerHit",markermev3,showGUIMechv) 
addEventHandler("onMarkerHit",markermev4,showGUIMechv) 

Link to comment
It works for me, there must be anything else wrong in your script mate. Just this part of your script doesn't work when people don't have a team ( like me ); if ( getPlayerTeam ( hitPlayer ) == getTeamFromName ( "Mechanic" ) ) then

Just make sure people always have a team.

Ok, i will try to make the script in other .zip file, if you say it works, i think you true, thanks

Edit: Yes you are true, it works in other .zip file, i think other function corrupt the spawner, because i use 1 cleint side and 1 server side file for all spawners, thanks

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...