public static void Main()
Character c = new Character();
Camera camera = new Camera ();
c.AddOnHitListener(ui.UpdateHealthBar);
c.AddOnHitListener(camera.ShakeCamera);
public delegate void OnHitDelegate (int damage);
public OnHitDelegate OnHit;
public void Damage (int damage) {
public void AddOnHitListener (OnHitDelegate listener) {
public void RemoveOnHitListener (OnHitDelegate listener) {
public void UpdateHealthBar (int damage) {
Console.WriteLine ("Updating health bar");
public void ShakeCamera (int damage) {
Console.WriteLine ("Shaking camera");