Untitled
// USAGE: if (_controlValuePopulation.IsChanged(GGame.population)) { textPopulation.text = SMisc.FormatNumberRegional(GGame.population); } public struct controlValue<T, U, V, W> where T : IEquatable<T> where U : IEquatable<U> where V : IEquatable<V> where W : IEquatable<W> { private T _value1; private U _value2; private V _value3; private W _value4; public bool IsChanged(T value1_, U value2_, V value3_, W value4_) { bool isChanged = !value1_.Equals(_value1) || !value2_.Equals(_value2) || !value3_.Equals(_value3) || !value4_.Equals(_value4); if (isChanged) { _value1 = value1_; _value2 = value2_; _value3 = value3_; _value4 = value4_; } return isChanged; } } public struct controlValue<T, U, V> where T : IEquatable<T> where U : IEquatable<U> where V : IEquatable<V> { private T _value1; private U _value2; private V _value3; public bool IsChanged(T value1_, U value2_, V value3_) { bool isChanged = !value1_.Equals(_value1) || !value2_.Equals(_value2) || !value3_.Equals(_value3); if (isChanged) { _value1 = value1_; _value2 = value2_; _value3 = value3_; } return isChanged; } } public struct controlValue<T, U> where T: IEquatable<T> where U:IEquatable<U> { private T _value1; private U _value2; public bool IsChanged(T value1_, U value2_) { bool isChanged = !value1_.Equals(_value1) || !value2_.Equals(_value2); if (isChanged) { _value1 = value1_; _value2 = value2_; } return isChanged; } } public struct controlValue<T> where T : IEquatable<T> { private T _value1; public T GetValue() { return _value1; } public bool IsChanged(T value1_) { bool isChanged = !value1_.Equals(_value1); if (isChanged) { _value1 = value1_;} return isChanged; } }
Leave a Comment