17 Ekim 2018, 07:26:38

Gönderen Konu: [AÇIK KAYNAK] en iyi map bilgisi  (Okunma sayısı 209 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

sKyTurK

  • Yeni Üye
  • *
  • Default Avatar
  • İleti: 23
  • Kişisel blogum blogproje.com
    • Kişisel blogum
[AÇIK KAYNAK] en iyi map bilgisi
« : 21 Haziran 2017, 14:32:38 »
FFS sunucusundan esinlenerek yaptım.Admin oynanan haritada /verify yazarak haritayı veritabanına iyi map olarak kaydeder.Sonrasında her harita başladığında veritabanından iyi mapmı diye kontrol eder ve yazdırır.

Scripti çalıştırdıktan sonra ilk önce yapmanız gereken tüm haritaları veritabanına kaydetmekdir.
/verifyall yazıp ekliyoruz.Daha sonra haritalar oynanırken /verify yazarak o haritayı iyi haritaların arasına eklersiniz.


(ayrıca kodlardan yararlanarak güzel şeyler çıkarabilirsiniz.)

server.lua
Kod: Lua
  1. veritaban = dbConnect("sqlite","maps.db") -- sql veri tabanı oluşumu
  2. dbQuery(veritaban, "CREATE TABLE IF NOT EXISTS verifymaps(mapname TEXT, state INT)")
  3.  
  4. if veritaban then
  5.     outputDebugString ('baglanti basarili')
  6. else
  7.     outputDebugString ("baglanti basarisiz")
  8. end
  9.  
  10. function verifyAllMaps(player, command)
  11.         if not isObjectInACLGroup ("user."..getAccountName(getPlayerAccount(player)) , aclGetGroup("Admin")) then
  12.         outputChatBox("Yetkili değilsin",player,255,0,0,true)
  13.         return
  14.     end
  15.         local resources = getResources()
  16.         for i,v in ipairs(resources) do
  17.                 local name = getResourceName(v, "name")
  18.                 local type = getResourceInfo(v, "type")
  19.                 if type == "map" then
  20.                         local q = dbQuery( veritaban, "INSERT INTO verifymaps ( mapname,state  ) VALUES ( ?, ?)", name, 0)
  21.                         dbFree(q)
  22.                 end
  23.         end
  24.         outputChatBox("Tüm haritalar veritabanına eklendi.")
  25. end
  26. addCommandHandler("verifyall", verifyAllMaps)
  27.  
  28. function giveVerify(player, command)
  29.         --yetkili ise
  30.         if not isObjectInACLGroup ("user."..getAccountName(getPlayerAccount(player)) , aclGetGroup("Admin")) then
  31.             outputChatBox("Yetkili değilsin",player,255,0,0,true)
  32.             return
  33.         end
  34.         local mapname = getResourceName ( exports['mapmanager']:getRunningGamemodeMap ( ) )
  35.         local result = dbQuery ( veritaban ,"SELECT * FROM verifymaps WHERE mapname = ?", mapname)
  36.         local sutun = dbPoll(result, -1)
  37.         if sutun[1]["state"] == 1 then
  38.                 outputChatBox("Bu harita zaten en iyiler arasında!", player, 255, 100, 100, true)
  39.                 return
  40.         end
  41.         dbExec( veritaban, "UPDATE verifymaps SET state = 1 WHERE mapname = ?", mapname)
  42.         outputChatBox("[BİLGİ] #ffffffBu harita #ff8717en iyiler #ffffffarasına eklendi by #ffffff"..getPlayerName(player), root, 255, 100, 100, true)
  43. end
  44. addCommandHandler("verify", giveVerify)
  45.  
  46. addEvent("onMapStarting", true)
  47. addEventHandler("onMapStarting", getRootElement(),
  48. function()
  49.         local mapname = getResourceName ( exports['mapmanager']:getRunningGamemodeMap ( ) )
  50.         local result = dbQuery ( veritaban ,"SELECT * FROM verifymaps WHERE mapname = ?", mapname)
  51.         local sutun = dbPoll(result, -1)
  52.         if sutun[1]["state"] == 1 then
  53.                 outputChatBox("[BİLGİ] #ffffffBu harita #ff8717en iyiler #ffffffarasında.", root, 255, 100, 100, true)
  54.                 return
  55.         end
  56. end)

meta.xml
Kod: Lua
  1. <meta>
  2.         <info author=">VIP<sKyTurK" version="0.1" type="script" name="verify" />
  3.         <script src="verify.lua" type="server" />
  4. </meta>

« Son Düzenleme: 21 Haziran 2017, 14:53:59 Gönderen: sKyTurK »
Kişisel blogum
Linkleri Görebilmek İçin Kayıt Olun veya Giriş Yapın
 

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

[AÇIK KAYNAK] en iyi map bilgisi
« : 21 Haziran 2017, 14:32:38 »

ertrldtcu

  • Deneyimli Üye
  • *
  • İleti: 444
Ynt: [AÇIK KAYNAK] en iyi map bilgisi
« Yanıtla #1 : 21 Haziran 2017, 15:41:02 »
Ellerini sağlık, kullanılacağını pek sanmıyorum.
Script yazmak için kod bilmek yetmez.
 

ByCash

  • Süper Moderatör
  • *
  • İleti: 967
    • MTASATURK
Ynt: [AÇIK KAYNAK] en iyi map bilgisi
« Yanıtla #2 : 21 Haziran 2017, 15:44:51 »
Yararlı paylaşım, teşekkürler.
 

Prose

  • Deneyimli Üye
  • *
  • İleti: 478
  • Gökhan Türkoglu
Ynt: [AÇIK KAYNAK] en iyi map bilgisi
« Yanıtla #3 : 21 Haziran 2017, 16:47:43 »
Linkleri Görebilmek İçin Kayıt Olun veya Giriş Yapın
Yararlı paylaşım, teşekkürler.
 

kamaci4444

  • Acemi Üye
  • *
  • İleti: 146
  • Skype:yunus_kamaci
Ynt: [AÇIK KAYNAK] en iyi map bilgisi
« Yanıtla #4 : 21 Haziran 2017, 17:25:35 »
Linkleri Görebilmek İçin Kayıt Olun veya Giriş Yapın
Ellerini sağlık, kullanılacağını pek sanmıyorum.
 

Narkoz

  • Kurucu
  • *
  • İleti: 527
  • SH Gaming
Ynt: [AÇIK KAYNAK] en iyi map bilgisi
« Yanıtla #5 : 21 Haziran 2017, 22:46:06 »
Scriptlerinizi link halinde veriniz.

Konu çöp.
 

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

Ynt: [AÇIK KAYNAK] en iyi map bilgisi
« Yanıtla #5 : 21 Haziran 2017, 22:46:06 »