17 Ekim 2018, 07:32:27

Gönderen Konu: [YARDIM] Loader Sistem  (Okunma sayısı 488 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

DogukanUCAN

  • Acemi Üye
  • *
  • İleti: 122
  • Batmaz Gaming
[YARDIM] Loader Sistem
« : 10 Haziran 2017, 17:05:06 »
Alttaki loader sistemi tüm ekran boyutlarına uygun gelecek şekilde ayarlayabilirmisiniz.
NOT: Düzenleme yaparak ekranın ortasına alıyorum diğer ekran çözünürlüklerinde ortada olmuyor.
Kod: Lua
  1. local x, y              = guiGetScreenSize();
  2. local h                 = 32;
  3. local rot               = 0;
  4. local exists    = {};
  5.  
  6. local mods;
  7.  
  8. local function downloadMods()
  9.         for i, v in ipairs (mods) do
  10.                 local file = v.file;
  11.                 downloadFile (file);
  12.         end
  13. end    
  14.  
  15. function table.find (tbl, index, value)
  16.         for i, v in pairs (tbl) do
  17.                 if v[index] == value then
  18.                         return i;
  19.                 end
  20.         end
  21.         return false;
  22. end    
  23.  
  24. addEvent ("loader.request", true);
  25. addEventHandler ("loader.request", root,
  26.         function (tbl)
  27.                 if tbl then
  28.                         mods = tbl;
  29.                         downloadMods();
  30.                 end
  31.         end
  32. );
  33.  
  34. addEventHandler ("onClientResourceStart", resourceRoot,
  35.         function ()
  36.                 triggerServerEvent ("loader.onload", localPlayer);
  37.                 addEventHandler ("onClientRender", root, drawLoader);
  38.         end
  39. );
  40.  
  41. addEventHandler ("onClientFileDownloadComplete", root,
  42.         function (name, success)
  43.                 if ( source == resourceRoot ) then
  44.                         if success then
  45.                                 local index = table.find (mods, "file", name);
  46.                                 if index then
  47.                                         exists[name] = true;
  48.                                         -- downloadFile (name);
  49.                                         local model = mods[index].model;
  50.                                         if name:find (".dff") then
  51.                                                 local dff = engineLoadDFF (name)
  52.                                                 engineReplaceModel (dff, model);
  53.                                         elseif name:find (".txd") then
  54.                                                 local txd = engineLoadTXD (name);
  55.                                                 engineImportTXD(txd, model);
  56.                                         elseif name:find (".col") then
  57.                                                 local col = engineLoadCOL (name);
  58.                                                 engineReplaceCOL (col, model);
  59.                                         end    
  60.                                         tick = getTickCount()+2000;
  61.                                 end    
  62.                         end
  63.                 end
  64.         end
  65. );     
  66.  
  67. function drawLoader ()
  68.         if not mods then return; end
  69.         if next (mods) then
  70.                 rot = rot + 1;
  71.                 local count = 0;
  72.                 for _ in pairs (exists) do
  73.                         count = count + 1;
  74.                 end
  75.                
  76.                 local progress = count.."/"..#mods.." (%"..math.ceil((count/#mods)*100)..")";
  77.                
  78.                 if count == #mods then
  79.                         if getTickCount() > tick then
  80.                                 removeEventHandler ("onClientRender", root, drawLoader);
  81.                                 return;
  82.                         end    
  83.                 end
  84.                
  85.                 local rx, ry, rw, rh = 0, y-h, x/10, h;
  86.                 dxDrawImage (rx + 3, ry-4, 42, 42, "icon.png", rot, 0, 0);
  87.                 addOutlines (rx, ry, rw, rh, tocolor (150, 150, 150, 75), 2);
  88.                 dxDrawRectangle(rx, ry, rw, rh, tocolor(0, 0, 0, 125), false);
  89.                 dxDrawText (progress, rx + 42, ry, rw, (y-h) + h, tocolor(255, 255, 255, 255), 1.00, "default", "center", "center");
  90.         end    
  91. end
  92.  
  93. function addOutlines(x, y, width, height, lineColor, lineSize, postGUI)
  94.     dxDrawLine(x - 1, (y - lineSize), x - 1, y + height + (lineSize - 1), lineColor, lineSize, postGUI); --left
  95.     dxDrawLine(x + width, (y) - 1, (x) - 1, (y) - 1, lineColor, lineSize, postGUI); -- top
  96.     dxDrawLine((x) - 1, y + height, x + width, y + height, lineColor, lineSize, postGUI); -- bottom
  97.     dxDrawLine(x + width, y - lineSize, x + width, y + height + (lineSize - 1), lineColor, lineSize, postGUI); -- right
  98. end
  99.  
 

MTASA-TURK | Türkiye'nin En Güncel MTA Platformu

[YARDIM] Loader Sistem
« : 10 Haziran 2017, 17:05:06 »

DogukanUCAN

  • Acemi Üye
  • *
  • İleti: 122
  • Batmaz Gaming
Ynt: [YARDIM] Loader Sistem
« Yanıtla #1 : 18 Haziran 2017, 14:01:14 »
Yardımcı olabilecek yok mu şuan kullandığım ekran boyutu 1366 X 768 x 32

Resim:
Spoiler for Hiden:
 

Rüzgar

  • Acemi Üye
  • *
  • İleti: 158
Ynt: [YARDIM] Loader Sistem
« Yanıtla #2 : 18 Haziran 2017, 15:37:41 »
Çok özelse özelden at doğukan. sana yardımcı oluruz
 

DogukanUCAN

  • Acemi Üye
  • *
  • İleti: 122
  • Batmaz Gaming
Ynt: [YARDIM] Loader Sistem
« Yanıtla #3 : 18 Haziran 2017, 15:48:35 »
Kişisel ileti gönderilecek alanın dolu atamıyorum sana.
 

Rambo

  • Ramazan Sert
  • Acemi Üye
  • *
  • İleti: 192
  • Cesareti İle Yaşamayan Esareti İle Ölür
Ynt: [YARDIM] Loader Sistem
« Yanıtla #4 : 18 Haziran 2017, 17:41:15 »
Ortalamak kötü görünür sağ alta veya sol alta al daha iyi olur.
 

DogukanUCAN

  • Acemi Üye
  • *
  • İleti: 122
  • Batmaz Gaming
Ynt: [YARDIM] Loader Sistem
« Yanıtla #5 : 18 Haziran 2017, 18:14:30 »
Linkleri Görebilmek İçin Kayıt Olun veya Giriş Yapın
Çok özelse özelden at doğukan. sana yardımcı oluruz

Skype adresini verirsen oradan atabilirim.

Linkleri Görebilmek İçin Kayıt Olun veya Giriş Yapın
Ortalamak kötü görünür sağ alta veya sol alta al daha iyi olur.

MB dolduktan sonra kayboluyor saten bence sıkıntı olmaz.
 

MTASA-TURK | Türkiye'nin En Güncel MTA Platformu

Ynt: [YARDIM] Loader Sistem
« Yanıtla #5 : 18 Haziran 2017, 18:14:30 »

Rüzgar

  • Acemi Üye
  • *
  • İleti: 158
Ynt: [YARDIM] Loader Sistem
« Yanıtla #6 : 18 Haziran 2017, 18:22:27 »
Kod: Lua
  1. local x, y = guiGetScreenSize()
  2. rx,ry = 1366,768
  3. (xKordinat/rx)*x, (yKordinat/ry)*y, (Uzunluk/rx)*x, (Genislik/ry)*y
 

DogukanUCAN

  • Acemi Üye
  • *
  • İleti: 122
  • Batmaz Gaming
Ynt: [YARDIM] Loader Sistem
« Yanıtla #7 : 18 Haziran 2017, 19:19:03 »
Teşekkürler Konu Kilit.
 
Mesajı Beğenenler: Rüzgar

Narkoz

  • Kurucu
  • *
  • İleti: 527
  • SH Gaming
Ynt: [YARDIM] Loader Sistem
« Yanıtla #8 : 18 Haziran 2017, 20:05:22 »
Konu sahibi isteği üzerine konu kilit.