add activity images! :)

This commit is contained in:
Yannik
2023-04-23 11:17:17 +02:00
parent 9f0e4498e5
commit 6cc75f9b4d
5 changed files with 84 additions and 7 deletions

View File

@@ -1,9 +1,15 @@
extends Node
func _ready():
Discord_Activity.app_id = 918857075105349632
Discord_Activity.details = "Made with GDExtension"
Discord_Activity.state = "This is a test from GDScript in Godot 4"
#Discord_Activity.debug()
Discord_Activity.app_id = 1099618430065324082
Discord_Activity.details = "A demo activity by vaporvee#1231"
Discord_Activity.state = "Checkpoint 23/23"
Discord_Activity.large_image = "game"
Discord_Activity.large_image_text = "Try it now!"
Discord_Activity.small_image = "boss"
Discord_Activity.small_image_text = "Fighting the end boss! D:"
Discord_Activity.refresh()
$Info.text = $Info.text.replace("{id}",str(Discord_Activity.app_id)).replace("{details}",Discord_Activity.details).replace("{state}",Discord_Activity.state)
$Info.text = $Info.text.replace("{id}",str(Discord_Activity.app_id)).replace("{details}",Discord_Activity.details).replace("{state}",Discord_Activity.state).replace("{lkey}",Discord_Activity.large_image).replace("{ltext}",Discord_Activity.large_image_text).replace("{skey}",Discord_Activity.small_image).replace("{stext}",Discord_Activity.small_image_text)

View File

@@ -42,8 +42,15 @@ bbcode_enabled = true
text = "[center][font s=60][rainbow]DiscordSDK Test[/rainbow][/font]"
[node name="Info" type="RichTextLabel" parent="."]
offset_right = 507.0
offset_bottom = 155.0
offset_left = 7.0
offset_top = 6.0
offset_right = 514.0
offset_bottom = 227.0
text = "Application ID : {id}
Details: {details}
State: {state}"
State: {state}
Large image key: {lkey}
Large image text: {ltext}
Small image key: {skey}
Small image text: {stext}"

View File

@@ -27,6 +27,19 @@ void Discord_Activity::_bind_methods()
ClassDB::bind_method(D_METHOD("set_details", "details"), &Discord_Activity::set_details);
ADD_PROPERTY(PropertyInfo(Variant::STRING, "details"), "set_details", "get_details");
ClassDB::bind_method(D_METHOD("get_large_image"), &Discord_Activity::get_large_image);
ClassDB::bind_method(D_METHOD("set_large_image", "large_image"), &Discord_Activity::set_large_image);
ADD_PROPERTY(PropertyInfo(Variant::STRING, "large_image"), "set_large_image", "get_large_image");
ClassDB::bind_method(D_METHOD("get_large_image_text"), &Discord_Activity::get_large_image_text);
ClassDB::bind_method(D_METHOD("set_large_image_text", "large_image_text"), &Discord_Activity::set_large_image_text);
ADD_PROPERTY(PropertyInfo(Variant::STRING, "large_image_text"), "set_large_image_text", "get_large_image_text");
ClassDB::bind_method(D_METHOD("get_small_image"), &Discord_Activity::get_small_image);
ClassDB::bind_method(D_METHOD("set_small_image", "small_image"), &Discord_Activity::set_small_image);
ADD_PROPERTY(PropertyInfo(Variant::STRING, "small_image"), "set_small_image", "get_small_image");
ClassDB::bind_method(D_METHOD("get_small_image_text"), &Discord_Activity::get_small_image_text);
ClassDB::bind_method(D_METHOD("set_small_image_text", "large_small_text"), &Discord_Activity::set_small_image_text);
ADD_PROPERTY(PropertyInfo(Variant::STRING, "small_image_text"), "set_small_image_text", "get_small_image_text");
ClassDB::bind_method(D_METHOD("refresh"), &Discord_Activity::refresh);
}
@@ -97,4 +110,41 @@ String Discord_Activity::get_details() const
void Discord_Activity::refresh()
{
core->ActivityManager().UpdateActivity(activity, [](discord::Result result) {});
}
void Discord_Activity::set_large_image(const String &p_large_image)
{
large_image = p_large_image;
activity.GetAssets().SetLargeImage(p_large_image.utf8().get_data());
}
String Discord_Activity::get_large_image() const
{
return large_image;
}
void Discord_Activity::set_large_image_text(const String &p_large_image_text)
{
large_image_text = p_large_image_text;
activity.GetAssets().SetLargeText(p_large_image_text.utf8().get_data());
}
String Discord_Activity::get_large_image_text() const
{
return large_image_text;
}
void Discord_Activity::set_small_image(const String &p_small_image)
{
small_image = p_small_image;
activity.GetAssets().SetSmallImage(p_small_image.utf8().get_data());
}
String Discord_Activity::get_small_image() const
{
return small_image;
}
void Discord_Activity::set_small_image_text(const String &p_small_image_text)
{
small_image_text = p_small_image_text;
activity.GetAssets().SetSmallText(p_small_image_text.utf8().get_data());
}
String Discord_Activity::get_small_image_text() const
{
return small_image_text;
}

View File

@@ -21,6 +21,11 @@ private:
String state;
String details;
String large_image;
String large_image_text;
String small_image;
String small_image_text;
public:
static Discord_Activity *get_singleton();
@@ -37,6 +42,15 @@ public:
void set_state(const String &p_state);
String get_details() const;
void set_details(const String &p_details);
String get_large_image() const;
void set_large_image(const String &p_large_image);
String get_large_image_text() const;
void set_large_image_text(const String &p_large_image_text);
String get_small_image() const;
void set_small_image(const String &p_small_image);
String get_small_image_text() const;
void set_small_image_text(const String &p_small_image_text);
};
#endif