public void GetDriveControl(TankControl.ControlState state) { try { if (ForceFireNextFrame) { foreach (var weapon in blockWeapons) // Set every cached ModuleWeapon on { weapon.FireControl = true; } foreach (var drill in blockDrills) { ModuleDrill_m_Spinning.SetValue(drill, true); // why is this value private } ForceFireNextFrame = false; } if (ForceNoFireNextFrame) { foreach (var weapon in blockWeapons) // Set every cached ModuleWeapon off { weapon.FireControl = false; } ForceNoFireNextFrame = false; } } catch (NullReferenceException) { Console.WriteLine("Null weapon block on " + coreTank.name + ":" + moduleBlockMover.UIName + "!"); blockWeapons.RemoveAll(v => v == null); blockDrills.RemoveAll(v => v == null); } }
void GetDriveControl(TankControl.ControlState state) { foreach (var group in groups) { var temp = Input.GetKey(group.keyCode); if (group.fireNextFrame && !temp || temp) { group.fireNextFrame = temp; group.Fire(); } } }
private void OnControlInput(TankControl.ControlState controlState) { TiltInput = controlState.InputRotation * MaxStrength; }