Looks good!
Just a few nit :
>
> GnuLauncher::GnuLauncher() :
> - WeaponLauncher(WEAPON_GNU, "gnulauncher", new ExplosiveWeaponConfig(),
> VISIBLE_ONLY_WHEN_INACTIVE),
> + WeaponLauncher(WEAPON_GNU, "gnulauncher", new ExplosiveWeaponConfig()),
>current_gnu(NULL),
>gnu_death_time(0)
The huge advantage is that you can now change and add weapons much easier:
You don't have to think of "How will the weapon behave for the other wormux
instance" anymore, as the other wormux instance will call the same methods to
use the weapon.
---
lib/wormux/include/WORMUX_action.h |6 +--