public void update(long elapsedTime) {
		super.update(elapsedTime);
		start += elapsedTime;
		if (movement != null && movement.get(index).size() > 2) {
			if (start / 100.0 > movement.get(index).get(0)) {
				start = 0;
				index++;
				index %= movement.size();
			}
			moveX(movement.get(index).get(1));
			moveY(movement.get(index).get(2));
		}
		for (BossWeakPoint bwp : myWeakPoints) {
			if (!bwp.isHit())
				bwp.update(elapsedTime);
		}
		for (BossPart bp : myBossParts){
			bp.update(elapsedTime);
		}
		for (Weapon w : myWeapons){
			w.fire(elapsedTime, w.getX()+getX(), w.getY()+getY());
		}
		checkDead();
	}