[YARDIM] Debug taki script hataları

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı maasukayhikmo

  • Yeni Üye
  • *
    • İleti: 8
: 02 Nisan 2020, 16:51:47
Linki görebilmek için Kayıt olun yada Giriş yapın.

Debugu Açtığığım hızgöstergesi ve tag panel scriptimde böyle hatalar meydana geldiğini görüyorum.
hataları nasıl çözebilirim ?
« Son Düzenleme: 02 Nisan 2020, 17:00:41 Gönderen: maasukayhikmo »
 


MTASATURK

[YARDIM] Debug taki script hataları
« : 02 Nisan 2020, 16:51:47 »

Çevrimdışı GrandX

  • Yeni Üye
  • *
    • İleti: 55
Yanıtla #1 : 02 Nisan 2020, 17:27:24
Debugları verdiği satırları atarmısın
 


Çevrimdışı maasukayhikmo

  • Yeni Üye
  • *
    • İleti: 8
Yanıtla #2 : 02 Nisan 2020, 17:40:46
Linki görebilmek için Kayıt olun yada Giriş yapın.
Debugları verdiği satırları atarmısın


buyurun  Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı GrandX

  • Yeni Üye
  • *
    • İleti: 55
Yanıtla #3 : 02 Nisan 2020, 17:50:35
Direk lua'nın içindeki satır'ı demek istemiştim.
 


Çevrimdışı maasukayhikmo

  • Yeni Üye
  • *
    • İleti: 8
Yanıtla #4 : 02 Nisan 2020, 17:59:10
PARDON BUYUR :)


local taglar = {}
local hizliYazma = {}
local ayniMesaj = {}
local antiSpam = {}
local serialler = {}
local muteliler = {}
local hak = {}

local ayarlar = { -- meta.xml den çekilen ayarlar
   excludedGroups = get"ExcludedGroups" or {},
   mesajGorme = get"MesajGorme" or "true",
   spamKoruma = get"SpamKoruma" or "true",
   kisaltmaMesaj = get"KisaltmaMesaj" or "true",
   reklamKoruma = get"ReklamKoruma" or "true",
   yasakliKelimeler = get"blacklistedStrings" or {},
}

