XJMLN
Members-
Posts
27 -
Joined
-
Last visited
Everything posted by XJMLN
-
Hi, is there any way to get (minimap) positons (gui)? I wanna create a images around the radar but on all resoultions radar is in another positions. Any solutions/functions?
-
you can use ipairs/pairs loop: for i,v in pairs(table) do if place == v then -- some code end end or just use table[index]
-
I can't do anything with that it's caused by that: https://bugs.mtasa.com/view.php?id=3168 Close please.
-
Yup, i use that version to get size of file on server , but now i need size from client file to show something like 60MB/120MB (50%). It's something weird because i use (probably) the same method from this resource and in that resource it works perfectly..
-
I can't rename file while downloading it in the same time
-
Really? Just look in the code, lol but ok, I must open file to get the actual size of it.
-
Hi, I tried to use fileOpen (c-side) when downloadFile is started, but it doesn't work in db3: Bad usage @ 'fileOpen' [unable to load file 'dff/vehicles/542.dff'] etc. but file is in this dir. Someone maybe know where problem is? function replac_getAllSize(d) local size = 0 for i,v in ipairs(d) do local t local t2 if v[2] == 1 then t = "txd/vehicles/"..v[1]..".txd" t2 = "dff/vehicles/"..v[1]..".dff" elseif v[2] == 2 then t = "txd/skins/"..v[1]..".txd" t2 = "dff/skins/"..v[1]..".dff" end if fileExists(t2) then local openFile = fileOpen(t2,true) if openFile then size = size + fileGetSize(openFile) fileClose(openFile) else end else end if fileExists(t) then local openFile2 = fileOpen(t,true) if openFile2 then size = size + fileGetSize(openFile2) fileClose(openFile2) else end else end end return size/1048576 end function calcProg(w, p) if w and p then local w = w -2 local width = ((w*p)/100) return width end return 0 end function replac_render() if (not r.rendered) then return end local size = replac_getAllSize(r.installed) dxDrawRectangle(224, 512, 362, 36, tocolor(0, 0, 0, 209), false) dxDrawRectangle(230, 517, 350, 25, tocolor(255, 255, 255, 255), false) local progress = ((size*100)/r.sizeAll) local x,y,w,h = (230/800)*sw, (517/600)*sh, (350/800)*sw, (25/600)*sh local width = calcProg(w,progress) dxDrawRectangle(x,y,width,h, tocolor(104, 215, 89, 255), false) dxDrawText("Trwa pobieranie "..string.format("%.02f",size).."MB/"..string.format("%.02f",r.sizeAll).."MB.. ("..math.floor(progress).."%)", 230, 517, 580, 542, tocolor(0, 0, 0, 254), 1.00, "clear", "center", "center", false, false, false, false, false) end function replac_applyChanges(installed,uninstalled) r.rendered = true r.sizeAll = 0 for i,v in ipairs(installed) do if v[2] == 1 then t = "vehicles" elseif v[2] == 2 then t = "skins" end r.sizeAll = r.sizeAll + v[3] local txd = downloadFile("txd/"..t.."/"..v[1]..".txd") local dff = downloadFile("dff/"..t.."/"..v[1]..".dff") end r.installed = installed addEventHandler("onClientRender",root,replac_render) end
-
Code work, check is your backup resource where you have this code have a ACL to copyResource.
-
Thank you for all.
-
Your code work good, but blip is showing on top left corner. How i can move that there: http://i.imgur.com/ipXmU1h.jpg?1 I tried this, but no reaction of change these values: local mapX,mapY = (sw - sw*1200/1920)/2,(sh - sh*600/1080)/2
-
How i can calculate this units, just like this? local sw,sh = guiGetScreenSize() x2,y2,z2 -- coords x2 =x2/sw y2 = y2/sh
-
But in this post you show how, from screen pos get world pos. I have the world pos and wanna get it to screen pos.
-
Hi, I wanna create a gui with minimap (like this), but i don't know how to calculate world position to screen position and show it on that map. I tried this: x2 =((x2 + 3000)/ 6000 *sw) y2 =((3000 - y2)/ 6000 *sh) But this show the wrong position for waypoint. Code: local sw,sh = guiGetScreenSize() local mw, mh = sw/1920, sh/1080 local t = {point=nil,pos=nil,map=false} t.gridlist = guiCreateGridList(mw*382, mh*281, mw*329, mh*530, false) t.gridlist_places = guiGridListAddColumn(t.gridlist, "Places", 0.9) guiSetVisible(t.gridlist,false) function travel_render() if not t.rendered then return end dxDrawImage((sw - sw*1200/1920)/2,(sh - sh*600/1080)/2,1200,600, "img/background.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) if t.map then dxDrawImage(t.pos[1],t.pos[2],32,32,"img/waypoint.png", 0,0,0, tocolor(255,255,255,255), false) end end function travel_fill(d) for i,v in ipairs(d) do local row = guiGridListAddRow(t.gridlist) guiGridListSetItemText(t.gridlist, row, t.gridlist_places, v.name, false, false) guiGridListSetItemData(t.gridlist, row, t.gridlist_places,v.tpPos) end end function travel_init() if (t.rendered) then removeEventHandler("onClientRender", root, travel_render) t.point = nil t.rendered = false guiSetVisible(t.gridlist,false) showCursor(false) guiGridListClear(t.gridlist) else guiGridListClear(t.gridlist) triggerServerEvent("travel_requestPlaces", localPlayer) t.rendered = true addEventHandler("onClientRender", root, travel_render) guiSetVisible(t.gridlist, true) showCursor(true) end end function interaction_fastTravel(args) if (not args.ped) then return end args.player = localPlayer local x,y,z = getElementPosition(args.player) local x2,y2,z2 = getElementPosition(args.ped) if (getDistanceBetweenPoints3D(x,y,z,x2,y2,z2)>2) then outputChatBox("You need to go closer.",255,0,0) return end t.point = args.ped travel_init() end function travel_updateBlip() local selRow = guiGridListGetSelectedItem(t.gridlist) if (selRow<0) then return end local pos = guiGridListGetItemData(t.gridlist, selRow, t.gridlist_places) local x2, y2, z2 = unpack(pos) x2 =((x2 + 3000)/ 6000 *sw) y2 =((3000 - y2)/ 6000 *sh) t.pos = {x2,y2} t.map = true end function travel_doTeleport() local selRow = guiGridListGetSelectedItem(t.gridlist) if (selRow<0) then return end local pos = guiGridListGetItemData(t.gridlist, selRow, t.gridlist_places) local x2, y2, z2 = unpack(pos) fadeCamera(false) travel_init() setElementFrozen(localPlayer,true) setTimer(function() setElementPosition(localPlayer,x2,y2,z2+1) setElementFrozen(localPlayer,false) fadeCamera(true) end,1500,1) end addEvent("travels_fillList", true) addEventHandler("travels_fillList", root,travel_fill) addEventHandler("onClientGUIClick", t.gridlist, travel_updateBlip) addEventHandler("onClientGUIDoubleClick", t.gridlist, travel_doTeleport) Anyone can help with this?
-
Okey, its work end code: addEventHandler("onClientGUIClick",g_e_login,test, true) function test () setTimer(setIndexInput,2000,1) end function setIndexInput(akcja) local tlogin = guiGetText(g_e_login) local plogin = guiGetText(g_e_password) local textLength = string.len(tlogin) if (textLength) > 0 then guiEditSetCaretIndex(g_e_login,textLength+1) else guiEditSetCaretIndex(g_e_login,1) end end Close.
-
function isMouseIn(psx,psy,pssx,pssy,abx,aby) if not isCursorShowing() then return end cx,cy=getCursorPosition() cx,cy=cx*sx,cy*sy if cx >= psx and cx <= psx+pssx and cy >= psy and cy <= psy+pssy then return true,cx,cy else return false end end if isMouseIn(here code from guiCreateEdit,"",true) then guiEditSetCaretIndex(g_e_login,1) end That be good? Or better idea is eventHandler onClientClick and then code from up? EDIT: I create that code, but when i click on editbox nothing happen ;/. addEventHandler("onClientGUIClicked",g_e_login,setIndexInput, false) addEventHandler("onClientGUIClicked",g_e_password,setIndexInput, false) function setIndexInput() local tlogin = guiGetText(g_e_login) local plogin = guiGetText(g_e_password) if source == g_e_login then local textLength = string.len(tlogin) if (textLength) > 0 then guiEditSetCaretIndex(source,textLength+1) outputChatBox("1") else setTimer(function() guiEditSetCaretIndex(source,1) end,500,1) end end if source == g_e_password then local textLength = string.len(plogin) if (textLength) > 0 then guiEditSetCaretIndex(source,textLength+1) outputChatBox("1") else guiEditSetCaretIndex(source,1) outputChatBox("1") end end end
-
On gif you can see what is doing when i click on edit, i think is bug or something block insert text to edit. ;( Edit: In GUIEditor editbox work fine, only in my code something is bad.
-
Still the same with guiSetInputEnabled.
-
Hi, i create panel login all works fine but is one small bug i cant insert any word to editbox. But if i'll keep LMB then i can entry word. Someone have that bug and fix it? function displayLoginPanel() showCursor(true) showChat(false) showPlayerHudComponent("all",false) guiSetInputMode("no_binds_when_editing") g_e_login = guiCreateEdit(sw*99/mw,sh*215/mh,sw*250/mw,sh*27/mh,"",false) end
-
Original: IP: mtasa://188.165.18.19:20060 https://i.gyazo.com/775c3d859fdc862cd2c ... 0b79fa.png Fakes: IP: mtasa://178.33.54.32:20392 IP: mtasa://80.72.47.182:20048 https://i.gyazo.com/7da8e0d6952b7be2239 ... 36bc0f.png They take my name and tag server and get players on that. Of course, my server was created first. Here's is video from my servers for confirmation: - The only thing that has changed is hosting, IP and address forum
-
Topic to close, Tosfera help me.
-
No, always content is 2x.
-
This function is triggered from c-side addEventHandler("onClientColShapeLeave", colMeta, function(el,md) if getElementType(el)~="vehicle" then return end local veh=getPedOccupiedVehicle(localPlayer) if veh and veh==el and getVehicleController(veh)==localPlayer then local vehicleP = getElementModel(veh) if ts then local czas=getTickCount()-ts local tczas=string.format("%.3fs", czas/1000) outputChatBox("Twój czas:".."\n"..tczas) local timeP = czas/1000 triggerServerEvent("registerPredkosc", resourceRoot, localPlayer, vehicleP, timeP) end triggerEvent("startStoper", root, false) ts=nil end end) I think, must add something like refresh the text before createElement('text')
-
Yes, if there is 3 content then 3x first, 3x second and then 1 new content.
-
This is the script to record(?) the time from the start line to the finish line, after crossing the finish line executes the up script, if only 1 player end this record is okay - the text is displayed right. But when next player - first the contents of the table is doubled. Screenshot maybe help u in explain ;d if there only 1 content in table - http://imgur.com/X5cUNH if there 2 content in table - http://imgur.com/2wKsYYU