Codechange: Template DoCommandP to automagically reflect the parameters of the command proc.

When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
This commit is contained in:
Michael Lutz
2021-10-31 19:39:09 +01:00
parent e740c24eb7
commit 0f64ee5ce1
47 changed files with 375 additions and 332 deletions

View File

@@ -16,6 +16,7 @@
#include "../framerate_type.h"
#include "../command_func.h"
#include "../network/network.h"
#include "../misc_cmd.h"
#include "../safeguards.h"
@@ -173,7 +174,7 @@ void StateGameLoop_LinkGraphPauseControl()
if (_pause_mode & PM_PAUSED_LINK_GRAPH) {
/* We are paused waiting on a job, check the job every tick. */
if (!LinkGraphSchedule::instance.IsJoinWithUnfinishedJobDue()) {
DoCommandP(CMD_PAUSE, 0, PM_PAUSED_LINK_GRAPH, 0);
Command<CMD_PAUSE>::Post(0, PM_PAUSED_LINK_GRAPH, 0, {});
}
} else if (_pause_mode == PM_UNPAUSED &&
_date_fract == LinkGraphSchedule::SPAWN_JOIN_TICK - 2 &&
@@ -181,7 +182,7 @@ void StateGameLoop_LinkGraphPauseControl()
LinkGraphSchedule::instance.IsJoinWithUnfinishedJobDue()) {
/* Perform check two _date_fract ticks before we would join, to make
* sure it also works in multiplayer. */
DoCommandP(CMD_PAUSE, 0, PM_PAUSED_LINK_GRAPH, 1);
Command<CMD_PAUSE>::Post(0, PM_PAUSED_LINK_GRAPH, 1, {});
}
}