[YARDIM] 10 Saniye Uzun Sürüyor

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı SARl

  • Acemi Üye
  • *
    • İleti: 145
: 07 Aralık 2018, 12:17:26
Merhaba Bu kodlarda hata var bir yere ışınlandığımda koruma devriyeye geçiyor ancak hep uzun süre kalıyor Yardım eder misiniz.Bide 10 saniye dolduktan sonra '10 Saniye Bitti İyi Oyunlar' Desin.
Kod: lua
--server-side
local isinlananlar = {}
local sure = 10 -- kaç saniyede bir ışınlanabilir
yerler = {
        -- ["komut"] = {x,y,z,chatteçıkcakmesaj}
        ["karakol"] = {0,0,3,"karakola ışınlandın"},
        ["tkt"] = {x,y,z,"tkt base ışınlandın"},
        ["oraya"] = {x,y,z,"oraya ışınlandın"},
        ["şuraya"] = {x,y,z,"şuraya ışınlandın"},
        ["buraya"] = {x,y,z,"şuraya ışınlandın"},
}
 
addEventHandler("onPlayerCommand",root,function(komut) -- oyuncu komut yazdığında
        if yerler[komut] then  -- eğer yazdığı komut 'yerler' tablosunda var ise
                local x,y,z,chat = unpack(yerler[komut]) -- tablodaki komuta ait verileri değişkene çıkar
                isinla(source,x,y,z,chat) -- isinla fonksiyonuna komutu yaznaı ve değişkenleri yolla
        end
end)
 
function isinla(oyuncu,x,y,z,chat) -- isinla func
        if isinlananlar[oyuncu] and (isinlananlar[oyuncu])+(sure+1000) < getTickCount() then -- eğer isinlananlar tablosunda oyuncu var ise ve verisi şuanki süreden küçükse
                outputChatBox("10 saniyede bir ışınlanabilirsin.",oyuncu,255,0,0,true) -- chate yazı at
                return -- kodu durdur
        end     
        local arac = getPedOccupiedVehicle(oyuncu) -- ışınlancak kişinin aracını çek
        if arac then -- eğer arac varsa
                if getVehicleController(arac) ~= oyuncu then  -- eğer aracın sürücüsü ışınlancak kişiden başka biriyse
                        outputChatBox("Sadece sürücü ışınlanabilir!",oyuncu,255,0,0,true)  -- chate yazı at
                        return  -- kodu durdur
                end
                setElementPosition(arac,x,y,z) -- eğer kod yukarda durmazsa, burda aracı ışınlar
        else -- eğer arac yoksa
                setElementPosition(oyuncu,x,y,z) -- oyuncuyu ışınla
        end
        outputChatBox(chat,oyuncu,0,255,0,true) -- chate yazı at
        setElementAlpha(oyuncu,150) -- oyuncunun alpha 150 yap
        triggerClientEvent(oyuncu,"Işınlanma:Client",oyuncu,sure) -- cliente oyuncuyu ve süreyi yolla
        isinlananlar[oyuncu] = getTickCount() --tabloya anlık süreyi kaydet
end
 
addEvent("Işınlanma:Server",true) -- clientden gelcek veri için bir event oluşturduk
addEventHandler("Işınlanma:Server", root, function()
        setElementAlpha(source,255) -- gelen oyuncunun alpha 255 yap
        isinlananlar[source] = nil -- tablodan sil
end)
 
addEventHandler("onPlayerQuit", root, function() if isinlananlar[source] then isinlananlar[source] = nil end end) -- oyuncu çıkış yaptığında tablodan sildik
Kod: lua
--client-side
addEvent("Işınlanma:Client",true) -- serverden gelen veriler için bir event oluşturduk
addEventHandler("Işınlanma:Client", root, function(sure)
        setPedWeaponSlot(source,0) -- ışınlanan oyuncunun silah slotunu 0 yaptık
        addEventHandler("onClientPlayerWeaponSwitch",source,silahcek) -- silah değişememesi için 'silahcek' fonksiyonunu ekledik
        addEventHandler("onClientPlayerDamage",source,olumsuzyap) -- hasar almaması için 'olumsuzyap' fonksiyonunu ekledik
        setTimer(bitir,sure*1000,1,source) -- 10 saniye sonra bitirmek içik timer ekledik
end)
 
function bitir(oyuncu) -- bitir func
        removeEventHandler("onClientPlayerWeaponSwitch",oyuncu,silahcek) -- silah değişebilmesi için 'silahcek' fonksiyonunu kaldırdık
        removeEventHandler("onClientPlayerDamage",oyuncu,olumsuzyap)  -- hasar alabilmesi için 'olumsuzyap' fonksiyonunu kaldırdık
        triggerServerEvent("Işınlanma:Server",oyuncu) -- servera yolladık
end
 
function silahcek() -- silahçek func (oyuncu silah değiştiğinde tetiklencek şekilde yaptık yukarda)
        setPedWeaponSlot(localPlayer,0) -- silah slotunu 0 yap
end
 
function olumsuzyap() -- olumsuz func (oyuncu hasar aldığında tetiklencek şekilde yaptık yukarda)
        cancelEvent() -- iptal et
end
« Son Düzenleme: 11 Aralık 2018, 23:59:29 Gönderen: Narkoz »
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


MTASATURK

[YARDIM] 10 Saniye Uzun Sürüyor
« : 07 Aralık 2018, 12:17:26 »

Çevrimdışı Mahlukat

  • Uzman Üye
  • *
    • İleti: 637
Yanıtla #1 : 09 Aralık 2018, 17:42:50
satır satır ne işe yaradığı yanların yazılmış ve nerde timer koyulduğu da belli
10 saniye uzun sürmüyo
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı SARl

  • Acemi Üye
  • *
    • İleti: 145
Yanıtla #2 : 09 Aralık 2018, 17:57:03
Hayır ben /tkt yazıyorum 10 saniye doluyor halen koruma var
Linki görebilmek için Kayıt olun yada Giriş yapın.