public PlayerMethodDescriptor(string name, PlayerMethodDelegate method, Type methodReturnType) : base(name, null) { _method = method; _methodReturnType = methodReturnType; }
public PropertyDescriptorCollection GetView() { List <PropertyDescriptor> props = new List <PropertyDescriptor>(); PlayerMethodDelegate del = delegate(Player p) { return(p.name); }; props.Add(new PlayerMethodDescriptor("Name", del, typeof(string))); del = delegate(Player p) { return(p.level.name); }; props.Add(new PlayerMethodDescriptor("Map", del, typeof(string))); del = delegate(Player p) { return(p.group.name); }; props.Add(new PlayerMethodDescriptor("Rank", del, typeof(string))); del = delegate(Player p) { if (p.hidden) { return("hidden"); } if (Server.afkset.Contains(p.name)) { return("afk"); } return("active"); }; props.Add(new PlayerMethodDescriptor("Status", del, typeof(string))); PropertyDescriptor[] propArray = new PropertyDescriptor[props.Count]; props.CopyTo(propArray); return(new PropertyDescriptorCollection(propArray)); }