mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-11-20 00:52:33 +00:00
* feat: dont drop loot for dead players if configured in the zone activity settings * fix errors Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update dGame/dComponents/ActivityComponent.h Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update dGame/dUtilities/Loot.cpp Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
37 lines
892 B
C++
37 lines
892 B
C++
#pragma once
|
|
|
|
// Custom Classes
|
|
#include "CDTable.h"
|
|
#include <optional>
|
|
|
|
struct CDActivities {
|
|
uint32_t ActivityID;
|
|
uint32_t locStatus;
|
|
uint32_t instanceMapID;
|
|
uint32_t minTeams;
|
|
uint32_t maxTeams;
|
|
uint32_t minTeamSize;
|
|
uint32_t maxTeamSize;
|
|
uint32_t waitTime;
|
|
uint32_t startDelay;
|
|
bool requiresUniqueData;
|
|
uint32_t leaderboardType;
|
|
bool localize;
|
|
int32_t optionalCostLOT;
|
|
int32_t optionalCostCount;
|
|
bool showUIRewards;
|
|
uint32_t CommunityActivityFlagID;
|
|
std::string gate_version;
|
|
bool noTeamLootOnDeath;
|
|
float optionalPercentage;
|
|
};
|
|
|
|
class CDActivitiesTable : public CDTable<CDActivitiesTable, std::vector<CDActivities>> {
|
|
public:
|
|
void LoadValuesFromDatabase();
|
|
|
|
// Queries the table with a custom "where" clause
|
|
std::vector<CDActivities> Query(std::function<bool(CDActivities)> predicate);
|
|
std::optional<const CDActivities> GetActivity(const uint32_t activityID);
|
|
};
|