forked from Ports/perfect_dark
port: net: handle UCMD_ACTIVATE as a press
This commit is contained in:
1 parent
c444e76ecb
commit
7288947390
2 files changed
+6
-3
No files matched your search
+2
-1
@@ -262,7 +262,8 @@ static inline s32 netClientNeedReliableMove(const struct netclient *cl)
|
||||
const struct netplayermove *move = &cl->outmove[0];
|
||||
const struct netplayermove *moveprev = &cl->outmove[1];
|
||||
return !moveprev->tick || (g_NetMode == NETMODE_SERVER && cl->forcetick) ||
|
||||
(moveprev->ucmd & UCMD_IMPORTANT_MASK) != (move->ucmd & UCMD_IMPORTANT_MASK);
|
||||
(moveprev->ucmd & UCMD_IMPORTANT_MASK) != (move->ucmd & UCMD_IMPORTANT_MASK) ||
|
||||
(move->ucmd & UCMD_ACTIVATE);
|
||||
}
|
||||
|
||||
static inline s32 netClientNeedMove(const struct netclient *cl)
|
||||
|
||||
+4
-2
@@ -123,6 +123,8 @@ static inline void bmoveProcessRemoteInput(const bool allowc1buttons)
|
||||
moveticks = g_NetInterpTicks;
|
||||
}
|
||||
|
||||
const bool handled = (pl->client->inmovetick >= inmove->tick);
|
||||
|
||||
if (!inmove->tick) {
|
||||
// no input
|
||||
inmove->pos = inmoveprev->pos = pl->prop->pos;
|
||||
@@ -206,12 +208,12 @@ static inline void bmoveProcessRemoteInput(const bool allowc1buttons)
|
||||
netmsgSvcPlayerStatsWrite(&g_NetMsgRel, pl->client);
|
||||
}
|
||||
|
||||
if (inmove->ucmd & UCMD_RELOAD) {
|
||||
if (!handled && (inmove->ucmd & UCMD_RELOAD)) {
|
||||
pl->bondactivateorreload |= JO_ACTION_RELOAD;
|
||||
}
|
||||
|
||||
if (g_NetMode == NETMODE_SERVER) {
|
||||
if (inmove->ucmd & UCMD_ACTIVATE) {
|
||||
if (!handled && (inmove->ucmd & UCMD_ACTIVATE)) {
|
||||
pl->bondactivateorreload |= JO_ACTION_ACTIVATE;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user