diff options
Diffstat (limited to 'source/application/discord/core.cpp')
-rw-r--r-- | source/application/discord/core.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/source/application/discord/core.cpp b/source/application/discord/core.cpp index 69a10a1..110c9ef 100644 --- a/source/application/discord/core.cpp +++ b/source/application/discord/core.cpp @@ -29,6 +29,8 @@ Result Core::Create(ClientId clientId, std::uint64_t flags, Core** instance) params.network_events = &NetworkManager::events_; params.overlay_events = &OverlayManager::events_; params.store_events = &StoreManager::events_; + params.voice_events = &VoiceManager::events_; + params.achievement_events = &AchievementManager::events_; auto result = DiscordCreate(DISCORD_VERSION, ¶ms, &((*instance)->internal_)); if (result != DiscordResult_Ok || !(*instance)->internal_) { delete (*instance); @@ -159,4 +161,22 @@ discord::StoreManager& Core::StoreManager() return storeManager_; } +discord::VoiceManager& Core::VoiceManager() +{ + if (!voiceManager_.internal_) { + voiceManager_.internal_ = internal_->get_voice_manager(internal_); + } + + return voiceManager_; +} + +discord::AchievementManager& Core::AchievementManager() +{ + if (!achievementManager_.internal_) { + achievementManager_.internal_ = internal_->get_achievement_manager(internal_); + } + + return achievementManager_; +} + } // namespace discord |