在我的游戏中不断创建子弹,因此我想为此使用Pool
类。但是,问题是我有很多类型的子弹。它们都扩展同一个父类Projectile
。目前有19种子弹。为每个人创建一个Pool
类是个坏主意。以后可能还会有更多。
我试着投BallistaArrow arrow = (BallistaArrow) world.getPool().obtain();
。但是我遇到了演员异常:
[..].mygame.Projectile cannot be cast to [...].mygame.engineer.BallistaArrow
.
BallistaArrow 是 Projectile 的子类。
有没有办法解决这个问题,以便我可以为所有扩展对象提供一个Pool
类?Projectile