Çalışmalarda 2B kiremit tabanlı bir stratejim var. Harita ile haritadaki birimler arasındaki ilişkiyi nasıl ele alacağım.
Bir döşeme koordinatı verildiğinde, birimi varsa üzerine getirebilmem gerekir. Aynı zamanda, bir birim verilirse, birimin koordinatını alabilmek isterim.
Bunun için iki çözüm gördüm. İlk çözüm, birimlerin bir koordinat depolaması ve harita deposu birim referanslarının döşemelerinde bulunmasıdır. Bu harita ve birimler arasında döngüsel bir bağımlılık yaratır. Birim hareket ederse haritanın herhangi bir birimin senkronize olduğundan emin olmalıyım.
İkinci çözüm, sadece birimlerin koordinatlarını takip etmelerini sağlamaktır. Bir döşemenin bir birim içerip içermediğini söylemek ve bu birimi elde etmek için, eşleşen koordinatlara sahip bir birim bulduğum tüm birim biriminde döngü yapardım. Bu döngüsel bağımlılık sürmek, ama ilk çözüm haritadan birimleri aramak için O (1) özelliğini kaybeder. Bu, haritayı yol bulma, hareket aralığını belirleme ve belirli bir birim için geçerli hedefler bulma gibi şeyleri düzenli olarak tarayabilmek istediğim için toplanabilir.
Ayrıca birimleri haritada saklayamıyorum (ya da alabilir miyim?). Birimler oyuncu veya yapay zeka ile "ordular" ile ilişkilendirilir. Bir ordu tüm birimlerine kolayca erişebilmeli ve yinelemelidir.
Bu strateji oyunlarında yaygın bir sorun gibi göründüğünden, birim / harita ilişkilerini yönetmek için tarif ettiğim iki şeyin dışında başka kalıplar var mı?