Bulundu Yeni Oyuncular 12 Saat Boyunca Hasar Almayacak ve Veremiyicek Skripti

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

NADXIWA

Demir Cevheri Gibiyim
Katılım
26 Ocak 2021
Mesajlar
197
Elmaslar
30
Puan
6.650
Konum
Kayalıoğlu-Bir Drama Öyküsü
Minecraft
NADXIWA

Discord:

nadxiwa

Merhaba Değerli Forum Üyeleri Sizden Bir Skript İstiyorum oyuncular sunucuya girdiği zaman 12 saat boyunca Bir oyuncudan hasar almıyıcak ve bir oyuncuya hasar veremiyicek.
Yeni Oyuncuya birisi Vurmaya çalışınca chat de "Ona Vuramasın o daha yeni" Yazıcak
Yeni Oyuncu Başka Oyuncuya vurmaya çalışınca ise "Sen Daha Yenisin Savaşamasın" Yazıcak
Şimdiden Teşekkürler
 
Ayak üstü test etmeden yaptım. Bir dener misin?
Kod:
on first join:
    set {yenioyuncu::%player%} to true
    wait 12 hour
    delete {yenioyuncu::%player%}
    
on damage:
    if attacker is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
 
Ayak üstü test etmeden yaptım. Bir dener misin?
Kod:
on first join:
    set {yenioyuncu::%player%} to true
    wait 12 hour
    delete {yenioyuncu::%player%}
   
on damage:
    if attacker is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
Selam zaman kısmında mantık hatası var bu şekilde yapacaksanız daha da ek kontroller eklemeniz gerekiyor veya while belirli zaman süresince çıkartma işlemi yaparak en sonunda değer 0 olunca değişkeni silerek sorunu çözebilirsiniz.
 
Selam zaman kısmında mantık hatası var bu şekilde yapacaksanız daha da ek kontroller eklemeniz gerekiyor veya while belirli zaman süresince çıkartma işlemi yaparak en sonunda değer 0 olunca değişkeni silerek sorunu çözebilirsiniz.
Gerek yoktu. Üstte yaptığım sunucuda 12 saat boyunca zaman geçirirse işe yarayacaktı. Ama onun tercihi.

Kod:
on first join:
    set {yenioyuncu::%player%} to true
    set {beklemesuresi} to true
    set {saat} to 11
    set {dakika} to 59
    set {saniye} to 59
    set {_x} to true
    while {_x} is set:
        wait 1 second
        if {saniye} is bigger than 0:
            remove 1 from {saniye}
        else:
            if {dakika} is bigger than 0:
                remove 1 from {dakika}
                set {saniye} to 59
            else:
                if {saat} is bigger than 0:
                    remove 1 from {saat}
                    set {dakika} to 59
                    set {saniye} to 59
                else:
                    delete {yenioyuncu::%player%}
                    delete {_x}
                    send "Yeni oyuncu kalkanınız sona erdi."
                    stop
   
on damage:
    if attacker is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
 
Gerek yoktu. Üstte yaptığım sunucuda 12 saat boyunca zaman geçirirse işe yarayacaktı. Ama onun tercihi.

Kod:
on first join:
    set {yenioyuncu::%player%} to true
    set {beklemesuresi} to true
    set {saat} to 11
    set {dakika} to 59
    set {saniye} to 59
    set {_x} to true
    while {_x} is set:
        wait 1 second
        if {saniye} is bigger than 0:
            remove 1 from {saniye}
        else:
            if {dakika} is bigger than 0:
                remove 1 from {dakika}
                set {saniye} to 59
            else:
                if {saat} is bigger than 0:
                    remove 1 from {saat}
                    set {dakika} to 59
                    set {saniye} to 59
                else:
                    delete {yenioyuncu::%player%}
                    delete {_x}
                    send "Yeni oyuncu kalkanınız sona erdi."
                    stop
  
on damage:
    if attacker is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
Üzülerek gene mantık hatası mevcut :D


Kod:
on first join:
    set {yenioyuncu::%player%} to 43200 # 12 hours

on join:
    {yenioyuncu::%player%} is set:
        while player is online:
            remove 60 from {yenioyuncu::%player%}
            if {yenioyuncu::%player%} <= 0:
                delete {yenioyuncu::%player%}
            wait 60 seconds
        


