Bulundu Claim Transfer Skripti

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

MrAvci

Örümcek Hoşt!
Katılım
18 Haziran 2021
Mesajlar
346
Elmaslar
39
Puan
6.660
Minecraft
MrAvci

Discord:

mravci

Arkadaşlar sunucumda oyuncular claim bloklarını birbirlerine gönderebilsinler diye bi skript yapmaya çalışıyorum ama placeholder olayını bi türlü çözemedim.
İsteğim şu oyuncu /claimgönder isim sayı - Komutunu kullandığı zaman %griefprevention_bonusclaims% bu sayıdan büyük ise kendisinden silinicek diğer oyuncuya bonus eklenicek.
Ama placeholderi bi türlü ayarlayamadım yardımcı olurmusunuz
 
JavaScript:
command /claimgönder <text>:
    trigger:
        if target player is online:
            if {gönderilen.%player%} is set:
                send "&cZaten bir başkasına claim haklarınızı gönderdiniz. Önce onaylayın veya iptal edin."
            else:
                set {gönderilen.%player%} to arg-1
                send "&aClaim haklarınızı &e%{gönderilen.%player%}&a adlı oyuncuya göndermek üzeresiniz. Onaylamak için /claimonayla, iptal etmek için /claimiptal yazabilirsiniz."
                wait 30 seconds
                if {gönderilen.%player%} is set:
                    remove {gönderilen.%player%}
                    send "&cİşlem süresi doldu. Claim hakları gönderme işlemi iptal edildi."
        else:
            send "&cBelirttiğiniz oyuncu çevrimiçi değil."

command /claimonayla:
    trigger:
        if {gönderilen.%player%} is set:
            gp user %player% permission claims give to {gönderilen.%player%}
            send "&aClaim haklarınızı başarıyla &e%{gönderilen.%player%}&a adlı oyuncuya gönderdiniz."
            remove {gönderilen.%player%}
        else:
            send "&cBir claim hakları gönderme işlemi bulunmamaktadır."

command /claimiptal:
    trigger:
        if {gönderilen.%player%} is set:
            send "&cClaim hakları gönderme işlemi iptal edildi."
            remove {gönderilen.%player%}
        else:
            send "&cBir claim hakları gönderme işlemi bulunmamaktadır."

Bu işlem tamamını aktarır, GriefPrevention eklentisi oyuncular arasında belirli bir miktar claim haklarını doğrudan transfer etmeyi desteklemiyor maalesef. Bunun için özel bir eklenti yaptırabilirsin
 
Son düzenleme:
JavaScript:
command /claimgönder <text>:
    trigger:
        if target player is online:
            if {gönderilen.%player%} is set:
                send "&cZaten bir başkasına claim haklarınızı gönderdiniz. Önce onaylayın veya iptal edin."
            else:
                set {gönderilen.%player%} to arg-1
                send "&aClaim haklarınızı &e%{gönderilen.%player%}&a adlı oyuncuya göndermek üzeresiniz. Onaylamak için /claimonayla, iptal etmek için /claimiptal yazabilirsiniz."
                wait 30 seconds
                if {gönderilen.%player%} is set:
                    remove {gönderilen.%player%}
                    send "&cİşlem süresi doldu. Claim hakları gönderme işlemi iptal edildi."
        else:
            send "&cBelirttiğiniz oyuncu çevrimiçi değil."

command /claimonayla:
    trigger:
        if {gönderilen.%player%} is set:
            gp user %player% permission claims give to {gönderilen.%player%}
            send "&aClaim haklarınızı başarıyla &e%{gönderilen.%player%}&a adlı oyuncuya gönderdiniz."
            remove {gönderilen.%player%}
        else:
            send "&cBir claim hakları gönderme işlemi bulunmamaktadır."

command /claimiptal:
    trigger:
        if {gönderilen.%player%} is set:
            send "&cClaim hakları gönderme işlemi iptal edildi."
            remove {gönderilen.%player%}
        else:
            send "&cBir claim hakları gönderme işlemi bulunmamaktadır."

Bu işlem tamamını aktarır, GriefPrevention eklentisi oyuncular arasında belirli bir miktar claim haklarını doğrudan transfer etmeyi desteklemiyor maalesef. Bunun için özel bir eklenti yaptırabilirsin
Hocam yapmaya çalıştığım sistemi yaptım placeholderi ayarlamayı başardım ama başka bi sorun var. skriptin son hali bu şekilde taslak gibi
Kod:
options:
    prefix: &cPrefix &8・
command /claimgönder [<player>] [<number>]:
    trigger:
        set {_bonusclaim} to placeholder "griefprevention_bonusclaims"
        if arg 1 is set:
            if arg 2 is set:
                if {_bonusclaim} >= arg 2:
                    if arg-2 is bigger than or equal to 100:
                        send "Çalıştı, bonus claimin: %{_bonusclaim}%"
                    else:
                        send "{@prefix} &eEn az 100 claim gönderebilirsin"
                else:
                    send "{@prefix} &eYeterli claim yok"
            else:
                send "{@prefix} &e/claimgönder <oyuncu> <miktar>"
        else:
            send "{@prefix} &e/claimgönder <oyuncu> <miktar>"
griefprevention_bonusclaims placeholderi şuan 2000 döndürüyor ama ben number a 200 girdiğim zaman yeterli claim yok diyor
Sorun ne bi türlü anlayamadım
 
Konu hala aktif!
 
