Bulundu Bakım Skript i

  • Konuyu Başlatan Konuyu Başlatan xefso
  • Başlangıç tarihi Başlangıç tarihi
  • Görüntüleme 145
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

xefso

Somon Balığı Selam Vermeye Geldi
Katılım
19 Eylül 2025
Mesajlar
10
Elmaslar
1
Puan
120
Yaş
26
Konum
Türkiye
Minecraft
xefsas
Bakım skriptinde /bakımaç <dünyaadı> (örneğin boxpvp yerine boxpv yazdık öyle bir dünya yoksa,öyle bir dunya yok o yüzden bakım sağlanamadı derse güzel olur) oyuna yazdıktan sonra opsiz dışındaki herkes lobiye atılmasını istiyorum /bakımbitir diyince herkesin geri girebilmesini istiyorum şimdiden teşekkürler.
 
JavaScript:
options:
    prefix: &8[&cBakım&8] &f
    lobby-world: world # Lobby dünyasının adını buraya yazın

variables:
    {bakim::%text%} = false # Her dünya için bakım durumu
    {bakim.sebep::%text%} = "Belirtilmedi" # Bakım sebebi
    {bakim.baslatan::%text%} = "Sistem" # Bakımı başlatan
    {bakim.tarih::%text%} = "Bilinmiyor" # Bakım başlangıç tarihi

command /bakimac [<text>] [<text>]:
    aliases: /bakim, /maintenance
    permission: bakim.admin
    permission message: {@prefix}&cBu komutu kullanmak için yetkiniz yok!
    trigger:
        if arg-1 is not set:
            send "{@prefix}&7&m-----------------------------" to player
            send "{@prefix}&eBakım Sistemi Komutları:" to player
            send "&7• /bakimac <dünya> [sebep] &f- Bakıma al" to player
            send "&7• /bakimbitir <dünya> &f- Bakımı bitir" to player
            send "&7• /bakimlist &f- Bakımdaki dünyalar" to player
            send "&7• /bakiminfo <dünya> &f- Bakım bilgileri" to player
            send "{@prefix}&7&m-----------------------------" to player
            stop
        
        # Dünya kontrolü - İsim eşleşmesi kontrolü
        set {_dunya.bulundu} to false
        set {_dunya.isim} to arg-1
        loop all worlds:
            if name of loop-world is {_dunya.isim}:
                set {_dunya.bulundu} to true
                exit loop
        
        if {_dunya.bulundu} is false:
            send "{@prefix}&cÖyle bir dünya yok, o yüzden bakım sağlanamadı!" to player
            send "{@prefix}&7Mevcut dünyalar:" to player
            loop all worlds:
                send "&7• &e%name of loop-world%" to player
            stop
        
        # Bakım durumunu kontrol et
        if {bakim::%{_dunya.isim}%} is true:
            send "{@prefix}&e%{_dunya.isim}% &czaten bakımda!" to player
            send "{@prefix}&7Bakımı sonlandırmak için: &e/bakimbitir %{_dunya.isim}%" to player
            stop
        
        # Bakım sebebini ayarla
        if arg-2 is set:
            set {_sebep} to arg-2
        else:
            set {_sebep} to "Belirtilmedi"
        
        # Bakımı aç
        set {bakim::%{_dunya.isim}%} to true
        set {bakim.sebep::%{_dunya.isim}%} to {_sebep}
        set {bakim.baslatan::%{_dunya.isim}%} to player's name
        set {bakim.tarih::%{_dunya.isim}%} to now
        
        send "{@prefix}&a%{_dunya.isim}% &fdünyası bakıma alındı!" to player
        send "{@prefix}&7Sebep: &e%{_sebep}%" to player
        
        # OP olmayan oyuncuları lobiye at
        set {_atilan.sayi} to 0
        loop all players:
            set {_oyuncu.dunya} to name of loop-player's world
            if {_oyuncu.dunya} is {_dunya.isim}:
                if loop-player doesn't have permission "bakim.admin":
                    add 1 to {_atilan.sayi}
                    make loop-player execute command "/spawn"
                    wait 1 tick
                    if name of loop-player's world is not {@lobby-world}:
                        teleport loop-player to spawn of world {@lobby-world}
                    wait 2 ticks
                    send "" to loop-player
                    send "{@prefix}&c&l⚠ BAKIM UYARISI ⚠" to loop-player
                    send "" to loop-player
                    send "{@prefix}&e%{_dunya.isim}% &fdünyası bakıma alındı!" to loop-player
                    send "{@prefix}&7Sebep: &f%{_sebep}%" to loop-player
                    send "{@prefix}&7Lobiye gönderildiniz." to loop-player
                    send "" to loop-player
                else:
                    send "{@prefix}&aDünya bakıma alındı. Yetkili olduğunuz için içeride kalabilirsiniz." to loop-player
        
        send "{@prefix}&7Lobiye atılan oyuncu: &e%{_atilan.sayi}% &7kişi" to player
        
        # Tüm yetkililere bildir
        loop all players:
            if loop-player has permission "bakim.admin":
                if loop-player is not player:
                    send "{@prefix}&e%player's name% &ftarafından &e%{_dunya.isim}% &fbakıma alındı!" to loop-player

