Konseptler

Özellikler

Tüm bloklar temel tip*e sahiptir. Temel tip örneklerine kir, merdiven ve yapraklar dahildir. Bununla birlikte, bu temel tiplerinden ayırt etmek için, her bloğun farklı özellikleri vardır, bunların her biri sınırlı sayıda değerler alabilir (örn. *podzol kir, tuğla merdiven, meşe yapraklar). Bir blok birden fazla özelliğe sahip olabilir (mesela doğuya bakan, tuğla merdiven).

Examples of block properties

minecraft:dirt[snowy=false,variant=default]
minecraft:dirt[snowy=true,variant=default]
minecraft:dirt[snowy=false,variant=grassless]
minecraft:dirt[snowy=true,variant=grassless]
minecraft:planks[variant=oak]
minecraft:planks[variant=spruce]
minecraft:planks[variant=birch]
minecraft:redstone_wire[east=up,north=up,power=0,south=up,west=up]
minecraft:redstone_wire[east=side,north=up,power=0,south=up,west=up]
minecraft:redstone_wire[east=none,north=up,power=0,south=up,west=up]
minecraft:redstone_wire[east=up,north=side,power=0,south=up,west=up]

Bununla birlikte, bazı özellikler, kısa ömürlüdür – yalnızca oyun çalışırken bulunurlar. Değerleri kayıt dosyasına yazılmaz çünkü değerleri otomatik olarak algılanabilir. Örneğin, kablolu Kızıltaş, güçleri olup olmadığı çevreye göre otomatik olarak tespit edildi. (açık olan bir kaldıraç var mı?). Bu durumda, yukarıda gösterildiği gibi minecraft:redstone_wire ın power özelliği kısa ömürlü bir özelliktir.

Yazma esnasında, Minecraft hala blok verilerini temel bir tip için 12 bitlik eski bir formatta saklar (4096 olası temel tipleri) ve “metadata” için 4 bit (16 olası temel tip başına değer). Bununla birlikte, özellikler eski sebeplerden dolayı metadata’ya doğrudan eşleme yapmaz: örneğin, fırın bloğu iki ana tipten oluşur (şu anda eritmeye karşı eritme değil); her biri metadata’larını hiç kullanmıyor. Diğer yandan, kütüler metadata’ları tam olarak kullanırlar, fakat özelliklerin kombinasyonu olası 16 değeri aşıyor (ağaç türünü ve yönünü düşün), kütükler iki temel tip üzerinde bölünmelidir.

Gelecekte yalnızca bir adet 16 bitlik sayı olacak (baz tipin 65536 kombinasyonu ve özellikleri). Bloklara otomatik olarak bir ID atanacak ve bu atama işlemi dünya kayıt dosyasında saklanacak. Aşağıda gösterildiği gibi:

0 => minecraft:dirt[snowy=false,variant=default]
1 => minecraft:dirt[snowy=true,variant=default]
2 => minecraft:dirt[snowy=false,variant=grassless]
3 => minecraft:dirt[snowy=true,variant=grassless]
4 => minecraft:planks[variant=oak]
5 => minecraft:planks[variant=spruce]
etc.

Karo Varlık Verisi

65536 olası kombinasyonları ile, envanter gibi bir çok bilgiyi depolamak mümkün değildir, bu yüzden * bazı * blokların verilere sahip olmalarının ek bir yolu vardır: karo birimleri.

Karo varlıkları kendileri Java nesneleridir (‘Göğüs’ sınıfı gibi). Normalde, Minecraft kodu, bir örtüsünü elde ederek ve bunu normal bir nesne (“world.getTileEntity (position).getInventory ()”) gibi yöntemler veya alanlar olarak adlandırarak verilere erişir. Döşeme varlıklarının kaydetme dosyasına yazıldığı zaman, NBT biçimi <http://minecraft.gamepedia.com/NBT_format> _ içinde saklanır.

Tüyo

Bazı şeyler, resim yapmak gibidir, aslında varlıklardır.

Ancak, karo varlıklar render’ı geçersiz kılabilir ve böylece normal bir blok gibi gözükmezler, ancak bu genellikle yetersizdir ve bir müşterinin kare hızının düşmesine neden olur.