addEventHandler('onPlayerChat', root ,function(text,typechat) -- chat eventi
   cancelEvent()
   local isim = getPlayerName(source)
   local r, g, b = getPlayerNametagColor(source) or math.random(0,255), math.random(0,255), math.random(0,255)
   local oyuncuTag = oyuncununTaginiCek(source)
   local randomID = math.random ( 1, #yazilar )
   local yazi = yazilar[randomID]
   local serial = getPlayerSerial(source)
   if serialler[serial]  then return end

   -- spam koruma
   if ayarlar.spamKoruma then
      if not isPlayerExcluded(source) then
         if isTimer(antiSpam[source]) then
            cancelEvent() 
            spamEngelle(source,"Mutele")
         else
            antiSpam[source] = setTimer(function(oyuncu)
               antiSpam[oyuncu] = nil
            end, 1000, 1, source)
         end
      end   
   end   
   
   -- reklam koruma
   if ayarlar.reklamKoruma then
      if isAdvertisement(text) then
         if not isPlayerExcluded(source) then
            for i, yetkililer in ipairs (getElementsByType("player")) do
               if isPlayerExcluded(yetkililer) then
                  if text == yazi then return end
                  if ayarlar.mesajGorme then
                     outputChatBox("#FFFFFF* #FFFF00Reklam Uyarı#FFFFFF * " .. isim ..  " #FFFFFFİsimli oyuncu #FFFF00reklam #FFFFFFyaptı: #FF00FF" .. text, yetkililer, 255, 255, 255, true)
                     outputServerLog("[ReklamUyari] " .. isim:gsub('#%x%x%x%x%x%x', '') .. ": " .. text)
                  end
               end   
            end
            if hakVer(source) then
               text =  yazi
            else
               text =  yazi
               spamEngelle(source,"Mutele")
            end   
         end   
      end
   end   
   
   -- hızlı yazma koruma
    if hizliYazma[source] and hizliYazma[source]  > getTickCount() then
         outputChatBox("#ff0000Çok hızlı yazıyorsun.", source, getRootElement(), r, g, b, true)
        return
    else
        hizliYazma[source] = getTickCount()
    end
   
   -- aynı mesaj engelleme
    if ayniMesaj[source] and ayniMesaj[source] == text then
      outputChatBox("Aynı kelimeleri tekrarlamayınız!", source, 255, 0, 0)
      return
    else
        ayniMesaj[source] = text
    end
      
   -- kısaltma mesajlar
   if ayarlar.kisaltmaMesaj then
      for i,v in pairs ( mesajTablo ) do
         for k,t in pairs(i) do
            if text:lower() == t then
               text = v
            end
         end   
      end
   end   
   
   if typechat == 2 then cancelEvent() end -- eğer Y den yazmışsa iptal et
   
   if typechat == 0 then -- eğer T den yazmış ise
      if oyuncuYetkilimi(source) then -- eğer oyuncu yetkili ise
         local tag,chat = oyuncuYetkilimi(source) -- yetkinin tagını ve chat renklerini çek
         outputChatBox(tag..isim..chat..text, root, r, g, b, true ) -- chate aktar
      elseif oyuncuTag then -- eğer oyuncu panelden tag almışsa
         outputChatBox(oyuncuTag.." #007FFF"..isim.."#FFFFFF: #FFFFFF"..text, root, r, g, b, true ) -- chate aktar
      else --eğer yukardakilerden ikiside yoksa
         outputChatBox("#002B00● #007FFF"..isim.."#FFFFFF: #FFFFFF"..text, root, r, g, b, true ) -- chate yolla
      end
   end   

   outputServerLog( "CHAT: "  .. isim:gsub('#%x%x%x%x%x%x', '').. ": " .. text )   
   --exports.ChatBubbles:outputMessage(source, text)
end)



-- Kullanışlı Fonskiyonlar ve diğer olaylar

function oyuncuYetkilimi(oyuncu) --oyuncu yetkilimi fonksiyon
   if isElement(oyuncu)  then   
      local hesapismi = getAccountName(getPlayerAccount(oyuncu))
      for i,yetkiler in pairs(yetkiliTaglar) do
         local acl,tag,chat = unpack(yetkiler)
         if aclGetGroup(acl) and isObjectInACLGroup("user." .. hesapismi, aclGetGroup(acl)) then
            return tag,chat
         end   
      end   
   end
   return false
end

function oyuncununTaginiCek(oyuncu) -- oyuncunun tagını çekme fonksiyon
   if taglar[oyuncu] then
      return taglar[oyuncu]
   else
      return false
   end
end   

function isAdvertisement(str) -- export fonksiyon (eğer kelime reklam ise)
   assert(type(str) == "string", "Bad argument 1 @ isAdvertisement [String expected, got " .. type(str) .. "]")
    local str = string.gsub(str, '#%x%x%x%x%x%x', '')
   local workingWord   = string.lower(str):gsub("[_-;:µ|><!^#'%%!§$\\&/()=._-,-#+}{ ]", '').."-";
        for index, sBadWord in pairs(ayarlar.yasakliKelimeler) do
            local pattern       = workingWord:match(".*"..string.lower(sBadWord).."*.");
            if(pattern) then   
                return sBadWord
            end
        end

   if str:find("(%d+)%.(%d+)%.(%d+)%.(%d+)") then
      return true
   end
   
   return false
end

function isPlayerExcluded(player) -- eğer oyuncu yetkili ise
   local size = #ayarlar.excludedGroups
   if size ~= 0 then
      local accountName = getAccountName(getPlayerAccount(player))
      for i=1, size do
         if isObjectInACLGroup("user." .. accountName, aclGetGroup(ayarlar.excludedGroups)) then
            return true
         end
      end
   end
   return false
end

addEventHandler("onPlayerConnect", root, function(playerNick, _, _, playerSerial, _)  -- oyuncu servera girince ilk 10sn. konuşmama
   serialler[playerSerial] = true
   setTimer(function()
      serialler[playerSerial] = nil
   end, 1000*20,1)
end)

function hakVer(oyuncu) -- Yasaklı kelime yazınca 3 hak verme
   if not hak[oyuncu] then
      hak[oyuncu] = 1
      outputChatBox("#FFFFFFYasaklı bir kelime yazdın. #FFFF002 #FFFFFFhakkın kaldı.", oyuncu, 255,0,0, true)
      return true
   else
      hak[oyuncu] = hak[oyuncu]+1
      if hak[oyuncu] and hak[oyuncu]  > 2 then
         hak[oyuncu] = nil
         return false
      end
      outputChatBox("#FFFFFFYasaklı bir kelime yazdın. #FFFF00"..tostring(hak[oyuncu]-1).." #FFFFFFhakkın kaldı.", oyuncu, 255,0,0, true)
      return true
   end
end

function spamEngelle(oyuncu,deger) -- spam engelleme fonksiyon
   local serial = getPlayerSerial(oyuncu)
   if deger == "Mutele" then
      outputChatBox(getPlayerName(oyuncu).."#FFFFFF Flood/Spam yaptığın için#FFFF00 30 #FFFFFFsaniye susturuldun.", root, 255,255,255,true)
      setPlayerMuted(oyuncu, true)
      setTimer (spamEngelle, 30000, 1, oyuncu, "Mute Kaldır")
      muteliler[serial] = true
   elseif deger == "Mute Kaldır" then   
      if  isElement (oyuncu) and isPlayerMuted (oyuncu)  then
         setPlayerMuted ( oyuncu, false )
         antiSpam[oyuncu] = nil
         muteliler[serial] = false
         outputChatBox ("#FFFFFF"..getPlayerName ( oyuncu ).." #FF0000Cezan bitti.",root, 255, 255, 0,true )
      else
         antiSpam[oyuncu] = nil
      end
   end   
end

addEventHandler("onPlayerJoin", root, function() -- muteli iken oyundan çıktığında tekrar muteleme
   local serial = getPlayerSerial(source)
   if muteliler[serial] then
      spamEngelle(source,"Mutele")   
   end
end)

addEventHandler("onPlayerQuit", root, function()
   if taglar[source] then taglar[source] = nil end
end)

addEvent("TagPanel:TagAyarla", true)
addEventHandler("TagPanel:TagAyarla", root, function(chat,olay)
   if olay == "Değiştir" then
      taglar[source] = chat
      outputChatBox("#FFFFFFTagın "..chat.." #FFFFFFolarak #FFFF00değiştirildi#FFFFFF.", source, 255,0,0, true)
   elseif olay == "Sıfırla" then
      taglar[source] = nil
      outputChatBox("#FFFFFFTagını başarıyla #FFFF00sıfırladın#FFFFFF.", source, 255,0,0, true)
   end   
end)
 


Çevrimdışı GrandX

  • Yeni Üye
  • *
    • İleti: 55
Yanıtla #5 : 02 Nisan 2020, 18:02:44
Hatayı ACL grubundan vermiş, ayarlar.lua'yı aç, oradan excludedGroupsdaki ACL grubunun senin sunucunda olup olmadığına bak.
 


MTASATURK

Ynt: [YARDIM] Debug taki script hataları
« Yanıtla #5 : 02 Nisan 2020, 18:02:44 »

Çevrimdışı maasukayhikmo

  • Yeni Üye
  • *
    • İleti: 8
Yanıtla #6 : 02 Nisan 2020, 18:08:43
Linki görebilmek için Kayıt olun yada Giriş yapın.
Hatayı ACL grubundan vermiş, ayarlar.lua'yı aç, oradan excludedGroupsdaki ACL grubunun senin sunucunda olup olmadığına bak.

Gördüğün üzere bir hatada yok ?

Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı GrandX

  • Yeni Üye
  • *
    • İleti: 55
Yanıtla #7 : 02 Nisan 2020, 18:44:54
Ayarların tamamını atarmısın
 


Çevrimdışı maasukayhikmo

  • Yeni Üye
  • *
    • İleti: 8
Yanıtla #8 : 02 Nisan 2020, 21:13:48
Linki görebilmek için Kayıt olun yada Giriş yapın.
Ayarların tamamını atarmısın

buyur

isimler = { -- buton isimleri ve taglar
   --{"Butonİsim", "ChatTag"}
   {"Polis", "#FF0000[ #000DFFPolis #FF0000]#007FFF "},
   {"Hirsiz", "#000000[ #717171Hırsız #000000]#007FFF "},
   {"Drifter", "#000000[ #00FBFFLove #FFFFFFDrift #000000]#FF9900#007FFF "},
   {"TofAsk", "#0F0F0F❃ #7F7FFFTof#FF002AAsk#0F0F0F ❃#007FFF "},
   {"Asker", "#000000[ #005120Asker #000000]#007FFF "},
   {"Modifiyeci", "#fafafa✨ #0810F0M#0751F1o#078CF1d#07BAF1i#07D5F1f#07F1CAi#07F19Fy#07F170e#07F14Dc#07F126i #fafafa✨#007FFF "},
   {"Apaci", "#000000[ #0055FFA#FF55FFp#FFFF2Aa#8CFF00ç#FF0000i #000000]#007FFF "},
   {"M-Power", "#5696D1/#003356/#DC231F/#EFEFEFM#007FFF "},
   {"Azrail", "#00AAFF☄ #DC231FAzrail #00AAFF☄#007FFF "},
   {"Ölüm Makinesi", "#eeeed1» #d6bf28Ölüm Makinesi #eeeed1«#007FFF "},
   {"FakeTaxi", "#000000[ #FFC800Fake#000000TAXİ  #000000]#007FFF "},
   {"YouTube", "#ffffffYou#ff0000Tube #007FFF "},
   {"I❤", "#ffffffI#ff0000❤ #D50000 "},
   {"Kaba Dayı", "#000000[ #612700Kaba #FFFFFFDayı  #000000]#007FFF "},
   {"Bayan", "#a0a0a0❇ #ff3481B#ff1a71a#f9005ey#e80058a#d60051n#c3004a Ü#ab0041y#970039e#a0a0a0 ❇ "},
   {"Mafya", "#000000[ #FFFFFFMafya #000000]#007FFF "},
   {"Seri Katil", "#000000« #FF0000Seri Katil #000000»#007FFF "},
   {"Cumhurbaşkanı", "#000000[ #006878Cumhurbaşkanı #000000]#007FFF "},
}

yetkiliTaglar = {--Yetkiİsmi,Tag,ChatRengi
   --{"Admin", "[AdminChatTag]",":#00FFFF "}
   {"Console", "#000000●#FFFF00♔ #990000❱❱ #FFCC00SERVER KURUCUSU #990000❰❰ #FFFF00♔#000000● "," #FFFFFF:#00FFFF "},
   {"Destek Ekibi", "#00FF00·._.·°¯#0099FFƊЄƧƬЄƘ ЄƘƖƁƖ#00FF00¯°·._.·#FFFFFF ","#FFFFFF:#00ffff "},
   {"Admin", "#000000●#FF6600▬▬▬#FFFF00๑۞ Admin ۞๑#FF6600▬▬▬#000000● ","#000000:#00FFFF "},
   {"SuperModerator", "#FFFF00♔ #999999『 #990000Super Moderatör #999999』 #FFFF00♔ ","#000000:#00FF11 "},
   {"Moderator", "#000000●#0099FF▬▬▬๑●#FF0000Moderatör#0099FF●๑▬▬▬#000000●","#FFFFFF:#AAD4FF"},
   {"VIP", "#fff244˗ ˏ ˋ#009bffV#0090edi#0085dbp #0079c8Ü#006db4y#005e9ae#fff244ˎ ˊ ˗ #FFFFFF ","#FFFFFF:#AAD4FF "},
}

yazilar = { --oyuncu reklam yapınca çıkcak yazılar
   "Cidden sunucu sade ve efsane olmuş, artık burda takılacağım.",
   "Eskiden beri buradayım ve burada olmaya devam ediceğim.",
   "Burayı sevmeyen ve kötü bulan aşırı kıskançtır!" ,
}

mesajTablo = { -- kısaltma mesajlar
   [{"sa", "sea", "sa "}] = "Selamunaleyküm",
   [{"as", "ase", "as "}] = "Aleykümselam",
   [{"hg", "h.g"}] = "Hoş geldin",
   [{"hb", "h.b"}] = "Hoş buldum",
    [{"tm", "tmm"}] = "Tamam",
   [{"ok", "okey"}] = "Okey",
   [{"aeo", "kib"}] = "Allaha Emanet Ol",
   [{"<3", "<3 "}] = "#ff0000❤",
}