//TODO: will not work due to struct private void CountUp(Achievement a) { a.X++; if (!a.Unlocked && a.X >= a.AmountToUnlock && a.Unlockable) { a.Unlocked = true; OnUnlock.Invoke(a); } }