Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions src/gui/hotkeyConfig.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,8 @@ Keys::Keys() :
weapons_disable_aim_lock("WEAPONS_AIM_LOCK_DISABLE"),
weapons_aim_left("WEAPONS_AIM_LEFT", "G"),
weapons_aim_right("WEAPONS_AIM_RIGHT", "H"),
weapons_aim_left_step("WEAPONS_AIM_LEFT_STEP"),
weapons_aim_right_step("WEAPONS_AIM_RIGHT_STEP"),

// Science crew screen
science_scan_object("SCIENCE_SCAN_OBJECT", "S"),
Expand All @@ -249,6 +251,18 @@ Keys::Keys() :
{"SCIENCE_SCAN_PARAM_SET_3"},
{"SCIENCE_SCAN_PARAM_SET_4"},
}},
science_scan_param_increase_step{{
{"SCIENCE_SCAN_PARAM_INCREASE_STEP_1"},
{"SCIENCE_SCAN_PARAM_INCREASE_STEP_2"},
{"SCIENCE_SCAN_PARAM_INCREASE_STEP_3"},
{"SCIENCE_SCAN_PARAM_INCREASE_STEP_4"},
}},
science_scan_param_decrease_step{{
{"SCIENCE_SCAN_PARAM_DECREASE_STEP_1"},
{"SCIENCE_SCAN_PARAM_DECREASE_STEP_2"},
{"SCIENCE_SCAN_PARAM_DECREASE_STEP_3"},
{"SCIENCE_SCAN_PARAM_DECREASE_STEP_4"},
}},

// Engineering crew screen
engineering_select_system{
Expand All @@ -274,9 +288,13 @@ Keys::Keys() :
engineering_set_power_300("ENGINEERING_POWER_300"),
engineering_increase_power("ENGINEERING_POWER_INCREASE", "]"),
engineering_decrease_power("ENGINEERING_POWER_DECREASE", "["),
engineering_increase_power_stepped("ENGINEERING_POWER_INCREASE_STEPPED"),
engineering_decrease_power_stepped("ENGINEERING_POWER_DECREASE_STEPPED"),
engineering_set_power("ENGINEERING_POWER_SET"),
engineering_increase_coolant("ENGINEERING_COOLANT_INCREASE", "="),
engineering_decrease_coolant("ENGINEERING_COOLANT_DECREASE", "-"),
engineering_increase_coolant_stepped("ENGINEERING_COOLANT_INCREASE_STEPPED"),
engineering_decrease_coolant_stepped("ENGINEERING_COOLANT_DECREASE_STEPPED"),
engineering_set_coolant("ENGINEERING_COOLANT_SET"),
engineering_next_repair_crew("ENGINEERING_REPAIR_CREW_NEXT", "C"),
engineering_repair_crew_up("ENGINEERING_REPAIR_CREW_UP", "Up"),
Expand Down Expand Up @@ -431,6 +449,8 @@ void Keys::init()
weapons_disable_aim_lock.setLabel(tr("hotkey_menu", "Weapons"), tr("hotkey_Weapons", "Disable missile aim lock"));
weapons_aim_left.setLabel(tr("hotkey_menu", "Weapons"), tr("hotkey_Weapons", "Turn missile aim to the left"));
weapons_aim_right.setLabel(tr("hotkey_menu", "Weapons"), tr("hotkey_Weapons", "Turn missile aim to the right"));
weapons_aim_left_step.setLabel(tr("hotkey_menu", "Weapons"), tr("hotkey_Weapons", "Turn missile aim left (15° steps)"));
weapons_aim_right_step.setLabel(tr("hotkey_menu", "Weapons"), tr("hotkey_Weapons", "Turn missile aim right (15° steps)"));

// Science
science_scan_object.setLabel(tr("hotkey_menu", "Science"), tr("hotkey_Science", "Scan object"));
Expand All @@ -441,6 +461,8 @@ void Keys::init()
science_scan_param_increase[n].setLabel(tr("hotkey_menu", "Science"), tr("hotkey_Science", "Scanning parameter {number} increase").format({{"number", string(n + 1)}}));
science_scan_param_decrease[n].setLabel(tr("hotkey_menu", "Science"), tr("hotkey_Science", "Scanning parameter {number} decrease").format({{"number", string(n + 1)}}));
science_scan_param_set[n].setLabel(tr("hotkey_menu", "Science"), tr("hotkey_Science", "Set scanning parameter {number} (joystick)").format({{"number", string(n + 1)}}));
science_scan_param_increase_step[n].setLabel(tr("hotkey_menu", "Science"), tr("hotkey_Science", "Scan parameter {number} increase stepwise").format({{"number", string(n+1)}}));
science_scan_param_decrease_step[n].setLabel(tr("hotkey_menu", "Science"), tr("hotkey_Science", "Scan parameter {number} decrease stepwise").format({{"number", string(n+1)}}));
}

