MoveTo ve Attack eylemleri gibi şeyleri bir kereden fazla programlamak zorunda kalmadan birçok farklı birim oluşturmanın bir yolunu istiyorum
Gördüğüm gibi, bunu yapmanın 2 yolu var.
- Ne yapabileceğini / yapamayacağını belirten bayraklara sahip tek bir genel Unit sınıfı (ardından statik bir dizide örnekler oluşturun ve gerektiğinde bunları yakalayın)
- (Saldırı, Hasat, Devriye) gibi Birime özgü eylemler için soyut yöntemlerle soyut birim sınıfı , bu da birim aslında bir şey hasat edemese bile alt sınıflara uygulanması gerekir .
Bunu yapmanın ilk yolu en basit gibi görünüyor, ancak birimlerin çoğunluğu için kullanılmayan kod bir sürü sahip olacaktı.
ikinci yol da işe yarayabilir. Ama kaynakları toplayabilecek iki farklı birime sahip olmaya karar verirsem, iki farklı sınıfta aynı kodu kullanacağım, bu da bunu yapmanın doğru yolu gibi görünmüyor.
Bu, bu soruna doğru bir yaklaşım mı?
AoE gibi bir oyunda, her birimin varsaydığım şey, bir tür Eylemler / Siparişler Listesi var, buna benzer bir şeye nasıl ulaşacağımı gerçekten bilmek istiyorum, burada her bir Eylem / Sipariş'i bir kez kodlayabiliyorum ve daha sonra söz konusu Eylem'e ihtiyaç duyan tüm birimlere verin.
Eğer net değilim (son derece makul) veya tam olarak ne aradığım hakkında daha fazla bilgiye ihtiyacınız varsa, bana bir yorumda sorun.