static TurnTheKeyAdvancedComponentSolver() { ComponentType = ReflectionHelper.FindType("TurnKeyAdvancedModule"); LeftKeyField = ComponentType.GetField("LeftKey", BindingFlags.Public | BindingFlags.Instance); RightKeyField = ComponentType.GetField("RightKey", BindingFlags.Public | BindingFlags.Instance); ActivatedField = ComponentType.GetField("bActivated", BindingFlags.NonPublic | BindingFlags.Instance); BeforeLeftKeyField = ComponentType.GetField("LeftBeforeA", BindingFlags.NonPublic | BindingFlags.Static); BeforeRightKeyField = ComponentType.GetField("RightBeforeA", BindingFlags.NonPublic | BindingFlags.Static); AfterLeftKeyField = ComponentType.GetField("LeftAfterA", BindingFlags.NonPublic | BindingFlags.Static); AfterLeftKeyField?.SetValue(null, LeftAfterA); LeftKeyTurnedField = ComponentType.GetField("bLeftKeyTurned", BindingFlags.NonPublic | BindingFlags.Instance); RightKeyTurnedField = ComponentType.GetField("bRightKeyTurned", BindingFlags.NonPublic | BindingFlags.Instance); OnLeftKeyTurnMethod = ComponentType.GetMethod("OnLeftKeyTurn", BindingFlags.NonPublic | BindingFlags.Instance); OnRightKeyTurnMethod = ComponentType.GetMethod("OnRightKeyTurn", BindingFlags.NonPublic | BindingFlags.Instance); RightKeyAnimatorField = ComponentType.GetField("RightKeyAnim", BindingFlags.Public | BindingFlags.Instance); LeftKeyAnimatorField = ComponentType.GetField("LeftKeyAnim", BindingFlags.Public | BindingFlags.Instance); }
static TurnTheKeyAdvancedComponentSolver() { AfterLeftKeyField?.SetValue(null, LeftAfterA); }