Çözüldü Oyuncular A haritasında...

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

Cheeisy

Cheeisy#2837
Katılım
27 Mayıs 2019
Mesajlar
302
Elmaslar
259
Puan
4.760
Minecraft
Cheeisy

Discord:

Cheeisy#2837

Oyuncular A haritasında damage yemesinler
Oyuncular A haritasında blok kıramasınlar
 
Yani oyuncular haritanın içindeyken damage yemesin veya blok kıramasın. Şöyle bir mantık veriyorum:
  • Yapılan etkinliğin dinleyicisini oluştur. (on damage, on break gibi.)
  • Oyuncunun haritasını kontrol et.
  • Eğer harita o harita ise etkinliği iptal et.
Anahtar kelimeler: on damage of player, on break, cancel event, if-else, if player is in world "deneme".
 
Yani oyuncular haritanın içindeyken damage yemesin veya blok kıramasın. Şöyle bir mantık veriyorum:
  • Yapılan etkinliğin dinleyicisini oluştur. (on damage, on break gibi.)
  • Oyuncunun haritasını kontrol et.
  • Eğer harita o harita ise etkinliği iptal et.
Anahtar kelimeler: on damage of player, on break, cancel event, if-else, if player is in world "deneme".
anahtar kelime dedin bütün kodu yazdın aga
 
anahtar kelime dedin bütün kodu yazdın aga
Yalnız gerçekten JHKASDKAJSDJKAHS

Şaka bir yana, bazen şöyle bir durum oluyor, mesela adam zaten skripti yazmıştır fakat o kelimeyi bulamamıştır, o syntax/condition'ı bulamamıştır bu yüzden kalmıştır elinde. Çok oluyor o durumlar, direk syntaxı aramak yerine skripti istiyorlar. (Genel konuşuyorum konu ile alakasız.) Eğer sadece kelimeyi arıyorsa zaten verdiğim anahtar kelimeleri araştırıp kendi yazabilir. Amacım burada copy paste yaptırtmak değil, kişinin kendi yazmasını sağlatmak.
 
Yalnız gerçekten JHKASDKAJSDJKAHS

Şaka bir yana, bazen şöyle bir durum oluyor, mesela adam zaten skripti yazmıştır fakat o kelimeyi bulamamıştır, o syntax/condition'ı bulamamıştır bu yüzden kalmıştır elinde. Çok oluyor o durumlar, direk syntaxı aramak yerine skripti istiyorlar. (Genel konuşuyorum konu ile alakasız.) Eğer sadece kelimeyi arıyorsa zaten verdiğim anahtar kelimeleri araştırıp kendi yazabilir. Amacım burada copy paste yaptırtmak değil, kişinin kendi yazmasını sağlatmak.
Yaptığın gerçekten iyi güzel hoş bir şey fakat bunu "Skript" ile öğretmek yerine JAVA ile öğretmek hem kendin için hem de başkaları için daha iyi olabilir..

Bir dünyada blok kırmakla hasarı engellemek skriptte olduğu gibi java dilinde de zor değil.
 
Java:
    public void onEnable() {
        Bukkit.getPluginManager().registerEvents(this,this);
    }

    @EventHandler
    public void e(EntityDamageEvent e) {
        if(e.getEntity() instanceof Player) {
            Player p = (Player) e.getEntity();
            if(p.getWorld().getName().equals("A")) {
                e.setCancelled(true);
            }
        }
    }
    @EventHandler
    public void e(BlockBreakEvent e) {
        Player p = (Player) e.getPlayer();
        if(p.getWorld().getName().equals("A")) {
            e.setCancelled(true);
        }
    }
 
Java:
    public void onEnable() {
        Bukkit.getPluginManager().registerEvents(this,this);
    }

    @EventHandler
    public void e(EntityDamageEvent e) {
        if(e.getEntity() instanceof Player) {
            Player p = (Player) e.getEntity();
            if(p.getWorld().getName().equals("A")) {
                e.setCancelled(true);
            }
        }
    }
    @EventHandler
    public void e(BlockBreakEvent e) {
        Player p = (Player) e.getPlayer();
        if(p.getWorld().getName().equals("A")) {
            e.setCancelled(true);
        }
    }
Skript bölümündeyiz, java değil
ki zaten break eventinde neden event.getPlayer() ı (Player) ile castlediniz ? .p zaten bloğu kıran sadece oyuncu olabilir

Kod:
on damage:
    if world of victim is "A":
        if victim is a player:
            cancel event

on break:
    if world of player is "A":
        cancel event
 
Son düzenleme:
Skript bölümündeyiz, java değil
ki zaten break eventinde neden event.getPlayer() ı (Player) ile castlediniz ? .p zaten bloğu kıran sadece oyuncu olabilir

Kod:
on damage:
    if world of victim is "A":
        if victim is a player:
            cancel event

on break:
    if world of player is "A":
        cancel event
Alışkanlık üsteki @Renacr adlı üyenin yorumuna hitaben yaptım o yorumu :)
 
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