public void ApplyDrug(Drug drug) { Drug.DrugState state = drugs.Where(d => d.drug == drug).FirstOrDefault() ?? drug.GetDrugState(this); state.strength++; drug.Apply(state); if (!drugs.Contains(state)) { drugs.Add(state); } }