OpenFusion/src/Racing.hpp

28 lines
615 B
C++

#pragma once
#include <set>
#include "servers/CNShardServer.hpp"
struct EPInfo {
// available through XDT (maxScore may be updated by drops)
int zoneX, zoneY, EPID, maxScore;
// available through drops
int maxTime, maxPods;
double scaleFactor, podFactor, timeFactor;
};
struct EPRace {
std::set<int> collectedRings;
int mode, ticketSlot;
time_t startTime;
};
namespace Racing {
extern std::map<int32_t, EPInfo> EPData;
extern std::map<CNSocket*, EPRace> EPRaces;
extern std::map<int32_t, std::pair<std::vector<int>, std::vector<int>>> EPRewards;
void init();
}