|
|
@@ -40,25 +40,42 @@ AdventureOptionsTab::AdventureOptionsTab()
|
|
|
addCallback("playerHeroSpeedChanged", [this](int value)
|
|
|
{
|
|
|
auto targetLabel = widget<CLabel>("heroSpeedValueLabel");
|
|
|
- int valuePercentage = value / 50; // H3 max value is "50", displaying it to be 100%
|
|
|
if (targetLabel)
|
|
|
- targetLabel->setText(std::to_string(valuePercentage) + "%");
|
|
|
-
|
|
|
- return setIntSetting("adventure", "heroMoveTime", value);
|
|
|
+ {
|
|
|
+ if (value <= 0)
|
|
|
+ {
|
|
|
+ targetLabel->setText("-");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ int valuePercentage = 100 * 100 / value;
|
|
|
+ targetLabel->setText(std::to_string(valuePercentage) + "%");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ setIntSetting("adventure", "heroMoveTime", value);
|
|
|
});
|
|
|
addCallback("enemyHeroSpeedChanged", [this](int value)
|
|
|
{
|
|
|
auto targetLabel = widget<CLabel>("enemySpeedValueLabel");
|
|
|
- int valuePercentage = value / 50; // H3 max value is "50", displaying it to be 100%
|
|
|
- if (targetLabel)
|
|
|
- targetLabel->setText(std::to_string(valuePercentage) + "%");
|
|
|
|
|
|
- return setIntSetting("adventure", "enemyMoveTime", value);
|
|
|
+ if (targetLabel)
|
|
|
+ {
|
|
|
+ if (value <= 0)
|
|
|
+ {
|
|
|
+ targetLabel->setText("-");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ int valuePercentage = 100 * 100 / value;
|
|
|
+ targetLabel->setText(std::to_string(valuePercentage) + "%");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ setIntSetting("adventure", "enemyMoveTime", value);
|
|
|
});
|
|
|
addCallback("mapScrollSpeedChanged", [this](int value)
|
|
|
{
|
|
|
auto targetLabel = widget<CLabel>("mapScrollingValueLabel");
|
|
|
- int valuePercentage = value / 1200; // H3 max value is "1200", displaying it to be 100%
|
|
|
+ int valuePercentage = 100 * value / 1200; // H3 max value is "1200", displaying it to be 100%
|
|
|
if (targetLabel)
|
|
|
targetLabel->setText(std::to_string(valuePercentage) + "%");
|
|
|
|