static void Main(string[] args) { // stream example, you can put a StreamWriter in an EncryptedStream and write an encrypted text to somewhere. // https://en.wikipedia.org/wiki/Decorator_pattern var player = new Player("Ken", Console.Out); player.Play(); var quester = new QuestingPlayer(player); var fighter = new FightingPlayer(quester); fighter.Play(); Console.WriteLine("{0} stopped questing.", player.Name); fighter = new FightingPlayer(player); fighter.Play(); Console.WriteLine(player.ToString()); Console.ReadLine(); }
public override void Play() { Writer.WriteLine("{0} charges an enemy! Wow, much violence, so aggressive.", _player.Name); _player.Play(); }
public override void Play() { Writer.WriteLine("{0} is earning heaps of cash.", _player.Name); _player.Play(); }
public override void Play() { _player.Play(); _player.Level++; Writer.WriteLine("{0} grew stronger. Level: {1}", Name, Level); }