Skip to content

Commit 2c285e1

Browse files
authored
Merge pull request #1692 from alexistb2904/main
Fix Discord Rich Presence integration
2 parents d2fbf4a + 003cd02 commit 2c285e1

1 file changed

Lines changed: 9 additions & 12 deletions

File tree

[core]/es_extended/client/modules/adjustments.lua

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -170,38 +170,35 @@ local placeHolders = {
170170
end,
171171
}
172172

173-
function Adjustments:PresencePlaceholders()
174-
local presence = Config.DiscordActivity.presence
175-
173+
function Adjustments:ReplacePlaceholders(text)
176174
for placeholder, cb in pairs(placeHolders) do
177175
local success, result = pcall(cb)
178176

179177
if not success then
180-
error(("Failed to execute presence placeholder: ^5%s^7"):format(placeholder))
181-
error(result)
182-
return "Unknown"
178+
error(("Failed to execute placeholder: ^5%s^7\n%s"):format(placeholder, result))
179+
result = "Unknown"
183180
end
184181

185-
presence = presence:gsub(("{%s}"):format(placeholder), result)
182+
text = text:gsub(("{%s}"):format(placeholder), tostring(result))
186183
end
187-
188-
return presence
184+
return text
189185
end
190186

191187
function Adjustments:DiscordPresence()
192188
if Config.DiscordActivity.appId ~= 0 then
193189
CreateThread(function()
194190
while true do
195191
SetDiscordAppId(Config.DiscordActivity.appId)
192+
SetRichPresence(self:ReplacePlaceholders(Config.DiscordActivity.presence))
196193
SetDiscordRichPresenceAsset(Config.DiscordActivity.assetName)
197-
SetDiscordRichPresenceAssetText(Config.DiscordActivity.assetText)
194+
SetDiscordRichPresenceAssetText(self:ReplacePlaceholders(Config.DiscordActivity.assetText))
198195

199196
for i = 1, #Config.DiscordActivity.buttons do
200197
local button = Config.DiscordActivity.buttons[i]
201-
SetDiscordRichPresenceAction(i - 1, button.label, button.url)
198+
local buttonUrl = self:ReplacePlaceholders(button.url)
199+
SetDiscordRichPresenceAction(i - 1, button.label, buttonUrl)
202200
end
203201

204-
SetRichPresence(self:PresencePlaceholders())
205202
Wait(Config.DiscordActivity.refresh)
206203
end
207204
end)

0 commit comments

Comments
 (0)