Так что у меня возникла проблема с добавлением в ArrayList или связанный список (попробовали оба, но каждый сбой был одинаковым). Я работаю над учебником AndEngine (Jimvaders, который отлично работал), но при адаптации его к моему собственному проекту он работает неправильно. В основном, когда я стреляю в пулю, он добавляется в список пуль, но в моем проекте, пытаясь коснуться ArrayList или LinkedList, находящегося в GameScene, из класса playerChar приводит к сбою всей игры. Я еще ничего не сделал с этим списком, так что просто добавление моей PlayerBullet в список, который вызывает проблему, насколько я могу судить.Игра Сбой при добавлении в массив или компоновщик Список
GameScene:
public ArrayList<PlayerBullet> bulletList;
в моем классе PlayerChar
public void shoot(int playerFacing) { //TODO
GameScene scene = (GameScene) BaseActivity.getSharedInstance().getCurrentScene();
float shootX = 2;
PlayerBullet b =(PlayerBullet)PlayerBulletPool.sharedBulletPool().obtainPoolItem();
if (playerFacing == -1){
shootX *= -1;
}
else{
shootX += this.getWidth();
}
b.sprite.setPosition(this.getX() + shootX, this.getY()+(this.getHeight()/2));
MoveXModifier mod = new MoveXModifier(0.5f, b.sprite.getX(), mCamera.getCenterX() + (mCamera.getWidth()*playerFacing));
b.sprite.setVisible(true);
b.sprite.detachSelf();
scene.attachChild(b.sprite);
//Log.v("checkin", "works to here");
scene.bulletList.add(b);//<---------Crashes Here, works fine if this line is commented out
//Log.v("checkin", "still working?");
b.sprite.registerEntityModifier(mod);
}
Любое понимание будет полезным. Спасибо
Вы правильно инициализировали массив bulletList? У вас есть 'public ArrayList bulletList ;, но вы никогда не создадите новый массив. Например, вам может потребоваться сказать 'public ArrayList bulletList = new ArrayList ();' –
Сбой при ошибке сбрасывается? Если да, можете ли вы показать нам ошибку? – adchilds
Да, я забыл инициализировать его. Исправлена проблема. Спасибо за помощь. – Gjallerhorn