Some refactoring and attack power attribute added.