5 #include "../Common/server.h" 14 sprintf_s(str, 199,
"Discord: %s", msg);
21 sprintf_s(msg, 199,
"Connected to user %s#%s - %s", connectedUser->username, connectedUser->discriminator, connectedUser->userId);
24 SPacketBig outpacket = SPacketBig();
26 strcpy_s(outpacket.msg,
sizeof outpacket.msg, connectedUser->userId);
33 sprintf_s(msg, 199,
"Disconnected (%d: %s)", errcode, message);
40 sprintf_s(msg, 199,
"Error (%d: %s)", errcode, message);
41 Trace(msg, Logger::Level::Error);
46 strcpy_s(
details, 128, prmDetails);
47 strcpy_s(
state, 128, prmState);
65 case VehicleType::C98:
72 case VehicleType::E10:
79 case VehicleType::P13:
100 case VehicleType::T120:
107 case VehicleType::T121:
114 case VehicleType::E11:
121 case VehicleType::T27:
128 case VehicleType::C2A:
135 case VehicleType::W6Manx:
142 case VehicleType::T19:
149 case VehicleType::Apartment:
150 strcpy_s(
details, 128,
"In their apartment");
154 case VehicleType::SimBay:
155 strcpy_s(
details, 128,
"In the simulator bay");
159 case VehicleType::ControlTower:
160 strcpy_s(
details, 128,
"In the control tower");
169 if (
playerships[0].reference == Reference::REF_ONGROUND)
173 sprintf_s(
state, 128,
"On the ground in Deois");
179 sprintf_s(
state, 128,
"On the ground at the O-4 ruins");
183 else if (
gridarray[31][31].type == PlotType::Arcridge)
185 sprintf_s(
state, 128,
"On the ground at Arcridge");
189 else if (
gridarray[31][31].type == PlotType::UserMining)
191 sprintf_s(
state, 128,
"On the ground at a mine");
195 else if (
gridarray[31][31].type == PlotType::UserTownship)
197 sprintf_s(
state, 128,
"On the ground at a township");
201 else if (
gridarray[31][31].type == PlotType::UserFarming)
203 sprintf_s(
state, 128,
"On the ground at a farm");
207 else if (
gridarray[31][31].type == PlotType::UserEstate)
209 sprintf_s(
state, 128,
"On the ground at an estate");
213 else if (
gridarray[31][31].type == PlotType::UserAirfield)
215 sprintf_s(
state, 128,
"On the ground at an airfield");
219 else if (
gridarray[31][31].pri_landform == 1)
221 sprintf_s(
state, 128,
"In the drink");
226 sprintf_s(
state, 128,
"On the ground");
230 else if (
playerships[0].reference == Reference::REF_APNMODE)
235 else if (
playerships[0].reference == Reference::REF_ACLMODE)
240 else if (
playerships[0].reference == REF_INANOTHER)
243 if (parent.
type == VehicleType::T120 || parent.
type == VehicleType::T121)
244 sprintf_s(
state, 128,
"Cargo bed of IVR %s", parent.
IVR);
246 sprintf_s(
state, 128,
"Cargo bay of IVR %s", parent.
IVR);
249 else if (
playerships[0].reference >= Reference::REF_DOCKCPOC)
255 case Reference::REF_DOCKCPOC: sprintf_s(
state, 128,
"Docked at Cutter's Port (CPOC)");
break;
256 case Reference::REF_DOCKTAC: sprintf_s(
state, 128,
"Docked at Easydock (TAC)");
break;
257 default: sprintf_s(
state, 128,
"Docked at UNKNOWN %i",
playerships[0].reference);
break;
264 case Reference::REF_DOCKCPOC: sprintf_s(
state, 128,
"Near Cutter's Port (CPOC)");
break;
265 case Reference::REF_DOCKTAC: sprintf_s(
state, 128,
"Near Easydock (TAC)");
break;
266 default: sprintf_s(
state, 128,
"Near UNKNOWN %i",
playerships[0].reference);
break;
271 case Reference::REF_DOCKCPOC: sprintf_s(
largeImageKey, 32,
"cpoc");
break;
272 case Reference::REF_DOCKTAC: sprintf_s(
largeImageKey, 32,
"tac");
break;
275 else if (
playerships[0].reference == Reference::REF_BUILDING ||
playerships[0].reference == Reference::REF_SIMBAY)
288 strcpy_s(
details, 128,
"Flight Simulator");
307 Discord_Initialize(
"497844043951374357", &
handlers, 1,
"795990");
317 UpdatePresence(
"Splash Screen",
"Connecting and patching...",
"splash");
322 Discord_RunCallbacks();
DiscordEventHandlers handlers
void SendToServer(void *pData, DWORD dwSize, bool bGuaranteed, PacketOrdering order=ORDERING_NONE) const
static Networking * network
s_network_objects playerships[MAX_SCAN]
static void HandleDiscordDisconnected(int errcode, const char *message)
static void HandleDiscordReady(const DiscordUser *connectedUser)
static void Trace(const char *msg, Logger::Level level)
static void HandleDiscordError(int errcode, const char *message)
void Log(const char *msg, Level level=Info, int errorCode=0)
void UpdatePresence(const char *prmDetails, const char *prmState, const char *prmLargeImageKey)
DiscordRichPresence discordPresence
LOCALGRID2 gridarray[64][64]
DiscordRPC(Networking *prmNetwork, Bus *prmBus, Logger *prmLogger)