SuperMarioOdysseyOnline/include/packets/GameInf.h
Robin C. Ladiges 36f9343f83 don't send empty GameInf and CostumeInf packets and resend them on reconnect
Resend because: on server restarts the server will lose the stage and costume information.

If only one client is connected to the server, the packets currently aren't resent, so the server doesn't know in which stage the client is and what
costume it wears
(which I'd like to display on the website).

With more then one client connected it already works, because when another client joins the server, the client will send both packets.
2022-12-16 13:19:54 -06:00

22 lines
577 B
C

#pragma once
#include "Packet.h"
#include "al/util.hpp"
struct PACKED GameInf : Packet {
GameInf() : Packet() {this->mType = PacketType::GAMEINF; mPacketSize = sizeof(GameInf) - sizeof(Packet);};
bool1 is2D = false;
u8 scenarioNo = 255;
char stageName[0x40] = {};
bool operator==(const GameInf &rhs) const {
return (
is2D == rhs.is2D &&
scenarioNo == rhs.scenarioNo &&
al::isEqualString(stageName, rhs.stageName)
);
}
bool operator!=(const GameInf& rhs) const { return !operator==(rhs); }
};