command /bakimbitir [<text>]:
    aliases: /maintenanceend, /bakimkapat
    permission: bakim.admin
    permission message: {@prefix}&cBu komutu kullanmak için yetkiniz yok!
    trigger:
        if arg-1 is not set:
            send "{@prefix}&cKullanım: /bakimbitir <dünyaadı>" to player
            stop
        
        # Dünya kontrolü
        set {_dunya.bulundu} to false
        set {_dunya.isim} to arg-1
        loop all worlds:
            if name of loop-world is {_dunya.isim}:
                set {_dunya.bulundu} to true
                exit loop
        
        if {_dunya.bulundu} is false:
            send "{@prefix}&cÖyle bir dünya yok!" to player
            stop
        
        # Bakım durumunu kontrol et
        if {bakim::%{_dunya.isim}%} is false:
            send "{@prefix}&e%{_dunya.isim}% &czaten bakımda değil!" to player
            stop
        
        # Bakımı kapat
        set {bakim::%{_dunya.isim}%} to false
        send "{@prefix}&a%{_dunya.isim}% &fdünyasının bakımı sonlandırıldı!" to player
        
        # Tüm oyunculara duyuru
        loop all players:
            send "" to loop-player
            send "{@prefix}&a&l✓ BAKIM BITTI ✓" to loop-player
            send "" to loop-player
            send "{@prefix}&e%{_dunya.isim}% &fdünyası artık erişilebilir!" to loop-player
            send "" to loop-player
        
        # Değişkenleri temizle
        delete {bakim.sebep::%{_dunya.isim}%}
        delete {bakim.baslatan::%{_dunya.isim}%}
        delete {bakim.tarih::%{_dunya.isim}%}

# Bakımdaki dünyaya girişi engelle
on world change:
    set {_hedef.dunya} to name of event-world
    if {bakim::%{_hedef.dunya}%} is true:
        if player doesn't have permission "bakim.admin":
            cancel event
            send "" to player
            send "{@prefix}&c&l⚠ BAKIM UYARISI ⚠" to player
            send "" to player
            send "{@prefix}&cBu dünya şu anda bakımda!" to player
            if {bakim.sebep::%{_hedef.dunya}%} is set:
                send "{@prefix}&7Sebep: &f%{bakim.sebep::%{_hedef.dunya}%}%" to player
            send "" to player