// Engineering
Expand All @@ -465,9 +487,13 @@ void Keys::init()
engineering_set_power_300.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Set system power to 300%"));
engineering_increase_power.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Increase system power"));
engineering_decrease_power.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Decrease system power"));
engineering_increase_power_stepped.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Increase system power stepwise"));
engineering_decrease_power_stepped.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Decrease system power stepwise"));
engineering_set_power.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Set system power (joystick)"));
engineering_increase_coolant.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Increase system coolant"));
engineering_decrease_coolant.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Decrease system coolant"));
engineering_increase_coolant_stepped.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Increase system coolant stepwise"));
engineering_decrease_coolant_stepped.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Decrease system coolant stepwise"));
engineering_set_coolant.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Set system coolant (joystick)"));
engineering_next_repair_crew.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Next repair crew"));
engineering_repair_crew_up.setLabel(tr("hotkey_menu", "Engineering"), tr("hotkey_Engineering", "Crew move up"));
Expand Down
8 changes: 8 additions & 0 deletions src/gui/hotkeyConfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,8 @@ class Keys
sp::io::Keybinding weapons_disable_aim_lock;
sp::io::Keybinding weapons_aim_left;
sp::io::Keybinding weapons_aim_right;
sp::io::Keybinding weapons_aim_left_step;
sp::io::Keybinding weapons_aim_right_step;

// Science screen binds
sp::io::Keybinding science_scan_object;
Expand All @@ -123,6 +125,8 @@ class Keys
std::array<sp::io::Keybinding, 4> science_scan_param_increase;
std::array<sp::io::Keybinding, 4> science_scan_param_decrease;
std::array<sp::io::Keybinding, 4> science_scan_param_set;
std::array<sp::io::Keybinding, 4> science_scan_param_increase_step;
std::array<sp::io::Keybinding, 4> science_scan_param_decrease_step;

