private void OnStringPropertyChanged(Entity sender, StringPropertyChangeEventArgs args) { if (args.OldValue.Equals(args.NewValue)) { return; } var menu = mainMenu.OnChangeMenu.Strings; if (!menu.Enabled || menu.HeroesOnly && !(sender is Hero)) { return; } const Color Color = Color.Cyan; const Logger.Type Type = Logger.Type.String; logger.Write("String property changed", Type, Color, true); logger.Write("Sender name: " + sender.Name, Type, Color); logger.Write("Sender classID: " + sender.ClassId, Type, Color); if (sender.Owner != null) { logger.Write("Owner Name: " + sender.Owner.Name, Type, Color); logger.Write("Owner classID: " + sender.Owner.ClassId, Type, Color); } logger.Write("Property name: " + args.PropertyName, Type, Color); logger.Write("Property values: " + args.OldValue + " => " + args.NewValue, Type, Color); logger.EmptyLine(); }
private bool IsValid(Entity sender, StringPropertyChangeEventArgs args) { if (args.OldValue.Equals(args.NewValue)) { return(false); } if (this.heroesOnly && !(sender is Hero) && !(sender.Owner is Hero)) { return(false); } return(true); }
private void OnStringPropertyChange(Entity sender, StringPropertyChangeEventArgs args) { if (!this.IsValid(sender, args)) { return; } var item = new LogItem(LogType.String, Color.Cyan, "String changed"); item.AddLine("Property name: " + args.PropertyName, args.PropertyName); item.AddLine("Property values: " + args.OldValue + " => " + args.NewValue, args.NewValue); item.AddLine("Sender name: " + sender.Name, sender.Name); item.AddLine("Sender network name: " + sender.NetworkName, sender.NetworkName); item.AddLine("Sender classID: " + sender.ClassId, sender.ClassId); if (sender.Owner is Unit) { item.AddLine("Owner name: " + sender.Owner.Name, sender.Owner.Name); item.AddLine("Owner network name: " + sender.Owner.NetworkName, sender.Owner.NetworkName); item.AddLine("Owner classID: " + sender.Owner.ClassId, sender.Owner.ClassId); } this.log.Display(item); }
private void OnStringPropertyChange(Entity sender, StringPropertyChangeEventArgs args) { Messenger <StringPropertyChangeEventArgs> .Publish(args); }