Search the Community
Showing results for tags 'need'.
-
I recently dove into this simple thing called "scripting and building a server". Naturally —added to my already curious personality—, I always come up with a doubt, a question, or any sort of uncertainty. After a week of messing around with it, I noticed that 5 of the 10 last posts made in the Script section were from me. I was having so much fun —truthfully— that I just kept on finding new things to ask. I'm pretty sure they are common questions. I'm not asking to have a script from scratch, or to be taught absolutely everything. It is most commonly about errors and to help myself understand the colloquial language of the scripts. However, I can't help but think that maybe it's not the best approach. I always think to myself "try to find it on your own", but I frenquently find myself getting even more confused the more I tour into each command and function. Is there a certain tacit limit as to how many questions can be asked? Is there any way to get the necessary help without flooding the sections?
-
Hi Everyone! Can someone help me, how can I make that, if a fire is created it outputs the chatbox the fire's position (example: "The LSPD is on fire" or "The Hospital is on fire" . The Script Files: FireC.lua local fireElement = {} addEvent("FireServer.rootFireCreate",true) addEventHandler("FireServer.rootFireCreate",getRootElement(),function(rand) local fire = createFire(FirePositions[rand][1], FirePositions[rand][2], FirePositions[rand][3], FirePositions[rand][4], FirePositions[rand][5], FirePositions[rand][6]) fireElement[#fireElement + 1] = fire end) addEventHandler ("onClientResourceStart", getRootElement(), function (res) if res ~= getThisResource() then return end triggerServerEvent("FireServer.loadMe", localPlayer, localPlayer) end) function draw() for k,v in ipairs(getElementsByType("object")) do if getElementData(v, "Fire->object") then local x, y ,z = getElementPosition(v) local wx, wy, wz = getScreenFromWorldPosition(x , y, z+1) if wx and wy then local playerx, playery, playerz = getElementPosition(getLocalPlayer()) if getDistanceBetweenPoints3D(playerx, playery, playerz, wx, wy, wz) <= 5 then dxDrawRectangle(wx-200/2,wy,200,30,tocolor(0,0,0,255/2)) dxDrawRectangle(wx-200/2+5,wy+5,190,20,tocolor(124, 197, 118,255/2)) end end end end end addEventHandler("onClientRender", root, draw) FireG.lua FirePositions = { -- X, Y, Z, Range(FireSize) [1] = {2114.1240234375, -1756.2508544922, 13.3984375, 800}, } FireS.lua local loadedPlayers = {} local fireBar = {} FireServer = {} function FireServer.start(player) loadedPlayers[#loadedPlayers + 1] = player end addEvent("FireServer.loadMe", true) addEventHandler("FireServer.loadMe", root, FireServer.start) function FireServer.FireCreate() if math.random(1, 3) == 2 then local rand = math.random(#FirePositions) if fireBar[rand] then return end for k,v in pairs(loadedPlayers) do triggerClientEvent(v, "FireServer.rootFireCreate", v, rand) fireBar[rand] = createObject(1337, FirePositions[rand][1], FirePositions[rand][2], FirePositions[rand][3] - 1) setElementAlpha(fireBar[rand], 0) setElementCollisionsEnabled(fireBar[rand], false) setElementData(fireBar[rand], "Fire->object", true) end end end setTimer(FireServer.FireCreate, 1000, 0)
-
local screenWidth, screenHeight = guiGetScreenSize() GUIEditor = { button = {} } addEventHandler("onClientResourceStart", resourceRoot, function showgui() if (vehicle) then GUIEditor.button[1] = guiCreateButton(981, 627, 39, 40, "1", false) guiSetAlpha(GUIEditor.button[1], 0.00) guiSetProperty(GUIEditor.button[1], "NormalTextColour", "FFFFFFFF") GUIEditor.button[2] = guiCreateButton(1025, 627, 39, 40, "2", false) guiSetAlpha(GUIEditor.button[2], 0.00) guiSetProperty(GUIEditor.button[2], "NormalTextColour", "FFFFFFFF") GUIEditor.button[3] = guiCreateButton(981, 673, 39, 40, "4", false) guiSetAlpha(GUIEditor.button[3], 0.00) guiSetProperty(GUIEditor.button[3], "NormalTextColour", "FFFFFFFF") GUIEditor.button[4] = guiCreateButton(1025, 673, 39, 40, "5", false) guiSetAlpha(GUIEditor.button[4], 0.00) guiSetProperty(GUIEditor.button[4], "NormalTextColour", "FFFFFFFF") GUIEditor.button[5] = guiCreateButton(1069, 673, 39, 40, "6", false) guiSetAlpha(GUIEditor.button[5], 0.00) guiSetProperty(GUIEditor.button[5], "NormalTextColour", "FFFFFFFF") GUIEditor.button[6] = guiCreateButton(1069, 719, 39, 40, "9", false) guiSetAlpha(GUIEditor.button[6], 0.00) guiSetProperty(GUIEditor.button[6], "NormalTextColour", "FFFFFFFF") GUIEditor.button[7] = guiCreateButton(1025, 719, 39, 40, "8", false) guiSetAlpha(GUIEditor.button[7], 0.00) guiSetProperty(GUIEditor.button[7], "NormalTextColour", "FFFFFFFF") GUIEditor.button[8] = guiCreateButton(981, 719, 39, 40, "7", false) guiSetAlpha(GUIEditor.button[8], 0.00) guiSetProperty(GUIEditor.button[8], "NormalTextColour", "FFFFFFFF") GUIEditor.button[9] = guiCreateButton(1025, 765, 39, 40, "0", false) guiSetAlpha(GUIEditor.button[9], 0.00) guiSetProperty(GUIEditor.button[9], "NormalTextColour", "FFFFFFFF") GUIEditor.button[10] = guiCreateButton(892, 573, 39, 40, "CLEAR", false) guiSetAlpha(GUIEditor.button[10], 0.00) guiSetProperty(GUIEditor.button[10], "NormalTextColour", "FFF70000") GUIEditor.button[11] = guiCreateButton(892, 627, 39, 40, "DEMO", false) guiSetAlpha(GUIEditor.button[11], 0.00) guiSetProperty(GUIEditor.button[11], "NormalTextColour", "FF66F92C") GUIEditor.button[12] = guiCreateButton(892, 673, 39, 40, "AM", false) guiSetAlpha(GUIEditor.button[12], 0.00) guiSetProperty(GUIEditor.button[12], "NormalTextColour", "FFE7E53D") GUIEditor.button[13] = guiCreateButton(892, 719, 39, 40, "PM", false) guiSetAlpha(GUIEditor.button[13], 0.00) guiSetProperty(GUIEditor.button[13], "NormalTextColour", "FF8D9096") GUIEditor.button[14] = guiCreateButton(892, 765, 39, 40, "ENTER", false) guiSetAlpha(GUIEditor.button[14], 0.00) guiSetProperty(GUIEditor.button[14], "NormalTextColour", "FF3F4145") GUIEditor.button[15] = guiCreateButton(981, 765, 39, 40, "-", false) guiSetAlpha(GUIEditor.button[15], 0.27) guiSetProperty(GUIEditor.button[15], "NormalTextColour", "FFFFFFFF") GUIEditor.button[16] = guiCreateButton(1069, 627, 39, 40, "3", false) guiSetAlpha(GUIEditor.button[16], 0.00) guiSetProperty(GUIEditor.button[16], "NormalTextColour", "FFFFFFFF") GUIEditor.edit[1] = guiCreateEdit(951, 575, 192, 32, "MM-DD-YYYY-HH-MM-AMPM", false) guiSetProperty(GUIEditor.edit[1], "NormalTextColour", "FF000100") guiEditSetMaxLength ( GUIEditor.edit[1], 21 ) end ) local dxfont0_BTTF = dxCreateFont("fonts/BTTF.ttf", 10) addEventHandler("onClientRender", root, function showgui() if (vehicle) then dxDrawImage(444, 559, 433, 269, "images/time_circuits.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) dxDrawText("By: CsaliHUN", 745 - 1, 810 - 1, 873 - 1, 828 - 1, tocolor(0, 0, 0, 255), 1.00, dxfont0_BTTF, "center", "center", false, false, false, false, false) dxDrawText("By: CsaliHUN", 745 + 1, 810 - 1, 873 + 1, 828 - 1, tocolor(0, 0, 0, 255), 1.00, dxfont0_BTTF, "center", "center", false, false, false, false, false) dxDrawText("By: CsaliHUN", 745 - 1, 810 + 1, 873 - 1, 828 + 1, tocolor(0, 0, 0, 255), 1.00, dxfont0_BTTF, "center", "center", false, false, false, false, false) dxDrawText("By: CsaliHUN", 745 + 1, 810 + 1, 873 + 1, 828 + 1, tocolor(0, 0, 0, 255), 1.00, dxfont0_BTTF, "center", "center", false, false, false, false, false) dxDrawText("By: CsaliHUN", 745, 810, 873, 828, tocolor(246, 92, 8, 255), 1.00, dxfont0_BTTF, "center", "center", false, false, false, false, false) dxDrawImage(878, 557, 275, 271, "images/buttons.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) dxDrawText("", 951, 575, 1143, 607, tocolor(255, 255, 255, 255), 1.00, "default", "left", "top", false, false, false, false, false) end ) addEventHandler ( "onClientGUIClick", GUIEditor.button[16], outputEditBox, false ) function outputEditBox ( button ) if button == "left" then local text = guiGetText ( GUIEditor.edit[1] ) outputChatBox("Uticél beállítva:",player,255,69,0) outputChatBox (( text ),player,255,69,0) outputChatBox("Érd el a 88 km/h sebességet az utazáshoz!",player,255,69,0) end end addEventHandler("onClientRender", root, showgui) addCommandHandler ( "bttf", showgui ) function HandleTheRendering ( ) addEventHandler("onClientRender", root, renderDisplay) end addEventHandler("onClientResourceStart",resourceRoot, HandleTheRendering) SORRY FOR BAD ENGLISH Please help me, I made a GUI, that needs to show on when I enter a Tampa , but it didn't show on. And also can someone help me to make that if i click on a button it will write something to an edit box, then if i click on an other button it will send it to local chat. ((The buttons alpha = 0 because there's a picture behind them))
-
basically everything is all right but he dont give that "Press j to inventory" and no tires/engines inside.... Need help whit this. I have no errors. Server side: ---------------------------Motos ----------------- addEvent ("vehicle", true) addEvent ("carBuyy", true) addEventHandler ("carBuyy", getRootElement(), function(id2, cost2, name2, vehCol, veh, x, y, z, sRz) local account = getPlayerAccount(source) if (getPlayerMoney (source) >= tonumber(cost2)) then outputChatBox ("You bought " ..name2.. " for"..cost2, source, 255, 255, 0, false) outputChatBox ("price: $" .. cost2, source, 0, 255, 0, false) takePlayerMoney (source, tonumber (cost2)) local x,y,z = getElementPosition (source) local vehicle = createVehicle (id2, x, y, z, 0, 0, sRz ) local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(id2,x,y,z) vehCol = createColSphere(x,y,z,1.5) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",6) local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{id2,x,y,z}) --others setElementData(vehCol,"fuel",10) warpPedIntoVehicle(source, vehicle) else outputChatBox ("Sorry, you don't have"..cost2.."$", source, 255, 0, 0, false) end end ) -- Modify The coordenates And blips local varkers = {} local nums = 0 cordinatess = { {-2504.19653 ,732.67963 , 35}, {-2101.19824 , -2257.89087 , 30}, {2040.43188, 2269.98828, 10}, {241.55659 , -154.18588 , 1}, } for i, h in pairs(cordinatess) do nums = nums + 1 varkers[nums] = createMarker(h[1], h[2], h[3], "cylinder", 1.5, 254, 0, 0, 170 ) createBlip(h[1], h[2], h[3], 55, 0, 0, 0, 255, 10, 0, 500 ) end function entro_al_marcadorrr ( hitElement ) triggerClientEvent(hitElement, "AbrirrSids", hitElement) outputChatBox("Make sure, you have extra tires or engine!!!", hitElement) end addEventHandler ( "onMarkerHit", resourceRoot, entro_al_marcadorrr ) hunterSpawns = { {-1185.9775390625,26.4111328125,14.1484375}, {-1724.5830078125,2559.3544921875,104.09127807617}, {615.744140625,850.1572265625,-43.009014129639}, {232.5283203125,1950.3583984375,17.640625}, {-1050.5859375,1968.033203125,120.66523742676}, {2821.03515625,2809.6689453125,10.8203125}, {1949.9912109375,-2631.44140625,13.546875}, {-756.53979492188,-2137.5471191406,26.463499069214}, } pickupSpawns = { {-2479.6240234375,2223.6669921875,4.84375}, {-92.9951171875,2823.0908203125,76.721649169922}, {-2448.99609375,-1335.8662109375,310.97662353516}, {-173.2470703125,-2635.5341796875,26.608192443848}, {2108.447265625,-1600.916015625,13.552597045898}, {2452.7392578125,1607.9833984375,10.8203125}, {-1800.8984375,-1950.9736328125,93.561332702637}, } patriotSpawns = { {-1473.5791015625,320.2294921875,7.1875}, {-1373.998046875,460.62109375,7.1875}, {419.150390625,2186.087890625,39.499450683594}, {2821.1796875,793.4658203125,10.8984375}, } sanchezSpanws = { {-812.470703125,-2629.912109375,90.105056762695}, {-1729.8525390625,-1940.3154296875,99.840209960938}, {-2130.90234375,178.4375,35.257678985596}, {-2656.7333984375,1352.4873046875,7.0596733093262}, {-1598.302734375,2694.947265625,55.07092666626}, {-809.96484375,2430.037109375,156.97012329102}, {2920.38671875,2486.0087890625,10.8203125}, {505.732421875,-291.8681640625,20.00952911377}, {-428.8828125,-694.8310546875,19.14847946167}, {1190.41015625,-2109.0341796875,64.738548278809}, {1658.9716796875,-1069.0224609375,23.906229019165}, } barracksSpawns = { {86.486328125,1950.9013671875,17.846803665161}, {440.185546875,1464.173828125,6.3338670730591}, } coachSpawns = { {-1971.4619140625,97.4658203125,27.6875}, {1735.8720703125,1429.0693359375,10.797702789307}, {2797.1318359375,-1868.8359375,9.8603811264038}, {1941.900390625,1975.1904296875,7.59375}, } fisherBootSpawns = { {2463.3984375,-2719.638671875,-0.55000001192093}, {-1577.4873046875,182.353515625,-0.53995263576508}, {-806.80859375,2233.7001953125,40.049976348877}, {-127.4453125,-779.6923828125,-0.55000001192093}, } bikeSpawns = { {194.685546875,-120.2333984375,1.5497757196426}, {173.0146484375,-95.0634765625,1.5516006946564}, {2369.9599609375,29.712890625,28.0416431427}, {710.87109375,-566.7548828125,16.3359375}, {1109.6025390625,-1667.6689453125,13.615442276001}, {2014.6689453125,-1113.4013671875,26.203125}, {2447.41015625,-1967.1845703125,13.546875}, {2633.7236328125,1835.291015625,11.0234375}, {1489.3974609375,2681.54296875,10.8203125}, {-2428.5654296875,2280.875,4.984375}, {-2501.0869140625,2224.880859375,4.9861993789673}, {-2142.8515625,-2457.84765625,30.625}, {-2456.078125,-141.115234375,26.112222671509}, {-1881.4453125,954.3837890625,35.171875}, } maverikSpawns = { {-1495.888671875,-2691.40234375,57.325229644775}, {-2688.42578125,1471.634765625,7.1875}, {-1534.28125,2842.9482421875,97.463409423828}, {2221.8583984375,-1344.396484375,23.984273910522}, } tentSpawns = { {-2845.060546875,2761.2509765625,242.69204711914}, {-1095.94921875,-1450.958984375,126.92543029785}, {2607.1357421875,-510.4755859375,80.744903564453}, {-1509.2333984375,-1986.443359375,50.071846008301}, } heliCrashSites = { {-1360.0478515625,-1070.7314453125,160.4069519043}, {-421.4619140625,-1284.4345703125,33.740924835205}, {-2357.654296875,-1634.3623046875,483.703125}, {979.0849609375,160.59375,28.935249328613}, {-2057.2294921875,2781.73828125,163.12780761719}, {826.90234375,2803.6259765625,74.863929748535}, {2577.7060546875,-650.541015625,136.37449645996}, } hospitalPacks = { {-2670.87890625,636.8984375,14.453125}, {-2637.0556640625,635.03125,14.453125}, {-1515.669921875,2519.166015625,56.0703125}, {-1513.888671875,2519.5908203125,56.064819335938}, {-1528.8955078125,2516.724609375,55.986171722412}, {2022.1650390625,-1402.6806640625,17.18045425415}, {2042.7001953125,-1409.4775390625,17.1640625}, {-316.5478515625,1051.6494140625,20.340259552002}, {-337.9541015625,1049.490234375,19.739168167114}, {-331.5849609375,1046.037109375,26.012474060059}, {-307.0419921875,1045.27734375,26.012474060059}, {1171.490234375,-1310.560546875,13.986573219299}, {1171.609375,-1306.556640625,13.996350288391}, {1158.5048828125,-1326.333984375,31.503561019897}, {1159.80078125,-1323.9013671875,31.498970031738}, {1238.7119140625,328.2431640625,19.7555103302}, {1229.365234375,311.1435546875,24.7578125}, {-2204.07421875,-2309.58203125,31.375}, {1615.939453125,1818.0537109375,10.8203125}, {1601.9443359375,1816.736328125,10.8203125}, {1590.0166015625,1792.0234375,30.46875}, {1607.3232421875,1776.7412109375,37.3125}, {2107.7626953125,926.16015625,10.8203125}, {2116.12890625,925.7705078125,10.9609375}, {2122.1865234375,925.3193359375,10.8203125}, } patrolPoints = { {-1603.2197265625,-2712.736328125,48.9453125}, {2465.748046875,-2215.55859375,13.546875}, {2473.439453125,-2215.56640625,13.546875}, {2480.0732421875,-2216.140625,13.546875}, {2487.24609375,-2215.5966796875,13.546875}, {2494.1005859375,-2215.5859375,13.546875}, {-1686.6728515625,408.9970703125,7.3984375}, {-1682.34375,412.9384765625,7.3984375}, {-1680.0263671875,402.3642578125,7.3984375}, {-1675.84375,406.4677734375,7.3984375}, {-1670.5615234375,411.8359375,7.3984375}, {-1666.2392578125,416.2509765625,7.3984375}, {-1672.7939453125,422.81640625,7.3984375}, {-1677.20703125,418.46484375,7.3984375}, {-2410.7021484375,969.9091796875,45.4609375}, {-2410.744140625,975.220703125,45.4609375}, {-2410.837890625,980.5302734375,45.4609375}, {-1329.3046875,2668.5126953125,50.46875}, {-1328.7314453125,2673.90625,50.0625}, {-1327.0185546875,2679.3876953125,50.46875}, {-1327.3798828125,2684.62890625,50.0625}, {1940.7099609375,-1778.5244140625,13.390598297119}, {1940.6552734375,-1774.908203125,13.390598297119}, {1940.630859375,-1771.728515625,13.390598297119}, {1940.7080078125,-1767.3837890625,13.390598297119}, {-1477.921875,1868.138671875,32.639846801758}, {-1466.1552734375,1869.0048828125,32.6328125}, {-1464.5224609375,1861.3828125,32.639846801758}, {-1477.4599609375,1860.5205078125,32.6328125}, {-735.9208984375,2744.0087890625,47.2265625}, {-739.0439453125,2744.2421875,47.165451049805}, {377.6953125,2601.1083984375,16.484375}, {624.5263671875,1676.25390625,6.9921875}, {620.2958984375,1681.2431640625,6.9921875}, {616.248046875,1686.4169921875,7.1875}, {612.783203125,1691.1650390625,7.1875}, {609.2060546875,1696.201171875,7.1875}, {605.8505859375,1700.978515625,7.1875}, {602.27734375,1706.3603515625,7.1875}, {2141.037109375,2742.734375,10.960174560547}, {2142.3115234375,2752.6982421875,10.96019744873}, {2147.9521484375,2752.3203125,10.8203125}, {2152.60546875,2751.953125,10.8203125}, {2152.984375,2743.85546875,10.8203125}, {2147.75,2743.7392578125,10.8203125}, {-97.6298828125,-1175.0283203125,2.4990689754486}, {-90.74609375,-1177.853515625,2.2021217346191}, {-84.75390625,-1163.853515625,2.3359375}, {-91.5771484375,-1160.5732421875,2.4453125}, {-1606.525390625,-2717.2138671875,48.9453125}, {-1609.7109375,-2721.544921875,48.9453125}, {-1599.83203125,-2708.302734375,48.9453125}, {-2246.314453125,-2558.8212890625,32.0703125}, {-2241.3125,-2561.3662109375,32.0703125}, {-1132.2880859375,-135.0986328125,14.14396572113}, {-1153.529296875,-156.373046875,14.1484375}, {-1142.826171875,-145.67578125,14.14396572113}, {655.611328125,-557.9912109375,16.501491546631}, {655.6572265625,-572.1728515625,16.501491546631}, {1601.791015625,2203.90625,11.060997009277}, {1596.806640625,2203.4345703125,10.8203125}, {1590.197265625,2203.4853515625,10.8203125}, {1589.4775390625,2195.43359375,10.8203125}, {1596.125,2194.294921875,10.8203125}, {1601.6591796875,2194.3369140625,10.8203125}, {2206.8466796875,2470.47265625,10.8203125}, {2206.94140625,2474.75,10.8203125}, {2206.9267578125,2478.86328125,10.8203125}, {2198.06640625,2480.6953125,10.8203125}, {2197.541015625,2475.791015625,10.995170593262}, {2197.609375,2471.9169921875,10.995170593262}, {2120.8251953125,915.4833984375,10.8203125}, {2115.1181640625,915.44140625,10.8203125}, {2109.076171875,915.4228515625,10.8203125}, {2109.22265625,924.8779296875,10.9609375}, {2114.9404296875,924.8857421875,10.9609375}, {2119.5126953125,925.2861328125,10.9609375}, {2645.7197265625,1112.7802734375,10.8203125}, {2639.984375,1112.56640625,10.8203125}, {2634.828125,1112.3466796875,10.9609375}, {2634.1826171875,1101.9482421875,10.8203125}, {2636.7509765625,1101.6748046875,10.8203125}, {2643.5126953125,1101.81640625,10.8203125}, {2209.576171875,2469.8251953125,10.8203125}, {2208.8310546875,2475.09375,10.8203125}, {1005.078125,-901.7490234375,42.216625213623}, {993.025390625,-902.474609375,42.222496032715}, } lootItems = { ["helicrashsides"] = { {"Night Vision Goggles",368,1,90,10}, {"Rocket Launcher",359,1,90,5}, {"Heat-Seeking RPG",360,1,90,4}, {"Lighter",328,0.4,90,2}, {"Pistol",346,1,90,10}, {"Silenced Pistol",347,1,90,7}, {"Shotgun",349,1,90,6}, {"Uzi",352,1,90,5.5}, {"Knife",335,1,90,4}, {"Katana",339,1,90,3}, {"Pizza",1582,1,0,2}, {"Soda Bottle",2647,1,0,2}, {"Empty Patrol Canister",1650,1,0,2}, {"Roadflare",324,1,90,2}, {"Milk",2856,1,0,1}, {"Painkiller",2709,0.5,0,4}, {"Empty Soda Cans",2673,0.5,0,2}, {"Scruffy Burgers",2675,0.5,0,3}, {"Grenade",342,1,0,4}, {"Parachute",342,1,0,80}, {"Sawn-Off Shotgun",350,1,90,5}, {"SPAZ-12 Combat Shotgun",351,1,90,4}, {"MP5",353,1,90,6}, {"Watch",2710,1,0,4}, {"Heat Pack",1576,1,0,3}, {"Wire Fence",933,0.25,0,1}, {"Country Rifle",357,1,90,6}, {"Alice Backpack",3026,1,0,4}, {"Night Vision Goggles",368,1,90,1.5}, --{"Binocular",369,1,0,4}, {"Tire",1073,1,0,2}, {"Morphine",1579,1,0,4}, {"Army Skin",1577,1,0,4.5}, {"Civilian Skin",1577,1,0,3}, {"TEC-9",372,1,90,4}, {"AK-47",355,1,90,7}, {"GPS",2976,0.15,0,3}, {"Map",1277,0.8,90,7}, {"Toolbox",2969,0.5,0,1}, {"Engine",929,0.3,0,2}, {"Tent",1279,1,0,4.5}, {"Sniper Skin",1577,1,0,1.5}, {"M4",356,1,90,1}, {"Sniper Rifle",358,1,90,1.5}, {"Infrared Goggles",369,1,90,3}, {"Small Backpack",3026,0.5,0,5}, {"Coyote Backpack",3026,1.3,0,2}, --{"Thermal GPS",2976,0.2,0,3}, --{"GPS Jammer",2976,0.2,0,4}, }, ["hospital"] = { {"Medic Kit",2891,0.7,0}, {"Heat Pack",1576,1,0}, {"Bandage",1578,0.5,0}, {"Blood Bag",1580,1,0}, {"Morphine",1579,1,0}, {"Blood Bag",1580,1,0}, {"Medic Kit",2891,0.7,0}, {"Blood Bag",1580,1,0}, {"Painkiller",1580,1,0}, }, } vehicleAddonsInfo = { {422,4,1}, {470,4,1}, {468,2,1}, {433,6,1}, {437,6,1}, {509,0,0}, {487,0,1}, {497,0,1}, {453,0,1}, } function getVehicleAddonInfos (id) for i,veh in ipairs(vehicleAddonsInfo) do if veh[1] == id then return veh[2],veh[3] end end end function createHeliCrashSite() if cargoCol then destroyElement(getElementData(cargoCol,"parent")) destroyElement(cargoCol) end local item_id = math.random(table.size(heliCrashSites)) local x,y,z = heliCrashSites[item_id][1],heliCrashSites[item_id][2],heliCrashSites[item_id][3] cargobob = createVehicle(548,x,y,z,nil,nil,nil) setElementHealth(cargobob,0) setElementFrozen(cargobob,true) cargoCol = createColSphere(x,y,z,3) setElementData(cargoCol,"parent",cargobob) setElementData(cargoCol,"helicrash",true) setElementData(cargoCol,"MAX_Slots",0) for i, item in ipairs(lootItems["helicrashsides"]) do local value = math.percentChance (item[5]*3.5,math.random(1,2)) setElementData(cargoCol,item[1],value) --weapon Ammo local ammoData,weapID = getWeaponAmmoType (item[1],true) if ammoData and value > 0 then setElementData(cargoCol,ammoData,math.random(1,2)) end end setTimer(createHeliCrashSite,3600000,1) end createHeliCrashSite() function updateHospitals () for i,box in pairs(hospitalCol) do for _,items in ipairs(lootItems["hospital"]) do setElementData(hospitalCol[i],items[1],math.random(1,5)) end end setTimer(updateHospitals,3600000,1) end hospitalCol = {} function createHospitalPacks() number1 = 0 for i,box in ipairs(hospitalPacks) do number1 = number1+1 local x,y,z = box[1],box[2],box[3] object = createObject(1558,x,y,z,nil,nil,nil) hospitalCol[i] = createColSphere(x,y,z,2) setElementData(hospitalCol[i],"parent",object) setElementData(hospitalCol[i],"hospitalbox",true) setElementData(hospitalCol[i],"MAX_Slots",20) for _,items in ipairs(lootItems["hospital"]) do local randomNumber = math.random(1,10) if randomNumber >= 2 then setElementData(hospitalCol[i],items[1],math.random(1,5)) end end end setTimer(updateHospitals,3600000,1) end createHospitalPacks() for i,patrol in ipairs(patrolPoints) do local x,y,z = patrol[1],patrol[2],patrol[3] patrolCol = createColSphere(x,y,z,3) setElementData(patrolCol,"patrolstation",true) end dayzVehicles = {} function spawnDayZVehicles() if getElementData(getRootElement(),"serverhasloadvehicles") then return end for i,veh in ipairs(pickupSpawns) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(422,x,y,z) vehCol = createColSphere(x,y,z,2) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",20) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{422,x,y,z}) --others setElementData(vehCol,"fuel",10) end for i,veh in ipairs(patriotSpawns) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(470,x,y,z) vehCol = createColSphere(x,y,z,2.5) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",38) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{470,x,y,z}) --others setElementData(vehCol,"fuel",10) for i,items in ipairs(lootItems["helicrashsides"]) do local randomNumber = math.random(1,10) if randomNumber == 5 then setElementData(vehCol,items[1],1) end end end for i,veh in ipairs(sanchezSpanws) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(468,x,y,z) vehCol = createColSphere(x,y,z,1.5) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",6) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{468,x,y,z}) --others setElementData(vehCol,"fuel",10) end for i,veh in ipairs(barracksSpawns) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(433,x,y,z) vehCol = createColSphere(x,y,z,4) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",64) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{433,x,y,z}) --others setElementData(vehCol,"fuel",10) for i,items in ipairs(lootItems["helicrashsides"]) do local randomNumber = math.random(1,10) if randomNumber == 5 then setElementData(vehCol,items[1],math.random(1,2)) end end end for i,veh in ipairs(coachSpawns) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(437,x,y,z) vehCol = createColSphere(x,y,z,4) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",56) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{437,x,y,z}) --others setElementData(vehCol,"fuel",10) end for i,veh in ipairs(fisherBootSpawns) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(453,x,y,z) vehCol = createColSphere(x,y,z,4) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",30) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{453,x,y,z}) --others setElementData(vehCol,"fuel",10) end for i,veh in ipairs(bikeSpawns) do local x,y,z = veh[1],veh[2],veh[3] veh = createVehicle(509,x,y,z) vehCol = createColSphere(x,y,z,2) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",0) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{509,x,y,z}) --others setElementData(vehCol,"fuel",0) end for i,tent in ipairs(tentSpawns) do local x,y,z = tent[1],tent[2],tent[3] tent = createObject(3243,x,y,z-1) setObjectScale(tent,0.5) tentCol = createColSphere(x,y,z,4) attachElements ( tentCol, tent, 0, 0, 0 ) setElementData(tentCol,"parent",tent) setElementData(tent,"parent",tentCol) setElementData(tentCol,"tent",true) setElementData(tentCol,"vehicle",true) setElementData(tentCol,"MAX_Slots",30) end --Maverik local item_id = math.random(table.size(maverikSpawns)) local x,y,z = maverikSpawns[item_id][1],maverikSpawns[item_id][2],maverikSpawns[item_id][3] hunter = createVehicle(487,x,y,z) vehCol = createColSphere(x,y,z,4) attachElements ( vehCol, hunter, 0, 0, 0 ) setElementData(vehCol,"parent",hunter) setElementData(hunter,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",10) --Engine + Tires local tires,engine = getVehicleAddonInfos (487) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{487,x,y,z}) --others setElementData(vehCol,"fuel",10) --Police Maverik local item_id = math.random(table.size(hunterSpawns)) local x,y,z = hunterSpawns[item_id][1],hunterSpawns[item_id][2],hunterSpawns[item_id][3] hunter = createVehicle(497,x,y,z) vehCol = createColSphere(x,y,z,4) attachElements ( vehCol, hunter, 0, 0, 0 ) setElementData(vehCol,"parent",hunter) setElementData(hunter,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",10) --Engine + Tires local tires,engine = getVehicleAddonInfos (497) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{497,x,y,z}) --others setElementData(vehCol,"fuel",10) end --spawnDayZVehicles() function spawnVehiclePack (ps,cmd) if getElementData(ps,"admin") then spawnDayZVehicles() end end addCommandHandler("svp",spawnVehiclePack) function notifyAboutExplosion() local col = getElementData(source,"parent") local x1,y1,z1 = getElementPosition(source) id,x,y,z = getElementData(col,"spawn")[1],getElementData(col,"spawn")[2],getElementData(col,"spawn")[3],getElementData(col,"spawn")[4] setTimer(respawnDayZVehicle,1800000,1,id,x,y,z,source,col,getElementData(col,"MAX_Slots")) setElementData(col,"deadVehicle",true) setElementData(source,"isExploded",true) createExplosion (x1+4,y1+1,z1,4) createExplosion (x1+2,y1-4,z1,4) createExplosion (x1-1,y1+5,z1,4) createExplosion (x1-4,y1,z1-2,4) end addEventHandler("onVehicleExplode", getRootElement(), notifyAboutExplosion) function respawnVehiclesInWater (vehiclesInWater) for i,veh in ipairs(vehiclesInWater) do if getElementModel(veh) == 453 then break end local col = getElementData(veh,"parent") id,x,y,z = getElementData(col,"spawn")[1],getElementData(col,"spawn")[2],getElementData(col,"spawn")[3],getElementData(col,"spawn")[4] respawnDayZVehicle(id,x,y,z,veh,col,getElementData(col,"MAX_Slots")) end end addEvent("respawnVehiclesInWater",true) addEventHandler("respawnVehiclesInWater",getRootElement(),respawnVehiclesInWater) function checkVehicleInWater () local randomPlayer = getRandomPlayer() triggerClientEvent(randomPlayer,"checkVehicleInWaterClient",randomPlayer) end setTimer(checkVehicleInWater,1800000,0) --1800000 function respawnDayZVehicle(id,x,y,z,veh,col,max_slots) if id == 497 then local item_id = math.random(table.size(hunterSpawns)) x,y,z = hunterSpawns[item_id][1],hunterSpawns[item_id][2],hunterSpawns[item_id][3] end if id == 487 then local item_id = math.random(table.size(maverikSpawns)) x,y,z = maverikSpawns[item_id][1],maverikSpawns[item_id][2],maverikSpawns[item_id][3] end destroyElement(veh) destroyElement(col) veh = createVehicle(id,x,y,z+1) vehCol = createColSphere(x,y,z,4) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",max_slots) --Engine + Tires local tires,engine = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tire_inVehicle",math.random(0,tires)) setElementData(vehCol,"Engine_inVehicle",math.random(0,engine)) --vehicle_indentifikation setElementData(vehCol,"spawn",{id,x,y,z}) --others setElementData(vehCol,"fuel",10) if id == 433 then for i,items in ipairs(lootItems["helicrashsides"]) do local randomNumber = math.random(1,10) if randomNumber == 5 then setElementData(vehCol,items[1],math.random(1,2)) end end elseif id == 470 then for i,items in ipairs(lootItems["helicrashsides"]) do local randomNumber = math.random(1,10) if randomNumber == 5 then setElementData(vehCol,items[1],math.random(1,2)) end end end end vehicleAddonsInfo = { {422,4,1}, {470,4,1}, {468,2,1}, {433,6,1}, {437,6,1}, {509,0,0}, {487,0,1}, {497,0,1}, {453,0,1}, } vehicleFuelInfo = { {422,0.25}, {470,0.1}, {468,0.1}, {433,0.5}, {437,0.5}, {509,0}, {487,0.25}, {497,0.25}, {453,0.1}, } function getVehicleAddonInfos (id) for i,veh in ipairs(vehicleAddonsInfo) do if veh[1] == id then return veh[2],veh[3] end end end function onPlayerEnterDayzVehicle(veh,seat) local col = getElementData(veh,"parent") local id = getElementModel(veh) if not seat == 1 then return end local tires,engine = getVehicleAddonInfos (id) setVehicleEngineState ( veh, false ) setElementData(veh,"maxfuel",getVehicleMaxFuel(col)) setElementData(veh,"needtires",tires) setElementData(veh,"needengines",engine) if ((getElementData(col,"Tire_inVehicle") or 0) < tonumber(tires)) then setVehicleEngineState ( veh, false ) return end if ((getElementData(col,"Engine_inVehicle") or 0) < tonumber(engine)) then setVehicleEngineState ( veh, false ) return end if (getElementData(col,"fuel") or 0) <= 1 then if not getElementModel(veh) == 509 then triggerClientEvent (source, "displayClientInfo", source,"Vehicle","There is no fuel in this Vehicle",22,255,0) setVehicleEngineState ( veh, false ) return end end setVehicleEngineState ( veh, true ) bindKey(source,"k","down",setEngineStateByPlayer) outputChatBox("Press 'k' to change the engine status.",source) end addEventHandler ( "onPlayerVehicleEnter", getRootElement(), onPlayerEnterDayzVehicle ) function onPlayerExitDayzVehicle(veh,seat) if seat == 0 then setVehicleEngineState ( veh, false ) unbindKey(source,"k","down",setEngineStateByPlayer) end end addEventHandler ( "onPlayerVehicleExit", getRootElement(), onPlayerExitDayzVehicle ) function getVehicleFuelRemove (id) for i,veh in ipairs(vehicleFuelInfo) do if veh[1] == id then return veh[2] end end end function setVehiclesFuelPerMinute () for i,veh in ipairs(getElementsByType("vehicle")) do if getVehicleEngineState(veh) == true then if getElementData(getElementData(veh,"parent"),"fuel") >= 0 then setElementData(getElementData(veh,"parent"),"fuel",getElementData(getElementData(veh,"parent"),"fuel")-getVehicleFuelRemove(getElementModel(veh))) else setVehicleEngineState ( veh, false ) end end end end setTimer(setVehiclesFuelPerMinute,20000,0) function isVehicleReadyToStart2 (veh) if getElementData(getElementData(veh,"parent"),"fuel") >= 1 then local tires,engine = getVehicleAddonInfos (getElementModel(veh)) if (getElementData(getElementData(veh,"parent"),"Tire_inVehicle") or 0) > tonumber(tires) and (getElementData(getElementData(veh,"parent"),"Engine_inVehicle") or 0) > tonumber(engine) then setVehicleEngineState ( veh, true ) end end setTimer(isVehicleReadyToStart2,1000,1,veh) end repairTimer = {} function repairVehicle (veh) if repairTimer[veh] then triggerClientEvent (source, "displayClientInfo", source,"Vehicle",getVehicleName(veh).." is already going to be repaired",255,22,0) return end local health = math.floor(getElementHealth(veh)) repairTimer[veh] = setTimer(fixVehicleDayZ,(1000-health)*120,1,veh,source) setElementFrozen (veh,true) setElementData(veh,"repairer",source) setElementData(source,"repairingvehicle",veh) setPedAnimation (source,"SCRATCHING","sclng_r",nil,true,false) triggerClientEvent (source, "displayClientInfo", source,"Vehicle","You started repairing "..getVehicleName(veh),22,255,0) end addEvent("repairVehicle",true) addEventHandler("repairVehicle",getRootElement(),repairVehicle) function fixVehicleDayZ(veh,player) setElementHealth(veh,1000) fixVehicle (veh) setPedAnimation(player,false) setElementFrozen (veh,false) repairTimer[veh] = nil setElementData(veh,"repairer",nil) setElementData(player,"repairingvehicle",nil) triggerClientEvent (player, "displayClientInfo", player,"Vehicle","You finished repairing "..getVehicleName(veh),22,255,0) end function stopFixxingWhileMoving() local veh = getElementData(source,"repairingvehicle") setPedAnimation(source) setElementFrozen (veh,false) setElementData(veh,"repairer",nil) setElementData(source,"repairingvehicle",nil) triggerClientEvent (source, "displayClientInfo", source,"Vehicle","You stopped repairing "..getVehicleName(veh),255,22,0) killTimer(repairTimer[veh]) repairTimer[veh] = nil end addEvent("onClientMovesWhileAnimation",true) addEventHandler("onClientMovesWhileAnimation",getRootElement(),stopFixxingWhileMoving) function debugFixxing() for i,veh in ipairs(getElementsByType("vehicle")) do if getElementData(veh,"repairer") == source then outputDebugString("Vehicle repairer disconnected - destgroyed tables") killTimer(repairTimer[veh]) setElementFrozen (veh,false) repairTimer[veh] = nil setElementData(veh,"repairer",nil) end end end addEventHandler("onPlayerQuit",getRootElement(),debugFixxing) function setEngineStateByPlayer (playersource) local veh = getPedOccupiedVehicle (playersource) setVehicleEngineState (veh, not getVehicleEngineState(veh)) if getElementData(getElementData(veh,"parent"),"fuel") <= 0 then return end if getVehicleEngineState(veh) == true then triggerClientEvent (playersource, "displayClientInfo", playersource,"Vehicle","You started the Engine.",22,255,0) else triggerClientEvent (playersource, "displayClientInfo", playersource,"Vehicle","You stopped the Engine. ",255,22,0) end end client side: --- Tabla para los carros syntax = id,precio local motoss = { {487, 1}; --Add More vehicles, Syntax: {ID, PRICE} {509, 40000}; {481, 45000}; {462, 50000}; {521, 150000}; {463, 90000}; {510, 70000}; {470, 1}; {461, 1}; {448, 50000}; {468, 1}; {586, 17000} } --- Its decompiled For your Use, Please Comment, Rate! lagUII = guiCreateWindow(24, 145, 215, 372, "Shop", false) guiWindowSetSizable(lagUII, false) guiSetAlpha(lagUII, 0.84) guiSetProperty(lagUII, "CaptionColour", "FFFD0000") gridMotos = guiCreateGridList(0.04, 0.10, 0.91, 0.81, true, lagUII) guiGridListSetSelectionMode(gridMotos,0) nombres = guiGridListAddColumn(gridMotos, "Vehiculos", 0.5) precios = guiGridListAddColumn(gridMotos, "Precios", 0.5) compros = guiCreateButton(11, 341, 92, 18, "Comprar", false, lagUII) guiSetFont(compros, "default-bold-small") guiSetProperty(compros, "NormalTextColour", "FF031AFB") cierras = guiCreateButton(113, 341, 92, 18, "Cerrar", false, lagUII) guiSetFont(cierras, "default-bold-small") guiSetProperty(cierras, "NormalTextColour", "FF05F811") guiSetVisible(lagUII, false) for i,v in ipairs (motoss) do local carNames = getVehicleNameFromModel (v[1]) local row = guiGridListAddRow (gridMotos) guiGridListSetItemText (gridMotos, row, 1, carNames, false, true) guiGridListSetItemText (gridMotos, row, 2, tostring(v[2]), false, true) end function onClientCarBuyy (button, state, absoluteX, absoluteYe) if (source == compros) then guiSetVisible (lagUII, false) showCursor (false) if (guiGridListGetSelectedItem (gridMotos)) then local carNames = guiGridListGetItemText (gridMotos, guiGridListGetSelectedItem (gridMotos), 1) local carIDs = getVehicleModelFromName (carNames) local carCosts = guiGridListGetItemText (gridMotos, guiGridListGetSelectedItem (gridMotos), 2) triggerServerEvent ("carBuyy", getLocalPlayer(), carIDs, carCosts, carNames) end end end addEventHandler ("onClientGUIClick", compros, onClientCarBuyy) --- function closeShops() if guiGetVisible(lagUII) then guiSetVisible(lagUII,false) showCursor(false) end end addEventHandler ("onClientGUIClick", cierras, closeShops, false) function abrirsr( ) guiSetVisible (lagUII, true) guiSetVisible (lagUI, false) showCursor(true) end addEvent( "AbrirrSids", true ) addEventHandler( "AbrirrSids", localPlayer, abrirsr ) --[[ #---------------------------------------------------------------# ----* DayZ MTA Script menu_client.lua *---- ----* This Script is owned by Marwin, you are not allowed to use or own it. ----* Owner: Marwin W., Germany, Lower Saxony, Otterndorf ----* Skype: xxmavxx96 ----* *---- #---------------------------------------------------------------# ]] --Create Scroll Menü local spalten = {} local spalteGuiImage = {} local spalteGuiText = {} local optionsTable = { ["player"] = { {"Give Painkillers"}, {"Give Bandage"}, {"Give Morphine"}, }, } spalten[1] = "" spalten[2] = "" spalten[3] = "" spalten[4] = "" spalteGuiImage[1] = guiCreateStaticImage(0,0.45,0.1,0.025,"images/scrollmenu_1.png",true) spalteGuiImage[2] = guiCreateStaticImage(0,0.475,0.1,0.025,"images/scrollmenu_1.png",true) spalteGuiImage[3] = guiCreateStaticImage(0,0.5,0.1,0.025,"images/scrollmenu_1.png",true) spalteGuiImage[4] = guiCreateStaticImage(0,0.525,0.1,0.025,"images/scrollmenu_1.png",true) spalteGuiText[1] = guiCreateLabel(0.05,0.05,0.995,0.95,spalten[1],true,spalteGuiImage[1]) spalteGuiText[2] = guiCreateLabel(0.05,0.05,0.995,0.95,spalten[2],true,spalteGuiImage[2]) spalteGuiText[3] = guiCreateLabel(0.05,0.05,0.995,0.95,spalten[3],true,spalteGuiImage[3]) spalteGuiText[4] = guiCreateLabel(0.05,0.05,0.995,0.95,spalten[4],true,spalteGuiImage[4]) --guiLabelSetColor (spalteGuiText[1],50,255,50) guiSetVisible(spalteGuiImage[1],false) guiSetVisible(spalteGuiImage[2],false) guiSetVisible(spalteGuiImage[3],false) guiSetVisible(spalteGuiImage[4],false) ------------------------------------------------------------------------------ --MENU function showClientMenuItem(arg1,arg2,arg3,arg4) local number = 0 if arg1 == "Take" then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Take "..arg2) if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem",arg2) end if arg1 == "stop" then disableMenu() refreshLoot(false) end if arg1 == "Helicrashsite" then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Gear (Helicrash)") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","helicrashsite") end if arg1 == "Hospitalbox" then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Gear (Hospitalbox)") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","hospitalbox") end if arg1 == "Vehicle" then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Gear ("..arg2..")") guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) setElementData(spalteGuiText[number],"usedItem","vehicle") if getElementData(getElementData(arg3,"parent"),"tent") then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Remove Tent") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","tent") return end --2 if getElementHealth(arg3) < 1000 and getElementHealth(arg3) >= 50 and getElementData(getLocalPlayer(),"Toolbox") >= 1 then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Repair ("..arg2..")") setElementData(spalteGuiText[number],"usedItem","repairvehicle") end end if arg1 == "Player" then --1 if getElementData(arg2,"bleeding") > 0 and getElementData(getLocalPlayer(),"Bandage") >= 1 then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Give Bandage") guiLabelSetColor (spalteGuiText[1],50,255,50) setElementData(spalteGuiText[1],"markedMenuItem",true) setElementData(spalteGuiText[number],"usedItem","bandage") end if getElementData(arg2,"blood") < 11900 and getElementData(getLocalPlayer(),"Blood Bag") >= 1 then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Give Blood Pack") setElementData(spalteGuiText[number],"usedItem","giveblood") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end end end if arg1 == "Dead" then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Gear ("..arg2..")") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","dead") number = number+1 setElementData(spalteGuiText[number],"usedItem","deadreason") guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Check Body") end if arg1 == "Fireplace" then if getElementData(getLocalPlayer(),"Raw Meat") >= 1 then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Cook Meat") guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) setElementData(spalteGuiText[number],"usedItem","fireplace") end end if arg1 == "Patrol" then if getElementData(getLocalPlayer(),"Empty Patrol Canister") >= 1 then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Refill (Empty Patrol Canister)") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","patrolstation") end end if arg1 == "Wirefence" then if getElementData(getLocalPlayer(),"Toolbox") >= 1 then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Remove Wirefence") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","wirefence") end end if arg1 == "Gear" then number = number+1 guiSetVisible(spalteGuiImage[number],true) guiSetText(spalteGuiText[number],"Gear") if number == 1 then guiLabelSetColor (spalteGuiText[number],50,255,50) setElementData(spalteGuiText[number],"markedMenuItem",true) end setElementData(spalteGuiText[number],"usedItem","itemloot") end end addEvent("showClientMenuItem",true) addEventHandler("showClientMenuItem",getLocalPlayer(),showClientMenuItem) function PlayerScrollMenu (key,keyState,arg) if ( keyState == "down" ) then if not guiGetVisible(spalteGuiImage[2]) then return end if arg == "up" then if getElementData(spalteGuiText[1],"markedMenuItem") then setElementData(spalteGuiText[1],"markedMenuItem",false) setElementData(spalteGuiText[2],"markedMenuItem",true) guiLabelSetColor (spalteGuiText[2],50,255,50) guiLabelSetColor (spalteGuiText[1],255,255,255) elseif getElementData(spalteGuiText[2],"markedMenuItem") then setElementData(spalteGuiText[2],"markedMenuItem",false) setElementData(spalteGuiText[1],"markedMenuItem",true) guiLabelSetColor (spalteGuiText[1],50,255,50) guiLabelSetColor (spalteGuiText[2],255,255,255) end elseif arg == "down" then if getElementData(spalteGuiText[1],"markedMenuItem") then setElementData(spalteGuiText[1],"markedMenuItem",false) setElementData(spalteGuiText[2],"markedMenuItem",true) guiLabelSetColor (spalteGuiText[2],50,255,50) guiLabelSetColor (spalteGuiText[1],255,255,255) elseif getElementData(spalteGuiText[2],"markedMenuItem") then setElementData(spalteGuiText[2],"markedMenuItem",false) setElementData(spalteGuiText[1],"markedMenuItem",true) guiLabelSetColor (spalteGuiText[1],50,255,50) guiLabelSetColor (spalteGuiText[2],255,255,255) end end end end bindKey ( "mouse_wheel_up", "down", PlayerScrollMenu, "up" ) bindKey ( "mouse_wheel_down", "down", PlayerScrollMenu, "down" ) function disableMenu() guiSetVisible(spalteGuiImage[1],false) guiSetVisible(spalteGuiImage[2],false) guiSetVisible(spalteGuiImage[3],false) guiSetVisible(spalteGuiImage[4],false) setElementData(spalteGuiText[1],"markedMenuItem",false) setElementData(spalteGuiText[2],"markedMenuItem",false) setElementData(spalteGuiText[3],"markedMenuItem",false) setElementData(spalteGuiText[4],"markedMenuItem",false) setNewbieInfo (false,"","") end addEvent("disableMenu",true) addEventHandler("disableMenu",getLocalPlayer(),disableMenu) ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ --TAKE OBJECT FUNCTIONS function getPlayerInCol(tab) for theKey,thePlayer in ipairs(tab) do if thePlayer ~= getLocalPlayer() then return true end end return false end isInFirePlace = false function onPlayerTargetPickup (theElement) if theElement == getLocalPlayer() then if getElementData(source,"parent") == getLocalPlayer() then return end local player = getPlayerInCol(getElementsWithinColShape ( source, "player" )) if getPedOccupiedVehicle(getLocalPlayer()) then return end isInFirePlace = false setElementData(spalteGuiText[2],"markedMenuItem",false) setElementData(spalteGuiText[1],"markedMenuItem",true) guiLabelSetColor (spalteGuiText[1],50,255,50) guiLabelSetColor (spalteGuiText[2],255,255,255) if getElementData(source,"player") then showClientMenuItem("Player",getElementData(source,"parent")) setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",false) return end if player then return end if getElementData(source,"patrolstation") then showClientMenuItem("Patrol") setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",false) setNewbieInfo (true,"Patrolstation","Press '-' or 'middle-mouse' to refill a Canister.\n Required: Empty Patrol Canister",source) return end if getElementData(source,"wirefence") then showClientMenuItem("Wirefence") setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",false) setNewbieInfo (true,"Wirefence","Press '-' or 'middle-mouse' to remove the fence.\n Required: Toolbox",source) return end if getElementData(source,"fireplace") then showClientMenuItem("Fireplace") setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",false) setNewbieInfo (true,"Fireplace","Press '-' or 'middle-mouse' to cook meat.\n Required: Raw Meat",source) isInFirePlace = true return end if getElementData(source,"deadman") then showClientMenuItem("Dead",getElementData(source,"playername")) setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",true) setElementData(getLocalPlayer(),"lootname","Gear ("..getElementData(source,"playername")..")") setNewbieInfo (true,"Gear","Press J to open the Gear",source) return end if getElementData(source,"item") then showClientMenuItem("Take",getElementData(source,"item")) setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",false) setNewbieInfo (true,"Item pickup","Press '-' or 'middle-mouse' to pick up the item.",source) return end if getElementData(source,"helicrash") then showClientMenuItem("Helicrashsite","helicrash") setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",true) setElementData(getLocalPlayer(),"lootname","Gear (Helicrash)") setNewbieInfo (true,"Gear","Press J to open the Gear",source) return end if getElementData(source,"hospitalbox") then showClientMenuItem("Hospitalbox","hospitalbox") setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",true) setElementData(getLocalPlayer(),"lootname","Gear (Hospitalbox)") setNewbieInfo (true,"Gear","Press J to open the Hospitalbox",source) return end if getElementData(source,"vehicle") then if not getElementData(source,"deadVehicle") then showClientMenuItem("Vehicle",(getVehicleName(getElementData(source,"parent")) or "Tent"),getElementData(source,"parent")) setElementData(getLocalPlayer(),"currentCol",source) setElementData(getLocalPlayer(),"loot",true) setElementData(getLocalPlayer(),"lootname","Gear ("..(getVehicleName(getElementData(source,"parent")) or "Tent")..")") setNewbieInfo (true,"Gear","Press J to open the Gear",source) return end end if getElementData(source,"itemloot") then showClientMenuItem("Gear") setElementData(getLocalPlayer(),"loot",true) setElementData(getLocalPlayer(),"lootname","Gear") setElementData(getLocalPlayer(),"currentCol",source) setNewbieInfo (true,"Gear","Press J to open the Gear",source) return end showClientMenuItem("stop") end end addEventHandler("onClientColShapeHit",getRootElement(),onPlayerTargetPickup) function onPlayerTargetPickup (theElement) if theElement == getLocalPlayer() then local players = getElementsWithinColShape ( source, "player" ) if players == getLocalPlayer() then --[[return ]]end showClientMenuItem("stop") setElementData(getLocalPlayer(),"loot",false) setElementData(getLocalPlayer(),"currentCol",false) setNewbieInfo (false,"","") isInFirePlace = false end end addEventHandler("onClientColShapeLeave",getRootElement(),onPlayerTargetPickup) --Newbie Infos local screenWidth, screenHeight = guiGetScreenSize() local newbieShow = false local newbieHead = "-" local newbieText = "-" local newbiePosition = 0,0,0 function setNewbieInfo (show,head,text,element) newbieShow = show newbieHead = head newbieText = text newbiePosition = element end addEventHandler("onClientRender", getRootElement(), function() if newbieShow == false then return end local x,y,z = getElementPosition(newbiePosition) local x,y = getScreenFromWorldPosition (x,y,z) local length = dxGetTextWidth(newbieText,1,"default-bold") dxDrawRectangle ( x-length/2-screenWidth*0.01,y, screenWidth*0.02+length, screenHeight*0.1, tocolor (33,33,33,100) ) dxDrawingColorText(newbieHead,x-length/2-screenWidth*0.01,y, x+length/2+screenWidth*0.01, y+screenHeight*0.03, tocolor(22,255,22,120),0.5, 1.1, "default-bold", "center", "center") dxDrawingColorText(newbieText,x-length/2-screenWidth*0.01,y+screenHeight*0.03, x+length/2+screenWidth*0.01, y+screenHeight*0.07, tocolor(255,255,255,120),0.5, 1, "default-bold", "center", "center") end ) function fireRaiseTemperature () if isInFirePlace then if getElementData(getLocalPlayer(),"temperature") <= 38 then setElementData(getLocalPlayer(),"temperature",getElementData(getLocalPlayer(),"temperature")+0.25) end end end setTimer(fireRaiseTemperature,10000,0) ------------------------------------------------------------------------------ unbindKey("mouse3","both") function onPlayerPressMiddleMouse (key,keyState) if ( keyState == "down" ) then if not guiGetVisible(spalteGuiText[1]) then return end local itemName = getMenuMarkedItem() if itemName == "helicrashsite" then local col = getElementData(getLocalPlayer(),"currentCol") local gearName = "Gear (Helicrash)" refreshLoot(col,gearName) showInventoryManual() return end if itemName == "itemloot" then local col = getElementData(getLocalPlayer(),"currentCol") local gearName = "Gear" refreshLoot(col,gearName) showInventoryManual() return end if itemName == "wirefence" then local col = getElementData(getLocalPlayer(),"currentCol") local gearName = "Remove Wirefence" triggerServerEvent("removeWirefence",getLocalPlayer(),getElementData(col,"parent")) disableMenu() return end if itemName == "hospitalbox" then local col = getElementData(getLocalPlayer(),"currentCol") local gearName = "Gear (Hospitalbox)" refreshLoot(col,gearName) showInventoryManual() return end if itemName == "vehicle" then local col = getElementData(getLocalPlayer(),"currentCol") local gearName = "Gear ("..(getVehicleName(getElementData(col,"parent")) or "Tent")..")" refreshLoot(col,gearName) showInventoryManual() return end if itemName == "repairvehicle" then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("repairVehicle",getLocalPlayer(),getElementData(col,"parent")) disableMenu() return end if itemName == "tent" then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("removeTent",getLocalPlayer(),getElementData(col,"parent")) disableMenu() return end if itemName == "fireplace" then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("addPlayerCookMeat",getLocalPlayer()) disableMenu() return end if itemName == "bandage" then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("onPlayerGiveMedicObject",getLocalPlayer(),itemName,getElementData(col,"parent")) disableMenu() return end if itemName == "giveblood" then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("onPlayerGiveMedicObject",getLocalPlayer(),itemName,getElementData(col,"parent")) disableMenu() return end if itemName == "dead" then local col = getElementData(getLocalPlayer(),"currentCol") local gearName = "Gear ("..getElementData(col,"playername")..")" refreshLoot(col,gearName) showInventoryManual() return end if itemName == "deadreason" then local col = getElementData(getLocalPlayer(),"currentCol") outputChatBox(getElementData(col,"deadreason"),255,255,255,true) return end if itemName == "patrolstation" then local col = getElementData(getLocalPlayer(),"currentCol") setElementData(getLocalPlayer(),"Empty Patrol Canister",getElementData(getLocalPlayer(),"Empty Patrol Canister")-1) setElementData(getLocalPlayer(),"Full Patrol Canister",(getElementData(getLocalPlayer(),"Full Patrol Canister") or 0)+1) triggerEvent ("displayClientInfo",getLocalPlayer(),"Patrolstation","You filled your Patrol Canister up",22,255,0) disableMenu() return end if isToolbeltItem(itemName) then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("onPlayerTakeItemFromGround",getLocalPlayer(),itemName,col) disableMenu() return end if itemName == "Small Backpack" or itemName == "Alice Backpack" or itemName == "Coyote Backpack" then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("onPlayerTakeItemFromGround",getLocalPlayer(),itemName,col) disableMenu() return end if getPlayerCurrentSlots() + getItemSlots(itemName) <= getPlayerMaxAviableSlots() then local col = getElementData(getLocalPlayer(),"currentCol") triggerServerEvent("onPlayerTakeItemFromGround",getLocalPlayer(),itemName,col) disableMenu() else startRollMessage2("Inventory", "Your Inventory is to full", 255, 22, 0 ) end end end bindKey ( "mouse3", "down", onPlayerPressMiddleMouse ) bindKey ( "-", "down", onPlayerPressMiddleMouse ) function getMenuMarkedItem() for i,guiItem in ipairs(spalteGuiText) do if getElementData(guiItem,"markedMenuItem") then return getElementData(guiItem,"usedItem") end end end function playerPressedKey(button, press) if (press) then if button == "w" or button == "a" or button == "s" or button == "d" then local anim,anim2 = getPedAnimation (getLocalPlayer()) if anim and anim == "SCRATCHING" and anim2 == "sclng_r" then triggerServerEvent("onClientMovesWhileAnimation",getLocalPlayer()) end end end end addEventHandler("onClientKey", root, playerPressedKey)