on damage:
    if attacker is player:
        if {yenioyuncu::%attacker%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%victim%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
Bunu kullanın
 
Pardon arkadaşın yazdığını şimdi okudum kusura bakmayın yanlış anlamışım ben affınızı sığınıyorum.
 
Ayak üstü test etmeden yaptım. Bir dener misin?
Kod:
on first join:
    set {yenioyuncu::%player%} to true
    wait 12 hour
    delete {yenioyuncu::%player%}
   
on damage:
    if attacker is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%player%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
Bu Hatayı Veriyor
resim_2021-11-27_153620.png
 
Kod:
on first join:
    set {yenioyuncu::%player%} to true
    set {beklemesuresi} to true
    set {saat} to 11
    set {dakika} to 59
    set {saniye} to 59
    set {_x} to true
    while {_x} is set:
        wait 1 second
        if {saniye} is bigger than 0:
            remove 1 from {saniye}
        else:
            if {dakika} is bigger than 0:
                remove 1 from {dakika}
                set {saniye} to 59
            else:
                if {saat} is bigger than 0:
                    remove 1 from {saat}
                    set {dakika} to 59
                    set {saniye} to 59
                else:
                    delete {yenioyuncu::%player%}
                    delete {_x}
                    send "Yeni oyuncu kalkanınız sona erdi."
                    stop
    
on damage:
    if attacker is player:
        if {yenioyuncu::%victim%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%attacker%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
 
Kod:
on first join:
    set {yenioyuncu::%player%} to true
    set {beklemesuresi} to true
    set {saat} to 11
    set {dakika} to 59
    set {saniye} to 59
    set {_x} to true
    while {_x} is set:
        wait 1 second
        if {saniye} is bigger than 0:
            remove 1 from {saniye}
        else:
            if {dakika} is bigger than 0:
                remove 1 from {dakika}
                set {saniye} to 59
            else:
                if {saat} is bigger than 0:
                    remove 1 from {saat}
                    set {dakika} to 59
                    set {saniye} to 59
                else:
                    delete {yenioyuncu::%player%}
                    delete {_x}
                    send "Yeni oyuncu kalkanınız sona erdi."
                    stop
   
on damage:
    if attacker is player:
        if {yenioyuncu::%victim%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::%attacker%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
Çalıştı Teşekkürler
 
Çalıştı Teşekkürler
Çalışmaz. Variableları tek tek her oyuncuya atamak lazım. {saat} diye tanımladım. O tüm oyuncular için geçerli olur ve her yeni biri girdiğinde saati 12 yapar. O hatayı düzelttim bir de /kalansüre diye bir komut ekledim. Bu kodu kullan.

Kod:
on first join:
    set {yenioyuncu::nick::%player%} to true
    set {yenioyuncu::saat::%player%} to 11
    set {yenioyuncu::dakika::%player%} to 59
    set {yenioyuncu::saniye::%player%} to 59
    set {_x} to true
    while {_x} is set:
        wait 1 second
        if {yenioyuncu::saniye::%player%} is bigger than 0:
            remove 1 from {yenioyuncu::saniye::%player%}
        else:
            if {yenioyuncu::dakika::%player%} is bigger than 0:
                remove 1 from {yenioyuncu::dakika::%player%}
                set {yenioyuncu::saniye::%player%} to 59
            else:
                if {yenioyuncu::saat::%player%} is bigger than 0:
                    remove 1 from {yenioyuncu::saat::%player%}
                    set {yenioyuncu::dakika::%player%} to 59
                    set {yenioyuncu::saniye::%player%} to 59
                else:
                    delete {yenioyuncu::nick::%player%}
                    delete {_x}
                    send "Yeni oyuncu kalkanınız sona erdi."
                    stop
 
on damage:
    if attacker is player:
        if {yenioyuncu::nick::%victim%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::nick::%attacker%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
         
command /kalansüre:
    trigger:
        if {yenioyuncu::nick::%player%} is set:
            send "Kalkanın bitmesine kalan süre: &c%{yenioyuncu::saat::%player%}% saat %{yenioyuncu::dakika::%player%}% dakika %{yenioyuncu::saniye::%player%}% saniye" to player
        else:
            send "Yeni oyuncu olmadığınız için kalkan sürenize bakamazsınız."
 
Son düzenleme:
Güzel fikir sunucumda kullanabilirim eğer izniniz var ise.
Çalışmaz. Variableları tek tek her oyuncuya atamak lazım. {saat} diye tanımladım. O tüm oyuncular için geçerli olur ve her yeni biri girdiğinde saati 12 yapar. O hatayı düzelttim bir de /kalansüre diye bir komut ekledim. Bu kodu kullan.

Kod:
on first join:
    set {yenioyuncu::nick::%player%} to true
    set {beklemesuresi} to true
    set {yenioyuncu::saat::%player%} to 11
    set {yenioyuncu::dakika::%player%} to 59
    set {yenioyuncu::saniye::%player%} to 59
    set {_x} to true
    while {_x} is set:
        wait 1 second
        if {yenioyuncu::saniye::%player%} is bigger than 0:
            remove 1 from {yenioyuncu::saniye::%player%}
        else:
            if {yenioyuncu::dakika::%player%} is bigger than 0:
                remove 1 from {yenioyuncu::dakika::%player%}
                set {yenioyuncu::saniye::%player%} to 59
            else:
                if {yenioyuncu::saat::%player%} is bigger than 0:
                    remove 1 from {yenioyuncu::saat::%player%}
                    set {yenioyuncu::dakika::%player%} to 59
                    set {yenioyuncu::saniye::%player%} to 59
                else:
                    delete {yenioyuncu::nick::%player%}
                    delete {_x}
                    send "Yeni oyuncu kalkanınız sona erdi."
                    stop
  
on damage:
    if attacker is player:
        if {yenioyuncu::nick::%victim%} is set:
            cancel event
            send "%victim% oyuncu yeni olduğu için saldıramazsın." to attacker
            send "Yeni oyuncu olduğunuz için %attacker% size saldıramadı." to victim

on damage of a player:
    if victim is player:
        if {yenioyuncu::nick::%attacker%} is set:
            cancel event
            send "Yeni oyuncu olduğunuz için birine saldıramazsınız." to attacker
            send "%player% size saldırmaya çalıştı ama yeni olduğu için başaramadı." to victim
          
command /kalansüre:
    trigger:
        if {yenioyuncu::nick::%player%} is set:
            send "Kalkanın bitmesine kalan süre: &c{yenioyuncu::saat::%player%} saat {yenioyuncu::dakika::%player%} dakika {yenioyuncu::saniye::%player%} saniye" to player
        else:
            send "Yeni oyuncu olmadığınız için kalkan sürenize bakamazsınız."
 
güzel skript olmuş başarılar :d
 
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