From 79eea99d197864cc356bec86ec3bbe20905f5eca Mon Sep 17 00:00:00 2001 From: Chris Marsh Date: Thu, 30 Nov 2017 11:24:51 -0800 Subject: [PATCH] Update Unreal example (register more callbacks, still mostly debug prints) --- .../unrealstatus/Content/ShowTheUILevel.umap | Bin 743510 -> 800418 bytes .../Private/DiscordRpcBlueprint.cpp | 17 ++++++++++++ .../discordrpc/Public/DiscordRpcBlueprint.h | 25 ++++++++++++++++++ examples/unrealstatus/unrealstatus.uproject | 2 +- 4 files changed, 43 insertions(+), 1 deletion(-) diff --git a/examples/unrealstatus/Content/ShowTheUILevel.umap b/examples/unrealstatus/Content/ShowTheUILevel.umap index 1b100e471f4890c15e251a74f8f6a6cd2192f498..7b68148d57877688d7bbc8f3fc406e56ac7479ef 100644 GIT binary patch delta 78031 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 qo1lfL95w z$`Y%Er7RlGfh+f0$f|}#YuXI7Zm9XfUc#u#)VD_tckId2+@D3tZJ)E^@yd`%J@A(p zAxF3b!gL!LvNv2!?4Dip9w<+YAnVQ^c`8a*Csn?YG|DK*FOnc!+TXDdHje--`pqoi zobk5+Lw6L_6M9p8aGiixD%zqKiTP-+#SNop8BcxMy<>m*TE?qPc1Hl4*Zm=rd?68@ z=mSY2E(w*po(Bqa(rW*d2$soCvfw-y8!^O4f$RybP_L*Hd&d0mbb>6Ng_N>B#Ne{y z?B;!Tm9l^_C*vr^xMxC1-EW0fq5d)}lpg&X266n2%nF^bu}#1$OHbIBjo%e{W7xjS zuFRqb>jk>9hd#C`UxpCVWubo2d6q`0n#z#_Vn|o1itmI5 zeskmD6rJtXKbM$qcZptCd#w47%RNTBa)as8rIH8$xbnsuvV1uu2}z62L(DjAp|RVF zuB@s1$kPAU-m%3-RYdO{EZuGCi`~-Rmcjz1+wyKnk$}~*Pz0hN27<_=pj73hl!pP8 zlo$*#B3Km$)L_dG#>7PAQ6q>AO%M`_JmQ0>jUP71+r;PxMD(25bM9X5-Md?Cg+`g= zc4p2wbLPyMIcHwCd*_3{{C7=ER$R~r#_Y`wu`QW=5q{jq?7~iDP!MJf^*lLS$K<*h zb_?4H$y0PC94cYp=}rA>9TPEd01<7&Id8^FV!FmlNJPxr zoH5m&r-UaV*GhPSV^$)ogTj{+hi_$EzDG!ClP}3>IvQ9hh1x6pQF|p};kEYieZj7I zSw0v(g%+D_e4QMyi)+_O^YP@N__nev8*4rMxt62UNAD zO|AMYepP*VR1G5G?fOy2;iWBN@~#iR-Sp7Tsjc3xrr${CQYeNsoez23c_6b(@}m?n z^66QW-3Bp+$j%xvNasKx6(UYx0s=A|rcyYFcdL}9Uc(7h!RO)d3ntp5@~;$8q@R|{ zQ^bfK=xUe_>zlUl$;AcM5GpqUs}y0+*GdAsXNnFA^*YFC97_n*-pnwlCB%jK(SVi4WNok|lU^fl6xE`pig zFRD%cx#z-3TlQ6-pS%Cq8B`wr(0GyjF62#@SJOnczFKZg7nQI)-F>f~mBNk`&-!ej zMiXS-k>V>ETmpHc=J^zl;m8R+3I@j_wkrTvDpV9?5D@30A>|K2-7~gNG!()z;DPs= zRdCdZOnD{IBsXV>K6xxD7OA0@2p>PTJoLyfP2wm{K;OccLU zX`Z8*J)W}}0U%lj1noGvk-1qS#_n=zmhj)97+&;XaH`#9Yu{nVHC5Rn7>d6t{K+idD~ZD~WLP2viogcIb&4-W=VzE_^3P1d~kP z6TZWlVzt6XQi{WAtpmATJsKiSu5xg$$T9cbfYA=QFpwk*jL1vSfvERz_r zQ(;ADh<^^AUPQnMT%4$Y2MPb!CxSJzQ#@;vC@zH|1hI#V>Tt#!)z(p& zEh__}o52_O%z#PW1P1xuWyGLG?hXk5=oOT;&kB(S{@-g1cP8}g$<#`%@87LWQ#|Od4|jeBS~q8_5T5`;W8n4dZ;IBWaCsm1&DC}9hs|^5Y-jD z0rs9D_tGLy^%wr(bBLwWWH%5YGv7+CV-mWK5$_S!vEsqAt1-5skJ0p0uDs518`eW2 zT$8m!MWCjc(Do(xH$k>C8lK z3JOD4V1K{445c^{?IX#;gx*0+D6g*9GkassspiGjGQNEE%5rqdB{s@_%%0*%T_`0Ac$3)BKA;Od4QgpvtQ5cCm^VY4d@6r@ov}fHIsG(vkjg9ul zWL{H7rR@W)k&0;#5Wy${*a<&jLVQ;o0~V!Udygc`my6oJweiD8WrM9;6c7^)2KcCZdhY#+|w+ z*Dji_9lNOwWdmI0dDs;bVvJ0CO3xgMIcGh09S~d}`tLfRSPm##-T>ESbZQTDKiSJI zd!X=HmD4of`-W^kk?&K5A-c98f}#{hB_zj5Ij@Jv&Nxi)J*GM1ZFNly|H5wLeJUBn z!(AI!=Z>5Zn!$3q1G0lK@XwcoO09 Qz~hA{sbOYu@}C8N1M!HG(EtDd delta 45186 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 + jr.username = ANSI_TO_TCHAR(request->username); + jr.discriminator = ANSI_TO_TCHAR(request->discriminator); + jr.avatar = ANSI_TO_TCHAR(request->avatar); + UE_LOG(Discord, Log, TEXT("Discord join request from %s#%s"), *jr.username, *jr.discriminator); + if (self) { + self->OnJoinRequest.Broadcast(jr); + } +} + void UDiscordRpc::Initialize(const FString& applicationId, bool autoRegister, const FString& optionalSteamId) @@ -69,6 +83,9 @@ void UDiscordRpc::Initialize(const FString& applicationId, if (OnSpectate.IsBound()) { handlers.spectateGame = SpectateGameHandler; } + if (OnJoinRequest.IsBound()) { + handlers.joinRequest = JoinRequestHandler; + } auto appId = StringCast(*applicationId); auto steamId = StringCast(*optionalSteamId); Discord_Initialize( diff --git a/examples/unrealstatus/Plugins/discordrpc/Source/discordrpc/Public/DiscordRpcBlueprint.h b/examples/unrealstatus/Plugins/discordrpc/Source/discordrpc/Public/DiscordRpcBlueprint.h index 69f2b64..daf1ca5 100644 --- a/examples/unrealstatus/Plugins/discordrpc/Source/discordrpc/Public/DiscordRpcBlueprint.h +++ b/examples/unrealstatus/Plugins/discordrpc/Source/discordrpc/Public/DiscordRpcBlueprint.h @@ -9,6 +9,24 @@ // unreal's header tool hates clang-format // clang-format off +/** +* Ask to join callback data +*/ +USTRUCT(BlueprintType) +struct FDiscordJoinRequestData { + GENERATED_USTRUCT_BODY() + + UPROPERTY(BlueprintReadOnly) + FString userId; + UPROPERTY(BlueprintReadOnly) + FString username; + UPROPERTY(BlueprintReadOnly) + FString discriminator; + UPROPERTY(BlueprintReadOnly) + FString avatar; +}; + + DECLARE_LOG_CATEGORY_EXTERN(Discord, Log, All); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FDiscordConnected); @@ -16,6 +34,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FDiscordDisconnected, int, errorCod DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FDiscordErrored, int, errorCode, const FString&, errorMessage); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FDiscordJoin, const FString&, joinSecret); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FDiscordSpectate, const FString&, spectateSecret); +DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FDiscordJoinRequest, const FDiscordJoinRequestData&, joinRequest); // clang-format on @@ -119,6 +138,12 @@ public: Category = "Discord") FDiscordSpectate OnSpectate; + UPROPERTY(BlueprintAssignable, + meta = (DisplayName = "When Discord another user sends a join request", + Keywords = "Discord rpc"), + Category = "Discord") + FDiscordJoinRequest OnJoinRequest; + UPROPERTY(BlueprintReadWrite, meta = (DisplayName = "Rich presence info", Keywords = "Discord rpc"), Category = "Discord") diff --git a/examples/unrealstatus/unrealstatus.uproject b/examples/unrealstatus/unrealstatus.uproject index 34bf4ac..8a4a40b 100644 --- a/examples/unrealstatus/unrealstatus.uproject +++ b/examples/unrealstatus/unrealstatus.uproject @@ -1,6 +1,6 @@ { "FileVersion": 3, - "EngineAssociation": "4.16", + "EngineAssociation": "4.18", "Category": "", "Description": "", "Modules": [