# Bakım listesi komutu
command /bakimlist:
    aliases: /maintenancelist, /bakimlar
    permission: bakim.admin
    permission message: {@prefix}&cBu komutu kullanmak için yetkiniz yok!
    trigger:
        send "{@prefix}&7&m-----------------------------" to player
        send "{@prefix}&c&lBAKIMDAKI DÜNYALAR" to player
        send "" to player
        set {_bakimda.var} to false
        set {_sayac} to 0
        loop all worlds:
            set {_loop.dunya} to name of loop-world
            if {bakim::%{_loop.dunya}%} is true:
                add 1 to {_sayac}
                send "&7%{_sayac}%. &c%{_loop.dunya}%" to player
                if {bakim.sebep::%{_loop.dunya}%} is set:
                    send "   &7├ Sebep: &f%{bakim.sebep::%{_loop.dunya}%}%" to player
                if {bakim.baslatan::%{_loop.dunya}%} is set:
                    send "   &7├ Başlatan: &e%{bakim.baslatan::%{_loop.dunya}%}%" to player
                if {bakim.tarih::%{_loop.dunya}%} is set:
                    send "   &7└ Tarih: &f%{bakim.tarih::%{_loop.dunya}%}%" to player
                send "" to player
                set {_bakimda.var} to true
        
        if {_bakimda.var} is false:
            send "&7Şu anda bakımda olan dünya yok." to player
        else:
            send "{@prefix}&7Toplam: &e%{_sayac}% &7dünya bakımda" to player
        send "{@prefix}&7&m-----------------------------" to player

# Bakım bilgi komutu
command /bakiminfo [<text>]:
    aliases: /maintenanceinfo
    permission: bakim.admin
    permission message: {@prefix}&cBu komutu kullanmak için yetkiniz yok!
    trigger:
        if arg-1 is not set:
            send "{@prefix}&cKullanım: /bakiminfo <dünyaadı>" to player
            stop
        
        # Dünya kontrolü
        set {_dunya.bulundu} to false
        set {_dunya.isim} to arg-1
        loop all worlds:
            if name of loop-world is {_dunya.isim}:
                set {_dunya.bulundu} to true
                exit loop
        
        if {_dunya.bulundu} is false:
            send "{@prefix}&cÖyle bir dünya yok!" to player
            stop
        
        send "{@prefix}&7&m-----------------------------" to player
        send "{@prefix}&eDünya: &f%{_dunya.isim}%" to player
        send "" to player
        
        if {bakim::%{_dunya.isim}%} is true:
            send "&7Durum: &c&lBAKIMDA" to player
            if {bakim.sebep::%{_dunya.isim}%} is set:
                send "&7Sebep: &f%{bakim.sebep::%{_dunya.isim}%}%" to player
            if {bakim.baslatan::%{_dunya.isim}%} is set:
                send "&7Başlatan: &e%{bakim.baslatan::%{_dunya.isim}%}%" to player
            if {bakim.tarih::%{_dunya.isim}%} is set:
                send "&7Tarih: &f%{bakim.tarih::%{_dunya.isim}%}%" to player
        else:
            send "&7Durum: &a&lAKTİF" to player
            send "&7Bu dünya normal şekilde çalışıyor." to player
        
        send "{@prefix}&7&m-----------------------------" to player

# Oyuncu giriş mesajı
on join:
    wait 1 second
    if player doesn't have permission "bakim.admin":
        set {_bakimda.sayi} to 0
        loop all worlds:
            set {_loop.dunya} to name of loop-world
            if {bakim::%{_loop.dunya}%} is true:
                add 1 to {_bakimda.sayi}
        
        if {_bakimda.sayi} is more than 0:
            send "{@prefix}&eBazı dünyalar bakımda! &7/bakimlist ile bakabilirsin" to player


Skripti test etmedim. Kendim kodlamadım çünkü bu tarz basit isteklerin için yapay zekaya kodlatmayı deneyebilirsin.
"skript-reflect,SkBee" bunlarıda kurarak deneyebilirsin.
 
kendinizi skript alanında geliştirmek yerine java'ya yönelim sağlayarak en azından temelini atabilirsiniz.
 
Teşşekkürler yapay zekaya dedim yapamadı o yüzden geldim
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst