public override void ReceiveMessage(IGameMessage msg) { switch (msg.EventId) { case (int)MessageId.NetworkReinitialize: case (int)MessageId.Initialize: MarkAllAsDirty(); break; case (int)MessageId.NetworkPrepare: Sync(); break; case (int)MessageId.LevelUp: Levelup(msg.AsLevelUp().Skill); break; case (int)MessageId.GainExperience: GainExp(msg.AsExperienceGain()); break; } }