@VOLT hocam rahatsız ediyorum kusura bakmayın ama yardıma ihtiyacım var ilgilenirmisin?
 
Api olmadan çalışacağını sanmıyorum placeholderlar ile v.s araştırdım fakat internette de yok bu şekilde zaten çokta sağlıklı olmayacaktır veri çekeceğinide sanmıyorum "GriefPreventionAPI.giveClaims(player, amount);" gibi bir işlev döndürmeniz gerekiyor fakat eklenti ile ilgili her hangi bir döküm bulamadım
 
Bunu bir dener misin

JavaScript:
# Oyuncuların aktarabileceği maksimum blok sayısı
define max_blocks = 100

# Grf perms izni
register-permission grf.perms:
  description: Grf perms izni

# /aktar komutu
register-command aktar:
  description: Oyuncunun belirtilen miktarda talep bloğunu başka bir oyuncuya aktarmasına izin verir
  permission: grf.perms
  usage: /aktar <hedef_oyuncu_adı> <miktar>
  aliases:
    - transferclaim
  handler: |
    # Komut parametrelerini al
    $target_player_name = $arg[0]
    $amount = $arg[1]

    # Oyuncunun blok sayısını kontrol et
    $player = get-sender()
    $block_count = gp:claimblocks $player

    # İzin verilen maksimum blok sayısı kontrol et
    if ($amount > $max_blocks):
      send "&cHata: Aktarılacak blok sayısı izin verilen maksimumdan daha fazla"
      cancel

    # Blok sayısı yeterliyse aktar
    if ($block_count >= $amount):
      $target_player = get-player $target_player_name

      # Oyuncunun talep bloklarından çıkar
      gp:subtract-claim-blocks $player $amount

      # Hedef oyuncunun talep bloklarına ekle
      gp:add-claim-blocks $target_player $amount

      send "&aBaşarıyla $amount talep bloğu $target_player_name oyuncusuna aktarıldı."
    else:
      send "&cHata: Yeterli talep bloğunuz yok"
 
Api olmadan çalışacağını sanmıyorum placeholderlar ile v.s araştırdım fakat internette de yok bu şekilde zaten çokta sağlıklı olmayacaktır veri çekeceğinide sanmıyorum "GriefPreventionAPI.giveClaims(player, amount);" gibi bir işlev döndürmeniz gerekiyor fakat eklenti ile ilgili her hangi bir döküm bulamadım
Veri çekebiliyorum hocam o konuda sıkıntı yok mesajlara veriyi atayınca placeholderi çekebiliyorum, kodda sıkıntı var yeterli claim bloğum var ama yok diye gözüküyor hocam discord adım mravci bi istek atsanız özelden hızlıca çözsek çok sevinirim
 
command /claimgönder [<text>] [<number>]:
[TAB]permission: mctr.claimsistemi
[TAB]trigger:
[TAB][TAB]if arg 1 is not set or arg 2 is not set:
[TAB][TAB][TAB]send "Kullanım: /claimgönder [OyuncuAdı] [Gönderilecek Claim sayısı]" to player
[TAB][TAB]if arg-1 is not set:
[TAB][TAB][TAB]send "&cOyuncu Adı giriniz." to player
[TAB][TAB]if arg-2 is not set:
[TAB][TAB][TAB]send "&cGönderilecek Claim sayısı giriniz." to player
[TAB][TAB]else:
[TAB][TAB][TAB]set {_oyuncu} to player
[TAB][TAB][TAB]set {_hedefSayi} to arg-2
[TAB][TAB][TAB]set {_mevcutSayi} to placeholder "griefprevention_claims"
[TAB][TAB][TAB]if {_mevcutSayi} < {_hedefSayi}:
[TAB][TAB][TAB][TAB]send "Claim haklarınız {_hedefSayi} veya daha az olduğu için ekstra haklarınız iptal edildi." to player
[TAB][TAB][TAB]else:
[TAB][TAB][TAB][TAB]set {_mevcutSayi} to 0
[TAB][TAB][TAB][TAB]set {_hedefoyuncu} to arg-1
[TAB][TAB][TAB][TAB]execute console command "AdjustBonusClaimBlock {_oyuncu} {_hedefSayi}"
[TAB][TAB][TAB][TAB]execute console command "AdjustBonusClaimBlock {_hedefOyuncu} -{_hedefSayi}"
[TAB][TAB][TAB][TAB]send "&aBaşarıyla Claim Hakkı gönderdiniz."
 
Son düzenleme:
Kusura bakmayın, skripti güncelledim. Artık o kadar claim hakkı var mı, yok mu, her şeyini inceliyor.

1698328239101.png
 
Son düzenleme:
Tamamdır, Skript gönderimi düzenledim. Tekrar deneyiniz. Ayrıca bu skripti kullanabilmek için '
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.
Skript eklentisini indirmelisiniz.
Dostum skriptini cidden çok inceledim ve birsürü şekilde editlemeyi denedim, bana göre çok karışık veya benim kodladığım şekile göre düzensiz.
Benim yukarıda paylaştığım skript üzerinde bir düzenleme yapabilirsen, sorun bulursan yazarsan daha çok sevinirim yardım etmeye çalıştığın için teşekkürler. Kendi skriptmin hatasını yeniden söyleyeyim griefprevention_bonusclaims placeholderi 512 olarak dönüyor şuan ama 200 claim göndermeye çalıştığımda claim bloğun yok diyor
 
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