protected void UpdateInput() { bool flag; bool flag1; InventoryHolder inventoryHolder = this.inventoryHolder; PlayerClient.InputFunction(base.gameObject); if (!inventoryHolder) { int num = 1; flag1 = (bool)num; flag = (bool)num; } else { ItemModFlags itemModFlag = inventoryHolder.modFlags; flag = (itemModFlag & ItemModFlags.Lamp) == ItemModFlags.Other; flag1 = (itemModFlag & ItemModFlags.Laser) == ItemModFlags.Other; } HumanController.InputSample crouchWasBlocked = HumanController.InputSample.Poll(flag, flag1); crouchWasBlocked.info__crouchBlocked = this.crouch_was_blocked; bool legInjury = base.GetLocal <FallDamage>().GetLegInjury() > 0f; if (legInjury) { crouchWasBlocked.crouch = true; crouchWasBlocked.jump = false; } if (crouchWasBlocked.walk <= 0f || Mathf.Abs(crouchWasBlocked.strafe) >= 0.05f || crouchWasBlocked.attack2 || this._inventory.isCrafting || legInjury) { crouchWasBlocked.sprint = false; } float single = 1f; if (this._inventory.isCrafting) { single = single * 0.5f; } if (legInjury) { single = single * 0.5f; } HumanController.InputSample.MovementScale = single; if (!inventoryHolder) { this.ProcessInput(ref crouchWasBlocked); } else { object obj = inventoryHolder.InvokeInputItemPreFrame(ref crouchWasBlocked); this.ProcessInput(ref crouchWasBlocked); inventoryHolder.InvokeInputItemPostFrame(obj, ref crouchWasBlocked); } this.CheckBeltUsage(); if (this.wasSprinting && !crouchWasBlocked.sprint) { this.SprintingStopped(); } else if (!this.wasSprinting && crouchWasBlocked.sprint) { this.SprintingStarted(); } }
protected void UpdateInput() { bool flag; bool flag2; InventoryHolder inventoryHolder = this.inventoryHolder; PlayerClient.InputFunction(base.gameObject); if (inventoryHolder != null) { ItemModFlags modFlags = inventoryHolder.modFlags; flag = (modFlags & ItemModFlags.Lamp) == ItemModFlags.Other; flag2 = (modFlags & ItemModFlags.Laser) == ItemModFlags.Other; } else { flag = flag2 = true; } InputSample sample = InputSample.Poll(flag, flag2); sample.info__crouchBlocked = this.crouch_was_blocked; bool flag3 = base.GetLocal <FallDamage>().GetLegInjury() > 0f; if (flag3) { sample.crouch = true; sample.jump = false; } if (((sample.walk <= 0f) || (Mathf.Abs(sample.strafe) >= 0.05f)) || ((sample.attack2 || this._inventory.isCrafting) || flag3)) { sample.sprint = false; } float num = 1f; if (this._inventory.isCrafting) { num *= 0.5f; } if (flag3) { num *= 0.5f; } InputSample.MovementScale = num; if (inventoryHolder != null) { object item = inventoryHolder.InvokeInputItemPreFrame(ref sample); this.ProcessInput(ref sample); inventoryHolder.InvokeInputItemPostFrame(item, ref sample); } else { this.ProcessInput(ref sample); } this.CheckBeltUsage(); if (this.wasSprinting && !sample.sprint) { this.SprintingStopped(); } else if (!this.wasSprinting && sample.sprint) { this.SprintingStarted(); } }