Make use of MCoreEvent. Make some fields private instead of protected.