Hepsini değil, sadece oyuncu sol tıklayınca atılan ateş topunun hasarından bahsediyorum.on damage:
damage cause is fireball
cancel event
O kadarda zor değil ._.Java olsa atılan ateş topuna entity metadata koyup,EntityDamageByEntity event'de kontrol et derdim.
Metadata olayları hatırladığım kadarıyla skript'de vardı,fakat Skriptindeki olay baya sık yapılacak gibi duruyor.Sık yapılan olaylar ve Skript...
Ne kadar sağlıklı olur bilmem,entity metadata araştır.
https://hub.spigotmc.org/javadocs/spigot/org/bukkit/metadata/Metadatable.html
leftclick:
shoot a fireball
set metadata of fireball to 1
damage:
damage cause is fireball:
metadata of fireball is 1:
cancel event
Teşekkürler deneyeceğim.O kadarda zor değil ._.
Hata olabilir, telefondan yazdım. Birde RandomSK gerektiriyor.JavaScript:leftclick: shoot a fireball set metadata of fireball to 1 damage: damage cause is fireball: metadata of fireball is 1: cancel event
damage cause is fireball
fireball diye bir damage cause yok, fireball ifadesi yok ve metadata kodu yanlış.JavaScript:damage cause is fireball: metadata of fireball is 1:
on leftclick:
shoot fireball from player
add "{ExplosionPower:0}" to nbt of last shot projectile
Ufak bir araştırmayla buna ulaştım: "https://www.spigotmc.org/threads/what-is-nms-metadata-and-nbt-exactly.75197/" Bu arkadaşda yalan mı söylüyor acaba? Yanlış anlaşılmasın tam olarak bilgim yok fakat bildiğim kadarıyla böyle.
Bak hala anlatamıyorum.Entity'e veri saklarken NBT kullanmak sakat iş.
Mesela senin kullandığın key maksimum 127 olabilir.Fireball'ın patlama gücüne etki ediyor.
Bu değer 127'i aşarsa ve diğer client(istemciler,oyuncular)'ların bilgisayarları bu entity'i oyunlarına yüklerse,verilen aralıkta olmadığı için veri taşması olacak.Veritaşmasını gören minecraft amcada crash verecek.İşin kötü yanı bu entity silinene kadar oyundan atılan oyuncular tekrar girmeye çalıştıklarında da crash yiyecek.
Hayır Metadata bukkit'in içinde bulunan koca bir hashmap.Bu yüzden metadata belirtirken ,metadayı gönderen plugin'in objeside verilmek zorunda.(Skriptde verilmek zorunda değil,eklenti kendi yazıyor zaten onu).
Bukkit'i decompile ederek inceleyebilirsin.
Dostum yanlış anlamışsın.Ufak bir araştırmayla buna ulaştım: "https://www.spigotmc.org/threads/what-is-nms-metadata-and-nbt-exactly.75197/" Bu arkadaşda yalan mı söylüyor acaba? Yanlış anlaşılmasın tam olarak bilgim yok fakat bildiğim kadarıyla böyle.
Sağol bu anlaşılır açıklaman için şimdi taşlar yerine oturuyor Ayrıca şu makaleyi buldum benim gibi kafası karışan varsa göz atabilir: 'https://jerom.me/bukkit-metadata-how-not-to-be-confused/'. Ayrıca "Metadatable" kelimesi metadatalanabilir anlamına geliyor diye biliyordum? Entityler için metadatable diyorlar genelde.Dostum yanlış anlamışsın.
Metadata programcılıkta kullanılan bi terim o yüzden kafan karışmış.
Alt bilgi anlamına geliyor,herhangi bir obje için verilen alt bilgilerin depolanmasında metadating diyebiliriz yani.
Minecraft entityleri için NBT'yi metadata sistemi olarak kullanıyor.
Bukkit entityleri için kendine ait bir metadata sistemi kullanıyor(İsmi yok ama herkes genelde Metadatable der)
Eşyalarda NBT kullanmak sorun çıkarmaz,fakat entitylerde nbt saklamak hoş olmayan sorunlara yol açabilir(Crashlar,eşyanın bozulup mor görünmesi vs)
Hani skript'de bukkit'i kullandığına göre,minecraft'ın kendi kodunda olan alt bilgileri kurcalayıp entityleri sapıttırmaktansa,bukkit'in metadatablesi ile hızlı bir şekilde kendi alt bilgilerini oluşturmak daha mantıklı değil mi ?
Kabalık? Delikanlılığa leke sürdürmemek? Sanırım sen çok yaşadın bu durumu. Bu noktada kendini aşmaman gerektiğini, terbiyeni korumanı ve fazla egolu olmamanı söyler konuyu terk ederim.
He diyelim olsun be yakışıklı kardeşimKabalık? Delikanlılığa leke sürdürmemek? Sanırım sen çok yaşadın bu durumu. Bu noktada kendini aşmaman gerektiğini, terbiyeni korumanı ve fazla egolu olmamanı söyler konuyu terk ederim.
O tarz bi işlemi Skript ile yapamıycağından, konu ile alakasız oluyor karahancımNe NBT, ne Metadatable. Burada en temiz iş Entity UUID'sini alıp direkt onu karşılaştırmak olur ha ama NBT mi yoksa Metadatable mı derseniz Metadatable burada bariz döver. Bakın Skript veya Java demedim zira Skript zaten Java'dan kötü, hangi yöntem daha doğru olur onu konuşuyoruz şu kapanmış hesaplara tekrar dönmenin bir lüzmu olduğunu sanmıyorum. İyi forumlar ve iyi günler dilerim, Burak öpüyorum seni de