diff --git a/.opengb/entrypoint.ts b/.opengb/entrypoint.ts
index 69fb614..aca4a64 100644
--- a/.opengb/entrypoint.ts
+++ b/.opengb/entrypoint.ts
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T04:00:20.093Z
+// Generated at 2024-07-28T09:51:41.259Z
import { Runtime } from "/Users/nathan/rivet/plugin-unity/.opengb/runtime/packages/runtime/src/mod.ts";
import { dependencyCaseConversionMap } from "/Users/nathan/rivet/plugin-unity/.opengb/dependencyCaseConversion.ts";
import { actorCaseConversionMap } from "/Users/nathan/rivet/plugin-unity/.opengb/actorCaseConversion.ts";
diff --git a/.opengb/meta.json b/.opengb/meta.json
index 3e80043..40652c3 100644
--- a/.opengb/meta.json
+++ b/.opengb/meta.json
@@ -34,8 +34,7 @@
}
},
"rivet": {}
- },
- "runtime": {}
+ }
},
"registries": {
"default": {
diff --git a/.opengb/runtime_config.ts b/.opengb/runtime_config.ts
index df7e24f..7beb4ed 100644
--- a/.opengb/runtime_config.ts
+++ b/.opengb/runtime_config.ts
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T04:00:20.093Z
+// Generated at 2024-07-28T09:51:41.259Z
import {
BuildRuntime,
Config,
diff --git a/Assets/Rivet/Editor/Images/icon-text-white.svg.meta b/Assets/Backend/Api.meta
similarity index 67%
rename from Assets/Rivet/Editor/Images/icon-text-white.svg.meta
rename to Assets/Backend/Api.meta
index 8facdd4..6bbbba5 100644
--- a/Assets/Rivet/Editor/Images/icon-text-white.svg.meta
+++ b/Assets/Backend/Api.meta
@@ -1,5 +1,6 @@
fileFormatVersion: 2
-guid: a479d38aa7a054ac89ad1f120d299577
+guid: 5c0732a1d2e0549f6bb38bffd3a1a9c4
+folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
diff --git a/Assets/Backend/Api/Modules.meta b/Assets/Backend/Api/Modules.meta
new file mode 100644
index 0000000..a3303dc
--- /dev/null
+++ b/Assets/Backend/Api/Modules.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 182381fdb52564e05b523e6394cbf937
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Backend/Client.cs b/Assets/Backend/Client.cs
index eb34b14..645d622 100644
--- a/Assets/Backend/Client.cs
+++ b/Assets/Backend/Client.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.525Z
+// Generated at 2024-07-28T09:51:45.793Z
using System;
using System.Collections.Generic;
diff --git a/Assets/Backend/Model/LobbiesCreateResponseLobbyBackendLocalDevelopment.cs b/Assets/Backend/Model/LobbiesCreateResponseLobbyBackendLocalDevelopment.cs
index b6589e3..42256d3 100644
--- a/Assets/Backend/Model/LobbiesCreateResponseLobbyBackendLocalDevelopment.cs
+++ b/Assets/Backend/Model/LobbiesCreateResponseLobbyBackendLocalDevelopment.cs
@@ -39,7 +39,7 @@ protected CreateResponseLobbyBackendLocalDevelopment() { }
/// Initializes a new instance of the class.
///
/// ports (required).
- public CreateResponseLobbyBackendLocalDevelopment(Dictionary ports = default(Dictionary))
+ public CreateResponseLobbyBackendLocalDevelopment(Object ports = default(Object))
{
// to ensure "ports" is required (not null)
if (ports == null)
@@ -53,7 +53,7 @@ protected CreateResponseLobbyBackendLocalDevelopment() { }
/// Gets or Sets Ports
///
[DataMember(Name = "ports", IsRequired = true, EmitDefaultValue = true)]
- public Dictionary Ports { get; set; }
+ public Object Ports { get; set; }
///
/// Returns the string presentation of the object
diff --git a/Assets/Backend/Model/LobbiesDestroyResponse.cs b/Assets/Backend/Model/LobbiesDestroyResponse.cs
index e38384c..15af520 100644
--- a/Assets/Backend/Model/LobbiesDestroyResponse.cs
+++ b/Assets/Backend/Model/LobbiesDestroyResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.550Z
+// Generated at 2024-07-28T09:51:45.800Z
using System;
diff --git a/Assets/Backend/Model/LobbiesForceGcRequest.cs b/Assets/Backend/Model/LobbiesForceGcRequest.cs
index 3968c2d..b026b62 100644
--- a/Assets/Backend/Model/LobbiesForceGcRequest.cs
+++ b/Assets/Backend/Model/LobbiesForceGcRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.553Z
+// Generated at 2024-07-28T09:51:45.802Z
using System;
diff --git a/Assets/Backend/Model/LobbiesForceGcResponse.cs b/Assets/Backend/Model/LobbiesForceGcResponse.cs
index 1b2023b..8d56641 100644
--- a/Assets/Backend/Model/LobbiesForceGcResponse.cs
+++ b/Assets/Backend/Model/LobbiesForceGcResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.554Z
+// Generated at 2024-07-28T09:51:45.803Z
using System;
diff --git a/Assets/Backend/Model/LobbiesListRegionsRequest.cs b/Assets/Backend/Model/LobbiesListRegionsRequest.cs
index 0c8f12e..2565fad 100644
--- a/Assets/Backend/Model/LobbiesListRegionsRequest.cs
+++ b/Assets/Backend/Model/LobbiesListRegionsRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.554Z
+// Generated at 2024-07-28T09:51:45.803Z
using System;
diff --git a/Assets/Backend/Model/LobbiesListRegionsResponse.cs b/Assets/Backend/Model/LobbiesListRegionsResponse.cs
index 11bc5c3..4375296 100644
--- a/Assets/Backend/Model/LobbiesListRegionsResponse.cs
+++ b/Assets/Backend/Model/LobbiesListRegionsResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.555Z
+// Generated at 2024-07-28T09:51:45.803Z
using System;
diff --git a/Assets/Backend/Model/LobbiesSetLobbyReadyResponse.cs b/Assets/Backend/Model/LobbiesSetLobbyReadyResponse.cs
index 15f7aeb..8ec9c1c 100644
--- a/Assets/Backend/Model/LobbiesSetLobbyReadyResponse.cs
+++ b/Assets/Backend/Model/LobbiesSetLobbyReadyResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.550Z
+// Generated at 2024-07-28T09:51:45.801Z
using System;
diff --git a/Assets/Backend/Model/LobbiesSetPlayerConnectedResponse.cs b/Assets/Backend/Model/LobbiesSetPlayerConnectedResponse.cs
index 2780ae7..ec35d33 100644
--- a/Assets/Backend/Model/LobbiesSetPlayerConnectedResponse.cs
+++ b/Assets/Backend/Model/LobbiesSetPlayerConnectedResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.551Z
+// Generated at 2024-07-28T09:51:45.801Z
using System;
diff --git a/Assets/Backend/Model/LobbiesSetPlayerDisconnectedResponse.cs b/Assets/Backend/Model/LobbiesSetPlayerDisconnectedResponse.cs
index 0d9af25..7f414af 100644
--- a/Assets/Backend/Model/LobbiesSetPlayerDisconnectedResponse.cs
+++ b/Assets/Backend/Model/LobbiesSetPlayerDisconnectedResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.552Z
+// Generated at 2024-07-28T09:51:45.802Z
using System;
diff --git a/Assets/Backend/Model/RateLimitThrottlePublicRequest.cs b/Assets/Backend/Model/RateLimitThrottlePublicRequest.cs
index fe9fa89..89a47e9 100644
--- a/Assets/Backend/Model/RateLimitThrottlePublicRequest.cs
+++ b/Assets/Backend/Model/RateLimitThrottlePublicRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.535Z
+// Generated at 2024-07-28T09:51:45.796Z
using System;
diff --git a/Assets/Backend/Model/RateLimitThrottlePublicResponse.cs b/Assets/Backend/Model/RateLimitThrottlePublicResponse.cs
index f347ea9..1559cb8 100644
--- a/Assets/Backend/Model/RateLimitThrottlePublicResponse.cs
+++ b/Assets/Backend/Model/RateLimitThrottlePublicResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.536Z
+// Generated at 2024-07-28T09:51:45.796Z
using System;
diff --git a/Assets/Backend/Model/RateLimitThrottleRequest.cs b/Assets/Backend/Model/RateLimitThrottleRequest.cs
index 18919cd..13ed028 100644
--- a/Assets/Backend/Model/RateLimitThrottleRequest.cs
+++ b/Assets/Backend/Model/RateLimitThrottleRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.533Z
+// Generated at 2024-07-28T09:51:45.795Z
using System;
diff --git a/Assets/Backend/Model/RateLimitThrottleResponse.cs b/Assets/Backend/Model/RateLimitThrottleResponse.cs
index 55d7eb4..7763908 100644
--- a/Assets/Backend/Model/RateLimitThrottleResponse.cs
+++ b/Assets/Backend/Model/RateLimitThrottleResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.534Z
+// Generated at 2024-07-28T09:51:45.796Z
using System;
diff --git a/Assets/Backend/Model/RivetCallRequest.cs b/Assets/Backend/Model/RivetCallRequest.cs
index 8ad9c57..5af8894 100644
--- a/Assets/Backend/Model/RivetCallRequest.cs
+++ b/Assets/Backend/Model/RivetCallRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.557Z
+// Generated at 2024-07-28T09:51:45.804Z
using System;
diff --git a/Assets/Backend/Model/RivetCallResponse.cs b/Assets/Backend/Model/RivetCallResponse.cs
index a863144..972318e 100644
--- a/Assets/Backend/Model/RivetCallResponse.cs
+++ b/Assets/Backend/Model/RivetCallResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.557Z
+// Generated at 2024-07-28T09:51:45.804Z
using System;
diff --git a/Assets/Backend/Model/TokensCreateRequest.cs b/Assets/Backend/Model/TokensCreateRequest.cs
index ee1d25a..c1ae8ae 100644
--- a/Assets/Backend/Model/TokensCreateRequest.cs
+++ b/Assets/Backend/Model/TokensCreateRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.539Z
+// Generated at 2024-07-28T09:51:45.797Z
using System;
diff --git a/Assets/Backend/Model/TokensCreateResponse.cs b/Assets/Backend/Model/TokensCreateResponse.cs
index 74433f0..0b4ac44 100644
--- a/Assets/Backend/Model/TokensCreateResponse.cs
+++ b/Assets/Backend/Model/TokensCreateResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.540Z
+// Generated at 2024-07-28T09:51:45.797Z
using System;
diff --git a/Assets/Backend/Model/TokensExtendRequest.cs b/Assets/Backend/Model/TokensExtendRequest.cs
index e0e484f..52148f0 100644
--- a/Assets/Backend/Model/TokensExtendRequest.cs
+++ b/Assets/Backend/Model/TokensExtendRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.548Z
+// Generated at 2024-07-28T09:51:45.799Z
using System;
diff --git a/Assets/Backend/Model/TokensExtendResponse.cs b/Assets/Backend/Model/TokensExtendResponse.cs
index 12f21c3..200f13e 100644
--- a/Assets/Backend/Model/TokensExtendResponse.cs
+++ b/Assets/Backend/Model/TokensExtendResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.549Z
+// Generated at 2024-07-28T09:51:45.800Z
using System;
diff --git a/Assets/Backend/Model/TokensFetchByTokenRequest.cs b/Assets/Backend/Model/TokensFetchByTokenRequest.cs
index 39e0037..7b4dca3 100644
--- a/Assets/Backend/Model/TokensFetchByTokenRequest.cs
+++ b/Assets/Backend/Model/TokensFetchByTokenRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.543Z
+// Generated at 2024-07-28T09:51:45.798Z
using System;
diff --git a/Assets/Backend/Model/TokensFetchByTokenResponse.cs b/Assets/Backend/Model/TokensFetchByTokenResponse.cs
index 33424da..a76386f 100644
--- a/Assets/Backend/Model/TokensFetchByTokenResponse.cs
+++ b/Assets/Backend/Model/TokensFetchByTokenResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.545Z
+// Generated at 2024-07-28T09:51:45.798Z
using System;
diff --git a/Assets/Backend/Model/TokensFetchRequest.cs b/Assets/Backend/Model/TokensFetchRequest.cs
index b8502eb..9140cd7 100644
--- a/Assets/Backend/Model/TokensFetchRequest.cs
+++ b/Assets/Backend/Model/TokensFetchRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.541Z
+// Generated at 2024-07-28T09:51:45.797Z
using System;
diff --git a/Assets/Backend/Model/TokensFetchResponse.cs b/Assets/Backend/Model/TokensFetchResponse.cs
index 4dd944c..87d102f 100644
--- a/Assets/Backend/Model/TokensFetchResponse.cs
+++ b/Assets/Backend/Model/TokensFetchResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.542Z
+// Generated at 2024-07-28T09:51:45.797Z
using System;
diff --git a/Assets/Backend/Model/TokensRevokeRequest.cs b/Assets/Backend/Model/TokensRevokeRequest.cs
index 9f9022f..ffbada3 100644
--- a/Assets/Backend/Model/TokensRevokeRequest.cs
+++ b/Assets/Backend/Model/TokensRevokeRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.546Z
+// Generated at 2024-07-28T09:51:45.798Z
using System;
diff --git a/Assets/Backend/Model/TokensRevokeResponse.cs b/Assets/Backend/Model/TokensRevokeResponse.cs
index e2f40f2..6d26ebf 100644
--- a/Assets/Backend/Model/TokensRevokeResponse.cs
+++ b/Assets/Backend/Model/TokensRevokeResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.546Z
+// Generated at 2024-07-28T09:51:45.799Z
using System;
diff --git a/Assets/Backend/Model/TokensValidateRequest.cs b/Assets/Backend/Model/TokensValidateRequest.cs
index 8bf43c9..c6a88ac 100644
--- a/Assets/Backend/Model/TokensValidateRequest.cs
+++ b/Assets/Backend/Model/TokensValidateRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.548Z
+// Generated at 2024-07-28T09:51:45.799Z
using System;
diff --git a/Assets/Backend/Model/TokensValidateResponse.cs b/Assets/Backend/Model/TokensValidateResponse.cs
index e649a39..369967b 100644
--- a/Assets/Backend/Model/TokensValidateResponse.cs
+++ b/Assets/Backend/Model/TokensValidateResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.548Z
+// Generated at 2024-07-28T09:51:45.799Z
using System;
diff --git a/Assets/Backend/Model/UsersCreateRequest.cs b/Assets/Backend/Model/UsersCreateRequest.cs
index d459adb..cb5537a 100644
--- a/Assets/Backend/Model/UsersCreateRequest.cs
+++ b/Assets/Backend/Model/UsersCreateRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.527Z
+// Generated at 2024-07-28T09:51:45.793Z
using System;
diff --git a/Assets/Backend/Model/UsersCreateResponse.cs b/Assets/Backend/Model/UsersCreateResponse.cs
index 07c1ce0..445021d 100644
--- a/Assets/Backend/Model/UsersCreateResponse.cs
+++ b/Assets/Backend/Model/UsersCreateResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.529Z
+// Generated at 2024-07-28T09:51:45.794Z
using System;
diff --git a/Assets/Backend/Model/UsersCreateTokenRequest.cs b/Assets/Backend/Model/UsersCreateTokenRequest.cs
index 2d2322b..5dfb9a4 100644
--- a/Assets/Backend/Model/UsersCreateTokenRequest.cs
+++ b/Assets/Backend/Model/UsersCreateTokenRequest.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.531Z
+// Generated at 2024-07-28T09:51:45.794Z
using System;
diff --git a/Assets/Backend/Model/UsersCreateTokenResponse.cs b/Assets/Backend/Model/UsersCreateTokenResponse.cs
index 96a4a6e..d2a163c 100644
--- a/Assets/Backend/Model/UsersCreateTokenResponse.cs
+++ b/Assets/Backend/Model/UsersCreateTokenResponse.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.532Z
+// Generated at 2024-07-28T09:51:45.794Z
using System;
diff --git a/Assets/Backend/Modules/Lobbies.cs b/Assets/Backend/Modules/Lobbies.cs
index 4e5e033..09bbda1 100644
--- a/Assets/Backend/Modules/Lobbies.cs
+++ b/Assets/Backend/Modules/Lobbies.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.556Z
+// Generated at 2024-07-28T09:51:45.804Z
using System;
using System.Collections.Generic;
diff --git a/Assets/Backend/Modules/RateLimit.cs b/Assets/Backend/Modules/RateLimit.cs
index c54659b..a0faf49 100644
--- a/Assets/Backend/Modules/RateLimit.cs
+++ b/Assets/Backend/Modules/RateLimit.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.537Z
+// Generated at 2024-07-28T09:51:45.796Z
using System;
using System.Collections.Generic;
diff --git a/Assets/Backend/Modules/Rivet.cs b/Assets/Backend/Modules/Rivet.cs
index af7c3e7..12b96ba 100644
--- a/Assets/Backend/Modules/Rivet.cs
+++ b/Assets/Backend/Modules/Rivet.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.557Z
+// Generated at 2024-07-28T09:51:45.805Z
using System;
using System.Collections.Generic;
diff --git a/Assets/Backend/Modules/Tokens.cs b/Assets/Backend/Modules/Tokens.cs
index 4966710..66ebe76 100644
--- a/Assets/Backend/Modules/Tokens.cs
+++ b/Assets/Backend/Modules/Tokens.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.549Z
+// Generated at 2024-07-28T09:51:45.800Z
using System;
using System.Collections.Generic;
diff --git a/Assets/Backend/Modules/Users.cs b/Assets/Backend/Modules/Users.cs
index 995632f..079753f 100644
--- a/Assets/Backend/Modules/Users.cs
+++ b/Assets/Backend/Modules/Users.cs
@@ -2,7 +2,7 @@
//
// Do not edit this file directly.
//
-// Generated at 2024-07-24T03:59:07.533Z
+// Generated at 2024-07-28T09:51:45.795Z
using System;
using System.Collections.Generic;
diff --git a/Assets/Rivet/Editor/Images/FontAwesome.meta b/Assets/Rivet/Editor/Images/FontAwesome.meta
new file mode 100644
index 0000000..d5dd4dd
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 98c3880df8197433ea193a7a31772327
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/book.svg b/Assets/Rivet/Editor/Images/FontAwesome/book.svg
new file mode 100644
index 0000000..2671c20
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/book.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/book.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/book.svg.meta
new file mode 100644
index 0000000..9750a10
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/book.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 6e8f178e0ec88464f9ad9f45ad22d210
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 3d4723d1befb44317ac63fc71271b172
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/browser.svg b/Assets/Rivet/Editor/Images/FontAwesome/browser.svg
new file mode 100644
index 0000000..e0a2221
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/browser.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/browser.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/browser.svg.meta
new file mode 100644
index 0000000..90faf9d
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/browser.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: d5b6438060c4b4e59a8c5bf1dd267d0f
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: c4ee1c8a208f74cebb6ac82fef541b53
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/bug.svg b/Assets/Rivet/Editor/Images/FontAwesome/bug.svg
new file mode 100644
index 0000000..91bfa87
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/bug.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/bug.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/bug.svg.meta
new file mode 100644
index 0000000..8a60b83
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/bug.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: b156156de32b04827b7eb6b334ccaf0d
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 5ef2d5d8f16ea49f287c5ecf395b4906
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/cloud-arrow-up.svg b/Assets/Rivet/Editor/Images/FontAwesome/cloud-arrow-up.svg
new file mode 100644
index 0000000..220f9b7
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/cloud-arrow-up.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/cloud-arrow-up.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/cloud-arrow-up.svg.meta
new file mode 100644
index 0000000..c78e319
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/cloud-arrow-up.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 44dad88c1451c446d807e891e2bad2d8
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 851643412c6864678b9dc10b22fde738
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/code.svg b/Assets/Rivet/Editor/Images/FontAwesome/code.svg
new file mode 100644
index 0000000..ec1fc4f
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/code.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/code.svg.meta
new file mode 100644
index 0000000..9ddf2a7
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/code.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 44d06355fc3a742a7a499d2b3cd619c7
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 16daebcba17414fd199d655f6aafafae
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/discord.svg b/Assets/Rivet/Editor/Images/FontAwesome/discord.svg
new file mode 100644
index 0000000..3f9ae6f
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/discord.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/discord.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/discord.svg.meta
new file mode 100644
index 0000000..a491eca
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/discord.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 0a164d5f5d70b46e1a709a15ca016836
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: fabfcb59837704abd9f0fe67d6e52133
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/folder.svg b/Assets/Rivet/Editor/Images/FontAwesome/folder.svg
new file mode 100644
index 0000000..aa95e03
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/folder.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/folder.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/folder.svg.meta
new file mode 100644
index 0000000..39d6f11
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/folder.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 45951cf4237d34148b2a4b91f4d66a37
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 4acd858e617054dc1a23eb3964061f0d
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/gear-code.svg b/Assets/Rivet/Editor/Images/FontAwesome/gear-code.svg
new file mode 100644
index 0000000..2ad4781
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/gear-code.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/gear-code.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/gear-code.svg.meta
new file mode 100644
index 0000000..8cb8630
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/gear-code.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: e9347091e532b4c26b3832355cb4812a
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 48c9fa34f3cb948ca89293d3c28b9881
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/gear.svg b/Assets/Rivet/Editor/Images/FontAwesome/gear.svg
new file mode 100644
index 0000000..5cf8dba
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/gear.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/gear.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/gear.svg.meta
new file mode 100644
index 0000000..e1052dd
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/gear.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 4395aa38d356747bc8b01eb63a802209
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 8f5c576ce4a874b4ca543cb12bcb1662
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/github.svg b/Assets/Rivet/Editor/Images/FontAwesome/github.svg
new file mode 100644
index 0000000..116d813
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/github.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/github.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/github.svg.meta
new file mode 100644
index 0000000..38ee9f2
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/github.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 454faa20c395b4b99a7b2736f203c8ec
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 85ce9d551014d4dcfb982eb580df5938
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/graduation-cap.svg b/Assets/Rivet/Editor/Images/FontAwesome/graduation-cap.svg
new file mode 100644
index 0000000..e416686
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/graduation-cap.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/graduation-cap.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/graduation-cap.svg.meta
new file mode 100644
index 0000000..7bac11b
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/graduation-cap.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: fb82d5ea2074642879318219b37e0633
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 6720395dc2b524b239e558a906b057fc
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/hammer.svg b/Assets/Rivet/Editor/Images/FontAwesome/hammer.svg
new file mode 100644
index 0000000..9e51b22
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/hammer.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/hammer.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/hammer.svg.meta
new file mode 100644
index 0000000..b0fce6d
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/hammer.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 57861a0f5a3f5403995884fd2bd0639b
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 1a4893de7b4ed4712bdf779620c0ffde
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/joystick.svg b/Assets/Rivet/Editor/Images/FontAwesome/joystick.svg
new file mode 100644
index 0000000..fa5907d
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/joystick.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/joystick.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/joystick.svg.meta
new file mode 100644
index 0000000..a6dcea0
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/joystick.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 28a593339ccd245d1b638ff8b6dc58eb
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 8efa900502a7d467a8d186e56deb1584
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/list-check.svg b/Assets/Rivet/Editor/Images/FontAwesome/list-check.svg
new file mode 100644
index 0000000..37ef781
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/list-check.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/list-check.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/list-check.svg.meta
new file mode 100644
index 0000000..0e44912
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/list-check.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: bb25e46bcafe742b49d7b7605fd95528
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: e38d77655b88844faafb71419e45890f
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/play.svg b/Assets/Rivet/Editor/Images/FontAwesome/play.svg
new file mode 100644
index 0000000..4b89907
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/play.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/play.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/play.svg.meta
new file mode 100644
index 0000000..71ee249
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/play.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 9c12e8ede8d8142448922406ab7718f3
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: cbe58f3afbd884bf3b028439c88ba491
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/right-to-bracket.svg b/Assets/Rivet/Editor/Images/FontAwesome/right-to-bracket.svg
new file mode 100644
index 0000000..d6a16c7
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/right-to-bracket.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/right-to-bracket.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/right-to-bracket.svg.meta
new file mode 100644
index 0000000..075da3c
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/right-to-bracket.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: b15c0fd95783443c09ae2a45025d3263
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: beaa5cd472bfd4f53bd17f09e0c4f8b1
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/rocket-launch.svg b/Assets/Rivet/Editor/Images/FontAwesome/rocket-launch.svg
new file mode 100644
index 0000000..b4e5bed
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/rocket-launch.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/rocket-launch.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/rocket-launch.svg.meta
new file mode 100644
index 0000000..dde1aa0
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/rocket-launch.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 76690c2b9e2c348588d9da581ef60455
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: b3e909e4c7ff143799cc889b9d232149
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/rotate-right.svg b/Assets/Rivet/Editor/Images/FontAwesome/rotate-right.svg
new file mode 100644
index 0000000..5950539
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/rotate-right.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/rotate-right.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/rotate-right.svg.meta
new file mode 100644
index 0000000..a8ee32f
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/rotate-right.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: d0b6bdf11bfe747fca0d95a859c28bee
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: c0ff2cf9812d040c78ecff0ee8bb3dc4
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/server.svg b/Assets/Rivet/Editor/Images/FontAwesome/server.svg
new file mode 100644
index 0000000..8a70a88
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/server.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/server.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/server.svg.meta
new file mode 100644
index 0000000..602c54c
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/server.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 7bcd10cbcf44540858a99dc18ebb77c3
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 4da91c338bf984838a36e71d471598a8
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/square-sliders.svg b/Assets/Rivet/Editor/Images/FontAwesome/square-sliders.svg
new file mode 100644
index 0000000..c3cc677
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/square-sliders.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/square-sliders.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/square-sliders.svg.meta
new file mode 100644
index 0000000..87fc182
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/square-sliders.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 071bfd08c297a4f43886df844a2cb2d7
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 86dd376c0bdb045bfb36698ab200724d
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/stop.svg b/Assets/Rivet/Editor/Images/FontAwesome/stop.svg
new file mode 100644
index 0000000..28ccf3b
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/stop.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/stop.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/stop.svg.meta
new file mode 100644
index 0000000..8577e2d
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/stop.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: c99591954a9734dd5874f07bbdbf144f
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: cf9cc3cf51e5246fd8c259202a6fc936
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/toolbox.svg b/Assets/Rivet/Editor/Images/FontAwesome/toolbox.svg
new file mode 100644
index 0000000..dd0db7c
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/toolbox.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/toolbox.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/toolbox.svg.meta
new file mode 100644
index 0000000..9f1e961
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/toolbox.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 88a989d11336a4755a134a81e2d28080
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 8bce907c5add64f07aeeabca5d904074
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/triangle-exclamation.svg b/Assets/Rivet/Editor/Images/FontAwesome/triangle-exclamation.svg
new file mode 100644
index 0000000..029437e
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/triangle-exclamation.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/triangle-exclamation.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/triangle-exclamation.svg.meta
new file mode 100644
index 0000000..e81c714
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/triangle-exclamation.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: f576813e212f6443ea5c701bd652b7ed
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: 9ca08e60bd7d24609944b6413dc03cca
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/wrench.svg b/Assets/Rivet/Editor/Images/FontAwesome/wrench.svg
new file mode 100644
index 0000000..c217c9d
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/wrench.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/Images/FontAwesome/wrench.svg.meta b/Assets/Rivet/Editor/Images/FontAwesome/wrench.svg.meta
new file mode 100644
index 0000000..5df760c
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/FontAwesome/wrench.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: 3b4edff0fd4a14f62be12a7aafc33fb2
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: da389f15379884614a6b1afd9de757b9
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Images/icon-text-black.svg b/Assets/Rivet/Editor/Images/icon-text-black.svg
deleted file mode 100644
index 14f0fe0..0000000
--- a/Assets/Rivet/Editor/Images/icon-text-black.svg
+++ /dev/null
@@ -1,9 +0,0 @@
-
diff --git a/Assets/Rivet/Editor/Images/icon-text-white.svg b/Assets/Rivet/Editor/Images/icon-text.svg
similarity index 100%
rename from Assets/Rivet/Editor/Images/icon-text-white.svg
rename to Assets/Rivet/Editor/Images/icon-text.svg
diff --git a/Assets/Rivet/Editor/Images/icon-text.svg.meta b/Assets/Rivet/Editor/Images/icon-text.svg.meta
new file mode 100644
index 0000000..c31769c
--- /dev/null
+++ b/Assets/Rivet/Editor/Images/icon-text.svg.meta
@@ -0,0 +1,54 @@
+fileFormatVersion: 2
+guid: a479d38aa7a054ac89ad1f120d299577
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
+ svgType: 3
+ texturedSpriteMeshType: 0
+ svgPixelsPerUnit: 100
+ gradientResolution: 64
+ alignment: 0
+ customPivot: {x: 0, y: 0}
+ generatePhysicsShape: 0
+ viewportOptions: 0
+ preserveViewport: 0
+ advancedMode: 0
+ predefinedResolutionIndex: 1
+ targetResolution: 1080
+ resolutionMultiplier: 1
+ stepDistance: 10
+ samplingStepDistance: 100
+ maxCordDeviationEnabled: 0
+ maxCordDeviation: 1
+ maxTangentAngleEnabled: 0
+ maxTangentAngle: 5
+ keepTextureAspectRatio: 1
+ textureSize: 256
+ textureWidth: 256
+ textureHeight: 256
+ wrapMode: 0
+ filterMode: 1
+ sampleCount: 4
+ preserveSVGImageAspect: 0
+ useSVGPixelsPerUnit: 0
+ spriteData:
+ TessellationDetail: 0
+ SpriteRect:
+ name:
+ originalName:
+ pivot: {x: 0, y: 0}
+ alignment: 0
+ border: {x: 0, y: 0, z: 0, w: 0}
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 0
+ height: 0
+ spriteID: a0c72442862c44516bafb27b965238f1
+ PhysicsOutlines: []
diff --git a/Assets/Rivet/Editor/Types.cs b/Assets/Rivet/Editor/Types.cs
new file mode 100644
index 0000000..82c791f
--- /dev/null
+++ b/Assets/Rivet/Editor/Types.cs
@@ -0,0 +1,26 @@
+using System.Collections.Generic;
+using Newtonsoft.Json;
+
+namespace Rivet.Editor.Types {
+ public struct BootstrapData
+ {
+ [JsonProperty("token")] public string Token;
+ [JsonProperty("api_endpoint")] public string ApiEndpoint;
+ [JsonProperty("game_id")] public string GameId;
+ [JsonProperty("backend_project")] public BackendProject BackendProject;
+ [JsonProperty("backend_environments")] public List BackendEnvironments;
+ }
+
+ public struct BackendProject
+ {
+ [JsonProperty("project_id")] public string ProjectId;
+ }
+
+ public struct BackendEnvironment
+ {
+ [JsonProperty("display_name")] public string DisplayName;
+ [JsonProperty("endpoint")] public string Endpoint;
+ [JsonProperty("environment_id")] public string EnvironmentId;
+ [JsonProperty("name_id")] public string NameId;
+ }
+}
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/UI/RivetPluginWindow.cs.meta b/Assets/Rivet/Editor/Types.cs.meta
similarity index 83%
rename from Assets/Rivet/Editor/UI/RivetPluginWindow.cs.meta
rename to Assets/Rivet/Editor/Types.cs.meta
index 7244c28..e5f7e0f 100644
--- a/Assets/Rivet/Editor/UI/RivetPluginWindow.cs.meta
+++ b/Assets/Rivet/Editor/Types.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 80f3e943e6c53419383a3877b66c8b13
+guid: 40c7a088a15e54271ba319c46d273049
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/Rivet/Editor/UI/Elements.meta b/Assets/Rivet/Editor/UI/Elements.meta
new file mode 100644
index 0000000..f17965f
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 5857840462cc04f16918a000578c8cfe
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Rivet/Editor/UI/Elements/Header.uss b/Assets/Rivet/Editor/UI/Elements/Header.uss
new file mode 100644
index 0000000..f1392df
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/Header.uss
@@ -0,0 +1,12 @@
+.icon {
+ -unity-background-image-tint-color: var(--unity-colors-default-text);
+ display: none;
+}
+
+#Action {
+ display: none;
+}
+
+.action #Action {
+ display: flex;
+}
diff --git a/Assets/Rivet/Editor/UI/Elements/Header.uss.meta b/Assets/Rivet/Editor/UI/Elements/Header.uss.meta
new file mode 100644
index 0000000..1e31f60
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/Header.uss.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: afe81b5c0253e41cc8eb3aadc5ab2cb1
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
+ disableValidation: 0
diff --git a/Assets/Rivet/Editor/UI/Elements/Header.uxml b/Assets/Rivet/Editor/UI/Elements/Header.uxml
new file mode 100644
index 0000000..cd4897d
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/Header.uxml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/Assets/Rivet/Editor/UI/Elements/Header.uxml.meta b/Assets/Rivet/Editor/UI/Elements/Header.uxml.meta
new file mode 100644
index 0000000..475d896
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/Header.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: 1a49362105f714ca8b863d543d7fde91
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/Elements/HeaderButton.uxml b/Assets/Rivet/Editor/UI/Elements/HeaderButton.uxml
new file mode 100644
index 0000000..5bb0479
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/HeaderButton.uxml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/Assets/Rivet/Editor/UI/Elements/HeaderButton.uxml.meta b/Assets/Rivet/Editor/UI/Elements/HeaderButton.uxml.meta
new file mode 100644
index 0000000..22833c2
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/HeaderButton.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: 57c941b87ce4f4f0e9e2b66baf432c3a
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/Elements/IconButton.uss b/Assets/Rivet/Editor/UI/Elements/IconButton.uss
new file mode 100644
index 0000000..83c1832
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/IconButton.uss
@@ -0,0 +1,3 @@
+#Icon {
+ -unity-background-image-tint-color: var(--unity-colors-button-text);
+}
diff --git a/Assets/Rivet/Editor/UI/Elements/IconButton.uss.meta b/Assets/Rivet/Editor/UI/Elements/IconButton.uss.meta
new file mode 100644
index 0000000..e26b3a5
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/IconButton.uss.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 46887f7c59052429a8401d1ee5e95e18
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
+ disableValidation: 0
diff --git a/Assets/Rivet/Editor/UI/Elements/IconButton.uxml b/Assets/Rivet/Editor/UI/Elements/IconButton.uxml
new file mode 100644
index 0000000..027e4a9
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/IconButton.uxml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/Assets/Rivet/Editor/UI/Elements/IconButton.uxml.meta b/Assets/Rivet/Editor/UI/Elements/IconButton.uxml.meta
new file mode 100644
index 0000000..a8b3d4b
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/IconButton.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: 32b758e0c3c244a2ab439452a6b5a3a0
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/Elements/Separator.uxml b/Assets/Rivet/Editor/UI/Elements/Separator.uxml
new file mode 100644
index 0000000..53fc118
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/Separator.uxml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Assets/Rivet/Editor/UI/Elements/Separator.uxml.meta b/Assets/Rivet/Editor/UI/Elements/Separator.uxml.meta
new file mode 100644
index 0000000..db25230
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/Separator.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: c2ac5cf9dac42448aaf41436ee2b5a41
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/Elements/TabBarButton.uss b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uss
new file mode 100644
index 0000000..51e4008
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uss
@@ -0,0 +1,11 @@
+.icon {
+ -unity-background-image-tint-color: var(--unity-colors-default-text);
+}
+
+.active {
+ color: var(--unity-colors-label-text-focus);
+}
+
+.active .icon {
+ -unity-background-image-tint-color: var(--unity-colors-label-text-focus);
+}
diff --git a/Assets/Rivet/Editor/UI/Elements/TabBarButton.uss.meta b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uss.meta
new file mode 100644
index 0000000..330bd2c
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uss.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6c729a310ed88450ba9095f485b9377c
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
+ disableValidation: 0
diff --git a/Assets/Rivet/Editor/UI/Elements/TabBarButton.uxml b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uxml
new file mode 100644
index 0000000..6527922
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uxml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/Assets/Rivet/Editor/UI/Elements/TabBarButton.uxml.meta b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uxml.meta
new file mode 100644
index 0000000..cb1d780
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Elements/TabBarButton.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: a9cdea76e28674968ae97c2ea93addfc
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/RivetPlugin.cs b/Assets/Rivet/Editor/UI/RivetPlugin.cs
new file mode 100644
index 0000000..88ef144
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/RivetPlugin.cs
@@ -0,0 +1,70 @@
+using System.Threading.Tasks;
+using UnityEditor;
+using UnityEngine;
+using UnityEngine.UIElements;
+using Newtonsoft.Json.Linq;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+using Rivet.UI.Screens;
+
+namespace Rivet.Editor.UI
+{
+ public enum Screen
+ {
+ Login,
+ Main,
+ }
+
+ public class RivetPlugin : EditorWindow
+ {
+ [SerializeField]
+ private VisualTreeAsset m_VisualTreeAsset;
+
+ private Screen _screen = Screen.Login;
+
+ public string ApiEndpoint = "https://api.rivet.gg";
+
+ private VisualElement _screenLogin;
+ private VisualElement _screenMain;
+
+ private LoginController _loginController;
+ private MainController _mainController;
+
+ [MenuItem("Window/UI Toolkit/RivetPlugin")]
+ public static void ShowExample()
+ {
+ RivetPlugin wnd = GetWindow();
+ wnd.titleContent = new GUIContent("RivetPlugin");
+ }
+
+ public void CreateGUI()
+ {
+ PluginSettings.LoadSettings();
+
+ m_VisualTreeAsset.CloneTree(rootVisualElement);
+
+ var screens = rootVisualElement.Q(name: "Screens");
+ _screenLogin = screens.Q(name: "Login");
+ _screenMain = screens.Q(name: "Main");
+
+ // Bind links
+ var links = rootVisualElement.Q(name: "Header").Q(name: "Links");
+ links.Q(name: "DashboardButton").RegisterCallback((ev) => Application.OpenURL("https://hub.rivet.gg"));
+ rootVisualElement.Q(className: "docsButton").RegisterCallback((ev) => Application.OpenURL("https://rivet.gg/docs/unity"));
+ rootVisualElement.Q(className: "discordButton").RegisterCallback((ev) => Application.OpenURL("https://rivet.gg/discord"));
+ rootVisualElement.Q(className: "feedbackButton").RegisterCallback((ev) => Application.OpenURL("https://hub.rivet.gg/?modal=feedback&utm=unity"));
+
+ _loginController = new LoginController(this, _screenLogin);
+ _mainController = new MainController(this, _screenMain);
+
+ SetScreen(Screen.Login);
+ }
+
+ public void SetScreen(Screen screen)
+ {
+ _screen = screen;
+ _screenLogin.style.display = screen == Screen.Login ? DisplayStyle.Flex : DisplayStyle.None;
+ _screenMain.style.display = screen == Screen.Main ? DisplayStyle.Flex : DisplayStyle.None;
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/UI/RivetPlugin.cs.meta b/Assets/Rivet/Editor/UI/RivetPlugin.cs.meta
new file mode 100644
index 0000000..114d47e
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/RivetPlugin.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 29263eaa1db4a4d9998e74aed2430977
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences:
+ - m_VisualTreeAsset: {fileID: 9197481963319205126, guid: 457f807be66a54fcfa0e564b8c4a5ba2, type: 3}
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Rivet/Editor/UI/RivetPlugin.uss b/Assets/Rivet/Editor/UI/RivetPlugin.uss
new file mode 100644
index 0000000..d57556d
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/RivetPlugin.uss
@@ -0,0 +1,43 @@
+.custom-label {
+ font-size: 20px;
+ -unity-font-style: bold;
+ color: rgb(68, 138, 255);
+}
+
+.header-button {
+ background-image: url("project://database/Assets/Rivet/Editor/Images/FontAwesome/bug.svg?fileID=7388822144124034973&guid=b156156de32b04827b7eb6b334ccaf0d&type=3#bug");
+ border-top-width: 0;
+ border-right-width: 0;
+ border-bottom-width: 0;
+ border-left-width: 0;
+ padding-top: 8px;
+ padding-right: 8px;
+ padding-bottom: 8px;
+ padding-left: 8px;
+ margin-top: 0;
+ margin-right: 0;
+ margin-bottom: 0;
+ margin-left: 0;
+ width: 26px;
+ height: 26px;
+}
+
+#DashboardButton .icon {
+ background-image: url("project://database/Assets/Rivet/Editor/Images/FontAwesome/browser.svg?fileID=7388822144124034973&guid=d5b6438060c4b4e59a8c5bf1dd267d0f&type=3#browser");
+}
+
+#DocsButton .icon {
+ background-image: url("project://database/Assets/Rivet/Editor/Images/FontAwesome/book.svg?fileID=7388822144124034973&guid=6e8f178e0ec88464f9ad9f45ad22d210&type=3#book");
+}
+
+#DiscordButton .icon {
+ background-image: url("project://database/Assets/Rivet/Editor/Images/FontAwesome/discord.svg?fileID=7388822144124034973&guid=0a164d5f5d70b46e1a709a15ca016836&type=3#discord");
+}
+
+#FeedbackButton .icon {
+ background-image: url("project://database/Assets/Rivet/Editor/Images/FontAwesome/bug.svg?fileID=7388822144124034973&guid=b156156de32b04827b7eb6b334ccaf0d&type=3#bug");
+}
+
+#Logo {
+ -unity-background-image-tint-color: var(--unity-colors-default-text);
+}
diff --git a/Assets/Rivet/Editor/UI/RivetPlugin.uss.meta b/Assets/Rivet/Editor/UI/RivetPlugin.uss.meta
new file mode 100644
index 0000000..5eff275
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/RivetPlugin.uss.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 129430489c0d04fbc9872e0d6ec0afd9
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
+ disableValidation: 0
diff --git a/Assets/Rivet/Editor/UI/RivetPlugin.uxml b/Assets/Rivet/Editor/UI/RivetPlugin.uxml
new file mode 100644
index 0000000..713e615
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/RivetPlugin.uxml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Assets/Rivet/Editor/UI/RivetPlugin.uxml.meta b/Assets/Rivet/Editor/UI/RivetPlugin.uxml.meta
new file mode 100644
index 0000000..b7f52c6
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/RivetPlugin.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: 457f807be66a54fcfa0e564b8c4a5ba2
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/RivetPluginWindow.cs b/Assets/Rivet/Editor/UI/RivetPluginWindow.cs
deleted file mode 100644
index 3500ab6..0000000
--- a/Assets/Rivet/Editor/UI/RivetPluginWindow.cs
+++ /dev/null
@@ -1,69 +0,0 @@
-using UnityEngine;
-using UnityEditor;
-
-namespace Rivet.Editor.UI
-{
- public class RivetPluginWindow : EditorWindow
- {
- // Assign this in the Unity editor
- // public Texture logoTexture;
-
- public string ApiEndpoint
- {
- get { return ExtensionData.ApiEndpoint; }
- set { ExtensionData.ApiEndpoint = value; }
- }
-
- public string RivetToken
- {
- get { return ExtensionData.CloudToken; }
- set { ExtensionData.CloudToken = value; }
- }
-
- // Define an interface for the states
- public interface IState
- {
- void OnEnter(RivetPluginWindow pluginWindow);
- void OnGUI();
- }
-
- [MenuItem("Window/Rivet")]
- public static void ShowWindow()
- {
- GetWindow("Rivet");
- }
-
- public IState currentState;
-
- public void TransitionToState(IState newState)
- {
- currentState = newState;
- currentState.OnEnter(this);
- }
-
- void OnGUI()
- {
- PluginSettings.LoadSettings();
-
- // Logo
- // GUILayout.Label(logoTexture, GUILayout.Width(200), GUILayout.Height(200));
-
- // Links
- GUILayout.BeginHorizontal();
- if (GUILayout.Button("Dashboard")) Application.OpenURL("https://hub.rivet.gg/");
- if (GUILayout.Button("Documentation")) Application.OpenURL("https://rivet.gg/docs");
- if (GUILayout.Button("Discord")) Application.OpenURL("https://rivet.gg/discord");
- if (GUILayout.Button("Report Bug & Feedback")) Application.OpenURL("https://hub.rivet.gg/?modal=feedback&utm=godot");
- GUILayout.EndHorizontal();
-
- // Window
- currentState.OnGUI();
- }
-
- void OnEnable()
- {
- // Initialize the state machine
- TransitionToState(new Screens.Login.Window());
- }
- }
-}
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/UI/Screens/Login.uxml b/Assets/Rivet/Editor/UI/Screens/Login.uxml
new file mode 100644
index 0000000..d65feda
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Screens/Login.uxml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/Assets/Rivet/Editor/UI/Screens/Login.uxml.meta b/Assets/Rivet/Editor/UI/Screens/Login.uxml.meta
new file mode 100644
index 0000000..9d44e51
--- /dev/null
+++ b/Assets/Rivet/Editor/UI/Screens/Login.uxml.meta
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: b7b2b6e2fb9ca4e7b892705e93037652
+ScriptedImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 2
+ userData:
+ assetBundleName:
+ assetBundleVariant:
+ script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}
diff --git a/Assets/Rivet/Editor/UI/Screens/Login.cs b/Assets/Rivet/Editor/UI/Screens/LoginController.cs
similarity index 58%
rename from Assets/Rivet/Editor/UI/Screens/Login.cs
rename to Assets/Rivet/Editor/UI/Screens/LoginController.cs
index f9df854..89a677f 100644
--- a/Assets/Rivet/Editor/UI/Screens/Login.cs
+++ b/Assets/Rivet/Editor/UI/Screens/LoginController.cs
@@ -1,26 +1,45 @@
-using UnityEngine;
-using UnityEditor;
-using Newtonsoft.Json.Linq;
using System.Threading.Tasks;
+using Newtonsoft.Json.Linq;
+using Rivet.Editor;
+using Rivet.Editor.UI;
+using UnityEditor;
+using UnityEngine;
+using UnityEngine.UIElements;
-namespace Rivet.Editor.UI.Screens.Login
+namespace Rivet.UI.Screens
{
- public class Window : RivetPluginWindow.IState
+ public class LoginController
{
- private RivetPluginWindow _pluginWindow;
- private string _url;
- private string _apiEndpoint = "https://api.rivet.gg";
- private bool _loginButtonEnabled = true;
- private bool showAdvancedOptions = false;
+ private readonly RivetPlugin _pluginWindow;
+ private readonly VisualElement _root;
+
+ private Button _elSignIn;
+ private TextField _elApiEndpoint;
- public async void OnEnter(RivetPluginWindow pluginWindow)
+ public LoginController(RivetPlugin window, VisualElement root)
{
- // Initialize the URL
- _url = "";
+ _pluginWindow = window;
+ _root = root;
- _pluginWindow = pluginWindow;
+ InitUI();
- // First, check if we're already logged in
+ _ = CheckLoginState();
+ }
+
+ void InitUI()
+ {
+ _elSignIn = _root.Q