public void StartsCrying() { Console.WriteLine($"{Name} started crying."); if (Cries != null && Cries.GetInvocationList().Length > 0) { // solo la classe che ha dichiarato l'evento // può invocarlo. // Fuori dalla classe il metodo Invoke non esiste. // Il metodo Invoke rispetta il Delegate dell'evento. Cries.Invoke(this); Console.WriteLine($"{Name} has been comforted."); } else { Console.WriteLine($"Nobody wants to comfort {Name}!"); Console.WriteLine($"{Name} goes to the Dark Side!"); } }
public void BeginsToCry(int intensity) { Console.WriteLine($"Bambino {Name} comincia a piangere con intensità {intensity}"); Cries.Invoke(this, intensity); }