I write Android game where one unit has 3 audio stages:
- get hit
- attack
- dead
So I added to my Unit Object followed code:
MediaPlayer mMediaPlayerGetHit = null;
MediaPlayer mMediaPlayerDead = null;
MediaPlayer mMediaPlayerAttack = null;
In constructor
:
mMediaPlayerAttack=MediaPlayer.create(context,R.raw.fly_monster_attack1);
mMediaPlayerDead=MediaPlayer.create(context,R.raw.fly_monster_death1);
mMediaPlayerGetHit=MediaPlayer.create(context,R.raw.fly_monster_gethit1);
mMediaPlayerAttack.setOnPreparedListener(this);
mMediaPlayerDead.setOnPreparedListener(this);
mMediaPlayerGetHit.setOnPreparedListener(this);
....
Now it's seem messy,
Hmm, 3 player objects, one per unit state.
I'm sure its wrong way and I need to change each time MediaPlayer
source regarding to unit state,
But here comes performance problem:
Lets say my MediaPlayer
has took sources attack
.
After, I switch it to get hit
, after once more to attack
.
Maybe I need to save instance of MediaPlayer
with attack
somehow and reuse it?
I don't see that its good way hundreds times switch my poor MediaPlayer
.
Any Ideas?
Thank you,