miosett
BloodyX#4069
Merhaba, Griefprevention eklentisinin içinde /transferclaim var bunu oyunculara nasıl uygun yaparız direk izni verip oyuncu kullanırsa geri claimi üstüne çekebiliyor tek sorun o oluyor yani ne yapsak düzeltiriz. Skriptlang yada mycommand ile yapmak istiyorum yardımcı olurmusunuz.
options:
# Transfer işlemi için onay süresi (saniye cinsinden)
onay_suresi: 30
# Oyuncu /transferclaim komutunu kullandığında
on command "/transferclaim":
# Komutu iptal et
cancel event
# Eğer komutun argümanı yoksa (yani hedef oyuncu belirtilmemişse)
if size of arguments is 0:
send "&cKullanım: /transferclaim <oyuncu>"
stop
# Hedef oyuncuyu al
set {_hedef} to argument 1 parsed as offline player
if {_hedef} is not set:
send "&cGeçersiz oyuncu adı."
stop
# Oyuncunun bulunduğu claim'i kontrol et
set {_claim} to claim at player's location
if {_claim} is not set:
send "&cBurada bir claim bulunmuyor."
stop
# Claim sahibini kontrol et
set {_sahip} to owner of {_claim}
if {_sahip} is not player:
send "&cBu claim size ait değil, transfer edemezsiniz."
stop
# Onay isteği gönder
send "&aClaim'inizi &e%{_hedef}% &aadlı oyuncuya transfer etmek istiyor musunuz?"
send "&aOnaylamak için &e/transferclaimonay &ayazın. Süre: &e%{onay_suresi}% saniye"
# Onay süresini başlat
set {onay_bekleyen::%player's uuid%} to {_hedef}
wait {onay_suresi} seconds
if {onay_bekleyen::%player's uuid%} is set:
delete {onay_bekleyen::%player's uuid%}
send "&cOnay süresi doldu. Transfer işlemi iptal edildi."
# Oyuncu /transferclaimonay komutunu kullandığında
command /transferclaimonay:
trigger:
# Eğer onay bekleyen bir transfer yoksa
if {onay_bekleyen::%player's uuid%} is not set:
send "&cBekleyen bir transfer isteğiniz yok."
stop
# Hedef oyuncuyu al
set {_hedef} to {onay_bekleyen::%player's uuid%}
# Claim'i transfer et
execute console command "/transferclaim %{_hedef}%"
send "&aClaim başarıyla &e%{_hedef}% &aadlı oyuncuya transfer edildi."
# Onay bekleyen transferi temizle
delete {onay_bekleyen::%player's uuid%}
# transferclaim.yml
commands:
transferclaim:
# Komutun açıklaması
description: "Bir claim'i başka bir oyuncuya transfer etmek için kullanılır."
# Komutun kullanım şekli
usage: "/transferclaim <oyuncu>"
# Komutun izni
permission: griefprevention.transferclaim
# Komutun çalıştırılması
actions:
# Eğer komutun argümanı yoksa (hedef oyuncu belirtilmemişse)
- if: "args.size == 0"
then:
- send: "&cKullanım: /transferclaim <oyuncu>"
else:
# Hedef oyuncuyu kontrol et
- set: "%target% to args[0]"
- if: "%target% is not an offline player"
then:
- send: "&cGeçersiz oyuncu adı."
else:
# Oyuncunun bulunduğu claim'i kontrol et
- set: "%claim% to griefprevention claim at player's location"
- if: "%claim% is not set"
then:
- send: "&cBurada bir claim bulunmuyor."
else:
# Claim sahibini kontrol et
- set: "%owner% to griefprevention owner of %claim%"
- if: "%owner% is not player"
then:
- send: "&cBu claim size ait değil, transfer edemezsiniz."
else:
# Onay isteği gönder
- send: "&aClaim'inizi &e%target% &aadlı oyuncuya transfer etmek istiyor musunuz?"
- send: "&aOnaylamak için &e/transferclaimonay &ayazın. Süre: &e30 saniye"
# Onay bekleyen transferi kaydet
- set: "%pending_transfer::%player's uuid%% to %target%"
# 30 saniye sonra onay bekleyen transferi temizle
- delay: 30s
- if: "%pending_transfer::%player's uuid%% is set"
then:
- delete: "%pending_transfer::%player's uuid%%"
- send: "&cOnay süresi doldu. Transfer işlemi iptal edildi."
transferclaimonay:
# Onay komutu
description: "Claim transferini onaylamak için kullanılır."
actions:
# Eğer onay bekleyen bir transfer yoksa
- if: "%pending_transfer::%player's uuid%% is not set"
then:
- send: "&cBekleyen bir transfer isteğiniz yok."
else:
# Hedef oyuncuyu al
- set: "%target% to %pending_transfer::%player's uuid%%"
# Claim'i transfer et
- execute: "console command /transferclaim %target%"
- send: "&aClaim başarıyla &e%target% &aadlı oyuncuya transfer edildi."
# Onay bekleyen transferi temizle
- delete: "%pending_transfer::%player's uuid%%"
jerryfc
JavaScript:options: # Transfer işlemi için onay süresi (saniye cinsinden) onay_suresi: 30 # Oyuncu /transferclaim komutunu kullandığında on command "/transferclaim": # Komutu iptal et cancel event # Eğer komutun argümanı yoksa (yani hedef oyuncu belirtilmemişse) if size of arguments is 0: send "&cKullanım: /transferclaim <oyuncu>" stop # Hedef oyuncuyu al set {_hedef} to argument 1 parsed as offline player if {_hedef} is not set: send "&cGeçersiz oyuncu adı." stop # Oyuncunun bulunduğu claim'i kontrol et set {_claim} to claim at player's location if {_claim} is not set: send "&cBurada bir claim bulunmuyor." stop # Claim sahibini kontrol et set {_sahip} to owner of {_claim} if {_sahip} is not player: send "&cBu claim size ait değil, transfer edemezsiniz." stop # Onay isteği gönder send "&aClaim'inizi &e%{_hedef}% &aadlı oyuncuya transfer etmek istiyor musunuz?" send "&aOnaylamak için &e/transferclaimonay &ayazın. Süre: &e%{onay_suresi}% saniye" # Onay süresini başlat set {onay_bekleyen::%player's uuid%} to {_hedef} wait {onay_suresi} seconds if {onay_bekleyen::%player's uuid%} is set: delete {onay_bekleyen::%player's uuid%} send "&cOnay süresi doldu. Transfer işlemi iptal edildi." # Oyuncu /transferclaimonay komutunu kullandığında command /transferclaimonay: trigger: # Eğer onay bekleyen bir transfer yoksa if {onay_bekleyen::%player's uuid%} is not set: send "&cBekleyen bir transfer isteğiniz yok." stop # Hedef oyuncuyu al set {_hedef} to {onay_bekleyen::%player's uuid%} # Claim'i transfer et execute console command "/transferclaim %{_hedef}%" send "&aClaim başarıyla &e%{_hedef}% &aadlı oyuncuya transfer edildi." # Onay bekleyen transferi temizle delete {onay_bekleyen::%player's uuid%}
Yukarıdaki skripttir aşagıdaki ise mycommand la dır
MyCommand eklentisini kurduktan sonra, plugins/MyCommand/commands klasörüne yeni bir .yml dosyası oluşturun. Örneğin, transferclaim.yml adında bir dosya oluşturabilirsiniz.
YAML:# transferclaim.yml commands: transferclaim: # Komutun açıklaması description: "Bir claim'i başka bir oyuncuya transfer etmek için kullanılır." # Komutun kullanım şekli usage: "/transferclaim <oyuncu>" # Komutun izni permission: griefprevention.transferclaim # Komutun çalıştırılması actions: # Eğer komutun argümanı yoksa (hedef oyuncu belirtilmemişse) - if: "args.size == 0" then: - send: "&cKullanım: /transferclaim <oyuncu>" else: # Hedef oyuncuyu kontrol et - set: "%target% to args[0]" - if: "%target% is not an offline player" then: - send: "&cGeçersiz oyuncu adı." else: # Oyuncunun bulunduğu claim'i kontrol et - set: "%claim% to griefprevention claim at player's location" - if: "%claim% is not set" then: - send: "&cBurada bir claim bulunmuyor." else: # Claim sahibini kontrol et - set: "%owner% to griefprevention owner of %claim%" - if: "%owner% is not player" then: - send: "&cBu claim size ait değil, transfer edemezsiniz." else: # Onay isteği gönder - send: "&aClaim'inizi &e%target% &aadlı oyuncuya transfer etmek istiyor musunuz?" - send: "&aOnaylamak için &e/transferclaimonay &ayazın. Süre: &e30 saniye" # Onay bekleyen transferi kaydet - set: "%pending_transfer::%player's uuid%% to %target%" # 30 saniye sonra onay bekleyen transferi temizle - delay: 30s - if: "%pending_transfer::%player's uuid%% is set" then: - delete: "%pending_transfer::%player's uuid%%" - send: "&cOnay süresi doldu. Transfer işlemi iptal edildi." transferclaimonay: # Onay komutu description: "Claim transferini onaylamak için kullanılır." actions: # Eğer onay bekleyen bir transfer yoksa - if: "%pending_transfer::%player's uuid%% is not set" then: - send: "&cBekleyen bir transfer isteğiniz yok." else: # Hedef oyuncuyu al - set: "%target% to %pending_transfer::%player's uuid%%" # Claim'i transfer et - execute: "console command /transferclaim %target%" - send: "&aClaim başarıyla &e%target% &aadlı oyuncuya transfer edildi." # Onay bekleyen transferi temizle - delete: "%pending_transfer::%player's uuid%%"
Claim'inizi OyuncuB adlı oyuncuya transfer etmek istiyor musunuz?
Onaylamak için /transferclaimonay yazın. Süre: 30 saniye mesaj gönderir.
Yedek alıp deneyiniz.
BloodyX#4069
options:
# Transfer işlemi için onay süresi (saniye cinsinden)
onay_suresi: 30
on command "transferclaim":
cancel event
if size of arguments is 0:
send "&cKullanım: /transferclaim <oyuncu>"
stop
set {_hedef} to argument 1 parsed as offline player
if {_hedef} is not set or {_hedef} is not online:
send "&cGeçersiz veya çevrimdışı oyuncu adı."
stop
set {_claim} to claim at player's location
if {_claim} is not set:
send "&cBurada bir claim bulunmuyor."
stop
set {_sahip} to owner of {_claim}
if {_sahip} is not player:
send "&cBu claim size ait değil, transfer edemezsiniz."
stop
if {onay_bekleyen::%player's uuid%} is set:
send "&cZaten bekleyen bir transfer isteğiniz var."
stop
send "&aClaim'inizi &e%{_hedef}% &aadlı oyuncuya transfer etmek istiyor musunuz?"
send "&aOnaylamak için &e/transferclaimonay &ayazın. Süre: &e%{onay_suresi}% saniye"
set {onay_bekleyen::%player's uuid%} to {_hedef}
wait {onay_suresi} seconds
if {onay_bekleyen::%player's uuid%} is set:
delete {onay_bekleyen::%player's uuid%}
send "&cOnay süresi doldu. Transfer işlemi iptal edildi."
command /transferclaimonay:
trigger:
if {onay_bekleyen::%player's uuid%} is not set:
send "&cBekleyen bir transfer isteğiniz yok."
stop
set {_hedef} to {onay_bekleyen::%player's uuid%}
execute console command "/trust %{_hedef}%"
send "&aClaim başarıyla &e%{_hedef}% &aadlı oyuncuya transfer edildi."
delete {onay_bekleyen::%player's uuid%}
Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!