private void DeleteAbility(byte ID, string username) { for (int i = 0; i < ServerAbilities.Count; i++) { if (ServerAbilities[i].ID == ID && ServerAbilities[i].Username == username) { ServerAbilities.RemoveAt(i); i--; } } }
private void ReceiveAbilityUpdate(NetIncomingMessage inc) { var name = inc.ReadString(); byte ID = inc.ReadByte(); var oldAbility = ServerAbilities.FirstOrDefault(a => a.ID == ID && a.Username == name); if (oldAbility != null) { oldAbility.Username = name; oldAbility.ID = ID; oldAbility.XPosition = inc.ReadInt16(); oldAbility.YPosition = inc.ReadInt16(); oldAbility.Animation.XRecPos = inc.ReadInt16(); oldAbility.Animation.YRecPos = inc.ReadInt16(); oldAbility.Animation.Width = inc.ReadInt16(); oldAbility.Animation.Height = inc.ReadInt16(); } }
private void ReceiveAbilityCreate(NetIncomingMessage inc) { var name = inc.ReadString(); byte ID = inc.ReadByte(); if (!ServerAbilities.Any(a => a.ID == ID && a.Username == Username)) { var newAbility = new AbilityOutline(); newAbility.Username = name; newAbility.ID = ID; newAbility.Type = (AbilityOutline.AbilityType)inc.ReadByte(); newAbility.XPosition = inc.ReadInt16(); newAbility.YPosition = inc.ReadInt16(); newAbility.Direction = inc.ReadDouble(); newAbility.Damage = inc.ReadSByte(); ServerAbilities.Add(newAbility); } }