// Token: 0x06003B04 RID: 15108 RVA: 0x000D0B48 File Offset: 0x000CED48 public float GetFaceValue(global::LightStyle.Mod.Element element) { switch (element) { case global::LightStyle.Mod.Element.Red: return(this.r); case global::LightStyle.Mod.Element.Green: return(this.g); case global::LightStyle.Mod.Element.Blue: return(this.b); case global::LightStyle.Mod.Element.Alpha: return(this.a); case global::LightStyle.Mod.Element.Intensity: return(this.intensity); case global::LightStyle.Mod.Element.Range: return(this.range); case global::LightStyle.Mod.Element.SpotAngle: return(this.spotAngle); default: throw new ArgumentOutOfRangeException("element"); } }
// Token: 0x06003B49 RID: 15177 RVA: 0x000D1B14 File Offset: 0x000CFD14 public DefaultSimulation(global::LightStyleDefault def) : base(def) { float?value = new float?(1f); for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { this.mod[element] = value; } }
// Token: 0x06003B1F RID: 15135 RVA: 0x000D1338 File Offset: 0x000CF538 public static global::LightStyle.Mod operator /(global::LightStyle.Mod a, float b) { for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { if ((a.mask & global::LightStyle.Mod.ElementToMask(element)) == global::LightStyle.Mod.ElementToMask(element)) { a.SetFaceValue(element, a.GetFaceValue(element) / b); } } return(a); }
// Token: 0x06003B11 RID: 15121 RVA: 0x000D105C File Offset: 0x000CF25C public static global::LightStyle.Mod operator |(global::LightStyle.Mod a, global::LightStyle.Mod b) { for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { if ((a.mask & global::LightStyle.Mod.ElementToMask(element)) != global::LightStyle.Mod.ElementToMask(element) && (b.mask & global::LightStyle.Mod.ElementToMask(element)) == global::LightStyle.Mod.ElementToMask(element)) { a.SetModify(element, b.GetFaceValue(element)); } } return(a); }
// Token: 0x06003B1E RID: 15134 RVA: 0x000D12E8 File Offset: 0x000CF4E8 public static global::LightStyle.Mod operator *(global::LightStyle.Mod a, float b) { global::LightStyle.Mod result = a; for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { if ((a.mask & global::LightStyle.Mod.ElementToMask(element)) == global::LightStyle.Mod.ElementToMask(element)) { result.SetFaceValue(element, a.GetFaceValue(element) * b); } } return(result); }
// Token: 0x06003B10 RID: 15120 RVA: 0x000D1000 File Offset: 0x000CF200 public static global::LightStyle.Mod operator /(global::LightStyle.Mod a, global::LightStyle.Mod b) { global::LightStyle.Mod.Mask mask = a.mask & b.mask; for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { if ((mask & global::LightStyle.Mod.ElementToMask(element)) == global::LightStyle.Mod.ElementToMask(element)) { a.SetFaceValue(element, a.GetFaceValue(element) / b.GetFaceValue(element)); } } return(a); }
// Token: 0x06003B42 RID: 15170 RVA: 0x000D1A2C File Offset: 0x000CFC2C protected override void Simulate(double currentTime) { float curveValue = base.creator.GetCurveValue(currentTime - this.startTime); if (this.lastValue == null || this.lastValue.Value != curveValue) { this.lastValue = new float?(curveValue); for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { this.mod[element] = this.lastValue; } } }
// Token: 0x17000B70 RID: 2928 public float?this[global::LightStyle.Mod.Element element] { get { if (this.Contains(element)) { return(new float?(this.GetFaceValue(element))); } return(null); } set { if (value != null) { this.SetFaceValue(element, value.Value); this.SetModify(element); } else { this.ClearModify(element); } } }
// Token: 0x06003B0C RID: 15116 RVA: 0x000D0E18 File Offset: 0x000CF018 public static global::LightStyle.Mod Lerp(global::LightStyle.Mod a, global::LightStyle.Mod b, float t, global::LightStyle.Mod.Mask mask) { b.mask &= mask; if (b.mask == (global::LightStyle.Mod.Mask) 0) { return(a); } a.mask &= mask; if (a.mask == (global::LightStyle.Mod.Mask) 0) { return(b); } global::LightStyle.Mod.Mask mask2 = a.mask & b.mask; if (mask2 != (global::LightStyle.Mod.Mask) 0) { float num = 1f - t; if (mask != (global::LightStyle.Mod.Mask) 0) { for (global::LightStyle.Mod.Element element = global::LightStyle.Mod.Element.Red; element < (global::LightStyle.Mod.Element) 7; element++) { if ((mask2 & global::LightStyle.Mod.ElementToMask(element)) == global::LightStyle.Mod.ElementToMask(element)) { float faceValue = a.GetFaceValue(element); float faceValue2 = b.GetFaceValue(element); float value = faceValue * num + faceValue2 * t; a.SetFaceValue(element, value); } } } } if (mask2 != a.mask) { a |= b; } return(a); }
// Token: 0x06003B05 RID: 15109 RVA: 0x000D0BBC File Offset: 0x000CEDBC public void SetFaceValue(global::LightStyle.Mod.Element element, float value) { switch (element) { case global::LightStyle.Mod.Element.Red: this.r = value; break; case global::LightStyle.Mod.Element.Green: this.g = value; break; case global::LightStyle.Mod.Element.Blue: this.b = value; break; case global::LightStyle.Mod.Element.Alpha: this.a = value; break; case global::LightStyle.Mod.Element.Intensity: this.intensity = value; break; case global::LightStyle.Mod.Element.Range: this.range = value; break; case global::LightStyle.Mod.Element.SpotAngle: this.spotAngle = value; break; default: throw new ArgumentOutOfRangeException("element"); } }
// Token: 0x06003B09 RID: 15113 RVA: 0x000D0CCC File Offset: 0x000CEECC public static global::LightStyle.Mod.Mask ElementToMaskNot(global::LightStyle.Mod.Element element) { return((global::LightStyle.Mod.Mask)(~(1 << (int)element) & 127)); }
// Token: 0x06003B03 RID: 15107 RVA: 0x000D0B30 File Offset: 0x000CED30 public void ToggleModify(global::LightStyle.Mod.Element element) { this.mask ^= global::LightStyle.Mod.ElementToMask(element); }
// Token: 0x06003B02 RID: 15106 RVA: 0x000D0B18 File Offset: 0x000CED18 public void ClearModify(global::LightStyle.Mod.Element element) { this.mask &= global::LightStyle.Mod.ElementToMaskNot(element); }
// Token: 0x06003B01 RID: 15105 RVA: 0x000D0AF8 File Offset: 0x000CECF8 public void SetModify(global::LightStyle.Mod.Element element, float assignValue) { this.SetFaceValue(element, assignValue); this.mask |= global::LightStyle.Mod.ElementToMask(element); }
// Token: 0x06003B00 RID: 15104 RVA: 0x000D0AE0 File Offset: 0x000CECE0 public void SetModify(global::LightStyle.Mod.Element element) { this.mask |= global::LightStyle.Mod.ElementToMask(element); }
// Token: 0x06003AFF RID: 15103 RVA: 0x000D0AD0 File Offset: 0x000CECD0 public bool Contains(global::LightStyle.Mod.Element element) { return(this.AllOf(global::LightStyle.Mod.ElementToMask(element))); }