在我的游戏中,子弹不断创建,因此我想为此使用Pool类.然而,问题是我有很多类型的子弹.所有这些都扩展了相同的父类Projectile.目前有19种子弹.Pool为每个人创建一个类是个坏主意.还有更多可能会来.
我试图施展BallistaArrow arrow = (BallistaArrow) world.getPool().obtain();.但是我得到了施放异常:
[..].mygame.Projectile cannot be cast to [...].mygame.engineer.BallistaArrow .
BallistaArrow是Projectile的儿童类.
有没有办法解决这个问题,所以我可以Pool为所有Projectile扩展对象都有一个类?