我正在嘗試在我的遊戲中創建一個靈活的服裝系統。現在我已經有了一個基礎班,所有的童裝班都將從這個基礎班擴展而來,還有額外的界面可以將他們實際穿着的身體部位帶入方程式。這裏是我的代碼:C#人物服裝系統
public class Clothing
{
public EClothingBind[] Types;
public int ID;
public int Priority;
public bool HidesUnderlying;
public AnimatedSpriteMap Graphic;
public Color Blend = Color.White;
public virtual void Update(GameTime gameTime)
{
Graphic.Update(gameTime);
}
public virtual void Draw(Vector2 position)
{
Graphic.Tint = Blend;
Graphic.Draw(position);
}
}
public interface IClothingHead { ... }
public interface IClothingChest { ... }
public interface IClothingLegs { ... }
public interface IClothingFeet { ... }
眼下這並不能很好的工作,因爲設計並沒有真正限制什麼可以實現我的IClothing接口。有沒有辦法將接口實現限制到某些類型?我不想把我的界面變成類,因爲我想要一件衣服,比如說一件長袍,來覆蓋整個身體(實現全部四種)。我有點失落,最好的方式是做什麼,所有的輸入都非常感謝。謝謝。
特定的服裝界面是否添加了特定的功能或純粹用於描述? – Reddog
你能說明你打算如何使用這些IClothing物體嗎?我不確定他們爲什麼需要成爲不同的類型。 –