Design that allow for Mods

I have certain objects that can be interchanged from the main class to modify the game, like character, stage, and enemy classes. I have classes that extend from these to create different types of characters, stages and enemies... but to really allow for mods I want to change the certain moveset of the player (character class) - which I pretty much have entirely on the main code. What can you do to implement a sort of system that changes moveset when you load a different character? Like changing a projetile button into an attack instead, if the new character can't fire any projectile.

I know a simple way would just be to add an if statement checking who the character is, but its still better if it was object oriented.

Heres what it looks like originally:

http://gamefaqs.servebeer.com/kintaro/game/testmain.html

And here is a Modification (running on the same main class) BTW, sorry for the horrible art. =/

http://gamefaqs.servebeer.com/kintaro/game/testmainsummer.html

The HTML passes a version parameter that tells the main class which game should be run. (original or modified)

[1142 byte] By [Daisuke_J] at [2007-9-30 10:38:09]
# 1
P.S.: Sorry for ripping other (classic) game sprites and sounds... I'll change it as soon as I get my own sprites and sounds.
Daisuke_J at 2007-7-3 19:41:00 > top of Java-index,Other Topics,Java Game Development...