// Engineering screen binds
sp::io::Keybinding engineering_select_system[ShipSystem::COUNT];
Expand All @@ -138,9 +142,13 @@ class Keys
sp::io::Keybinding engineering_set_power_300;
sp::io::Keybinding engineering_increase_power;
sp::io::Keybinding engineering_decrease_power;
sp::io::Keybinding engineering_increase_power_stepped;
sp::io::Keybinding engineering_decrease_power_stepped;
sp::io::Keybinding engineering_set_power;
sp::io::Keybinding engineering_increase_coolant;
sp::io::Keybinding engineering_decrease_coolant;
sp::io::Keybinding engineering_increase_coolant_stepped;
sp::io::Keybinding engineering_decrease_coolant_stepped;
sp::io::Keybinding engineering_set_coolant;
sp::io::Keybinding engineering_next_repair_crew;
sp::io::Keybinding engineering_repair_crew_up;
Expand Down
4 changes: 4 additions & 0 deletions src/screenComponents/scanningDialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,10 @@ void GuiScanningDialog::onUpdate()
for(int n=0; n<max_sliders; n++)
{
float adjust = (keys.science_scan_param_increase[n].getValue() - keys.science_scan_param_decrease[n].getValue()) * 0.01f;
if (keys.science_scan_param_decrease_step[n].getDown())
adjust =-0.02f;
if (keys.science_scan_param_increase_step[n].getDown())
adjust =0.02f;
if (adjust != 0.0f)
{
sliders[n]->setValue(sliders[n]->getValue() + adjust);
Expand Down
11 changes: 11 additions & 0 deletions src/screens/crew1/singlePilotScreen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,17 @@ void SinglePilotScreen::onUpdate()
}

auto aim_adjust = keys.weapons_aim_left.getValue() - keys.weapons_aim_right.getValue();
// when using 15° steps, make sure the angle is a multiple of 15
if (keys.weapons_aim_left_step.getDown())
{
missile_aim->setValue(std::round(missile_aim->getValue()/15)*15);
aim_adjust =3.0f;
}
if (keys.weapons_aim_right_step.getDown())
{
missile_aim->setValue(std::round(missile_aim->getValue()/15)*15);
aim_adjust =-3.0f;
}
if (aim_adjust != 0.0f)
{
missile_aim->setValue(missile_aim->getValue() - 5.0f * aim_adjust);
Expand Down
11 changes: 11 additions & 0 deletions src/screens/crew4/tacticalScreen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,17 @@ void TacticalScreen::onUpdate()
}

auto aim_adjust = keys.weapons_aim_left.getValue() - keys.weapons_aim_right.getValue();
// when using 15° steps, make sure the angle is a multiple of 15
if (keys.weapons_aim_left_step.getDown())
{
missile_aim->setValue(std::round(missile_aim->getValue()/15)*15);
aim_adjust =3.0f;
}
if (keys.weapons_aim_right_step.getDown())
{
missile_aim->setValue(std::round(missile_aim->getValue()/15)*15);
aim_adjust =-3.0f;
}
if (aim_adjust != 0.0f)
{
missile_aim->setValue(missile_aim->getValue() - 5.0f * aim_adjust);
Expand Down
8 changes: 8 additions & 0 deletions src/screens/crew6/engineeringScreen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -459,6 +459,10 @@ void EngineeringScreen::onUpdate()
}

auto power_adjust = (keys.engineering_increase_power.getValue() - keys.engineering_decrease_power.getValue()) * 0.1f;
if (keys.engineering_decrease_power_stepped.getDown())
power_adjust =-0.1f;
if (keys.engineering_increase_power_stepped.getDown())
power_adjust = 0.1f;
if (power_adjust != 0.0f)
{
auto sys = ShipSystem::get(my_spaceship, selected_system);
Expand All @@ -468,6 +472,10 @@ void EngineeringScreen::onUpdate()
}
}
auto coolant_adjust = (keys.engineering_increase_coolant.getValue() - keys.engineering_decrease_coolant.getValue()) * 0.5f;
if (keys.engineering_decrease_coolant_stepped.getDown())
coolant_adjust =-0.5f;
if (keys.engineering_increase_coolant_stepped.getDown())
coolant_adjust = 0.5f;
if (coolant_adjust != 0.0f)
{
auto sys = ShipSystem::get(my_spaceship, selected_system);
Expand Down
11 changes: 11 additions & 0 deletions src/screens/crew6/weaponsScreen.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,17 @@ void WeaponsScreen::onUpdate()
}
}
auto aim_adjust = keys.weapons_aim_left.getValue() - keys.weapons_aim_right.getValue();
// when using 15° steps, make sure the angle is a multiple of 15
if (keys.weapons_aim_left_step.getDown())
{
missile_aim->setValue(std::round(missile_aim->getValue()/15)*15);
aim_adjust =3.0f;
}
if (keys.weapons_aim_right_step.getDown())
{
missile_aim->setValue(std::round(missile_aim->getValue()/15)*15);
aim_adjust =-3.0f;
}
if (aim_adjust != 0.0f)
{
missile_aim->setValue(missile_aim->getValue() - 5.0f * aim_adjust);
Expand Down
Loading