// [TypeInfo RVA: 0x0]
public class snapturn : MonoBehaviour
{
	public UnityEngine.Transform turnRoot; // 0x20
	public float snapAngle; // 0x28
	public float inputThreshold; // 0x2C
	public float snapCooldown; // 0x30
	public bool useRightThumbstick; // 0x34
	private bool canSnap; // 0x35
	private float nextSnapTime; // 0x38

	// RVA: 0x3253884 VA: 0x781893E884
	private void Update();
	/*
	 *   undefined *puVar1;
	 *   ulong uVar2;
	 *   void *extraout_x1;
	 *   undefined4 uVar3;
	 *   void *pvVar4;
	 *   float fVar5;
	 *   float fVar6;
	 *
	 *   puVar1 = PTR_DAT_070c2018;
	 *   if ((bRam000000000754aa8a & 1) == 0) {
	 *     func_0x031fdc8c(PTR_DAT_070c2018);
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8);
	 *     bRam000000000754aa8a = 1;
	 *     methodInfo = extraout_x1;
	 *   }
	 *   uVar3 = 1;
	 *   if (this.useRightThumbstick != false) {
	 *     uVar3 = 2;
	 *   }
	 *   if (*(int *)(*(long *)puVar1 + 0xe4) == 0) {
	 *     func_0x031fde08(*(long *)puVar1,methodInfo);
	 *   }
	 *   fVar5 = (float)OVRInput.Get(uVar3,0x80000000);
	 *   if (this.inputThreshold <= ABS(fVar5)) {
	 *     if ((this.canSnap != false) &&
	 *        (fVar6 = UnityEngine.Time.get_time(),
	 *        this.nextSnapTime <= fVar6)) {
	 *       pvVar4 = this.turnRoot;
	 *       if (*(int *)(*(long *)typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8 + 0xe4) == 0) {
	 *         func_0x031fde08();
	 *       }
	 *       uVar2 = UnityEngine.Object.op_Inequality(pvVar4,null);
	 *       if ((uVar2 & 1) == 0) {
	 *         pvVar4 = UnityEngine.Component.get_transform(this);
	 *       }
	 *       else {
	 *         pvVar4 = this.turnRoot;
	 *       }
	 *       if (pvVar4 == null) {
	 *         IL2CPP.ThrowNullReferenceException();
	 *       }
	 *       fVar6 = -this.snapAngle;
	 *       if (0.0 <= fVar5) {
	 *         fVar6 = this.snapAngle;
	 *       }
	 *       UnityEngine.Transform.Rotate(0,fVar6,0,pvVar4,0);
	 *       this.canSnap = false;
	 *       fVar5 = UnityEngine.Time.get_time();
	 *       this.nextSnapTime = fVar5 + this.snapCooldown;
	 *     }
	 *   }
	 *   else {
	 *     this.canSnap = true;
	 *   }
	 *   return;
	 */
	// RVA: 0x32539CC VA: 0x781893E9CC
	public void .ctor();
	/*
	 *   undefined8 uVar1;
	 *   undefined4 uVar2;
	 *   undefined *puVar3;
	 *   undefined8 uVar4;
	 *
	 *   uVar1 = _UNK_0134d8b0;
	 *   this.snapCooldown = 0.25;
	 *   this.useRightThumbstick = true;
	 *   uVar4 = _UNK_0134d8b0;
	 *   this.canSnap = true;
	 *   _UNK_0134d8b0 = (undefined4)uVar1;
	 *   _UNK_0134d8b4 = SUB84(uVar1,4);
	 *   uVar2 = _UNK_0134d8b4;
	 *   this.snapAngle = (float)_UNK_0134d8b0;
	 *   _UNK_0134d8b0 = uVar4;
	 *   puVar3 = typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8;
	 *   this.inputThreshold = (float)uVar2;
	 *   if ((bRam000000000755f76f & 1) == 0) {
	 *     func_0x031fdc8c(typeinfo_ptr_UnityEngine_CoreModule_Object_6FC07E8,0);
	 *     bRam000000000755f76f = 1;
	 *   }
	 *   if (*(int *)(*(long *)puVar3 + 0xe4) == 0) {
	 *     func_0x031fde08();
	 *   }
	 *   return;
	 */
}
