mirror of https://github.com/ZDoom/qzdoom.git
- remove drpc example files
This commit is contained in:
parent
18def622b4
commit
e212fa1310
|
@ -1,8 +0,0 @@
|
||||||
/Library/
|
|
||||||
/Temp/
|
|
||||||
/obj/
|
|
||||||
/Assets/Plugins/
|
|
||||||
/Assets/Plugins.meta
|
|
||||||
*.sln
|
|
||||||
*.csproj
|
|
||||||
*.userprefs
|
|
|
@ -1,125 +0,0 @@
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
[System.Serializable]
|
|
||||||
public class DiscordJoinEvent : UnityEngine.Events.UnityEvent<string> { }
|
|
||||||
|
|
||||||
[System.Serializable]
|
|
||||||
public class DiscordSpectateEvent : UnityEngine.Events.UnityEvent<string> { }
|
|
||||||
|
|
||||||
[System.Serializable]
|
|
||||||
public class DiscordJoinRequestEvent : UnityEngine.Events.UnityEvent<DiscordRpc.DiscordUser> { }
|
|
||||||
|
|
||||||
public class DiscordController : MonoBehaviour
|
|
||||||
{
|
|
||||||
public DiscordRpc.RichPresence presence = new DiscordRpc.RichPresence();
|
|
||||||
public string applicationId;
|
|
||||||
public string optionalSteamId;
|
|
||||||
public int clickCounter;
|
|
||||||
public DiscordRpc.DiscordUser joinRequest;
|
|
||||||
public UnityEngine.Events.UnityEvent onConnect;
|
|
||||||
public UnityEngine.Events.UnityEvent onDisconnect;
|
|
||||||
public UnityEngine.Events.UnityEvent hasResponded;
|
|
||||||
public DiscordJoinEvent onJoin;
|
|
||||||
public DiscordJoinEvent onSpectate;
|
|
||||||
public DiscordJoinRequestEvent onJoinRequest;
|
|
||||||
|
|
||||||
DiscordRpc.EventHandlers handlers;
|
|
||||||
|
|
||||||
public void OnClick()
|
|
||||||
{
|
|
||||||
Debug.Log("Discord: on click!");
|
|
||||||
clickCounter++;
|
|
||||||
|
|
||||||
presence.details = string.Format("Button clicked {0} times", clickCounter);
|
|
||||||
presence.joinSecret = "aSecret";
|
|
||||||
presence.partyId = "aPartyId";
|
|
||||||
presence.partySize = 1;
|
|
||||||
presence.partyMax = 3;
|
|
||||||
presence.partyPrivacy = DiscordRpc.PartyPrivacy.Public;
|
|
||||||
|
|
||||||
DiscordRpc.UpdatePresence(presence);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void RequestRespondYes()
|
|
||||||
{
|
|
||||||
Debug.Log("Discord: responding yes to Ask to Join request");
|
|
||||||
DiscordRpc.Respond(joinRequest.userId, DiscordRpc.Reply.Yes);
|
|
||||||
hasResponded.Invoke();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void RequestRespondNo()
|
|
||||||
{
|
|
||||||
Debug.Log("Discord: responding no to Ask to Join request");
|
|
||||||
DiscordRpc.Respond(joinRequest.userId, DiscordRpc.Reply.No);
|
|
||||||
hasResponded.Invoke();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void ReadyCallback(ref DiscordRpc.DiscordUser connectedUser)
|
|
||||||
{
|
|
||||||
Debug.Log(string.Format("Discord: connected to {0}#{1}: {2}", connectedUser.username, connectedUser.discriminator, connectedUser.userId));
|
|
||||||
onConnect.Invoke();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void DisconnectedCallback(int errorCode, string message)
|
|
||||||
{
|
|
||||||
Debug.Log(string.Format("Discord: disconnect {0}: {1}", errorCode, message));
|
|
||||||
onDisconnect.Invoke();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void ErrorCallback(int errorCode, string message)
|
|
||||||
{
|
|
||||||
Debug.Log(string.Format("Discord: error {0}: {1}", errorCode, message));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void JoinCallback(string secret)
|
|
||||||
{
|
|
||||||
Debug.Log(string.Format("Discord: join ({0})", secret));
|
|
||||||
onJoin.Invoke(secret);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void SpectateCallback(string secret)
|
|
||||||
{
|
|
||||||
Debug.Log(string.Format("Discord: spectate ({0})", secret));
|
|
||||||
onSpectate.Invoke(secret);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void RequestCallback(ref DiscordRpc.DiscordUser request)
|
|
||||||
{
|
|
||||||
Debug.Log(string.Format("Discord: join request {0}#{1}: {2}", request.username, request.discriminator, request.userId));
|
|
||||||
joinRequest = request;
|
|
||||||
onJoinRequest.Invoke(request);
|
|
||||||
}
|
|
||||||
|
|
||||||
void Start()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void Update()
|
|
||||||
{
|
|
||||||
DiscordRpc.RunCallbacks();
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnEnable()
|
|
||||||
{
|
|
||||||
Debug.Log("Discord: init");
|
|
||||||
handlers = new DiscordRpc.EventHandlers();
|
|
||||||
handlers.readyCallback += ReadyCallback;
|
|
||||||
handlers.disconnectedCallback += DisconnectedCallback;
|
|
||||||
handlers.errorCallback += ErrorCallback;
|
|
||||||
handlers.joinCallback += JoinCallback;
|
|
||||||
handlers.spectateCallback += SpectateCallback;
|
|
||||||
handlers.requestCallback += RequestCallback;
|
|
||||||
DiscordRpc.Initialize(applicationId, ref handlers, true, optionalSteamId);
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnDisable()
|
|
||||||
{
|
|
||||||
Debug.Log("Discord: shutdown");
|
|
||||||
DiscordRpc.Shutdown();
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnDestroy()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: 27f0a5f59ffffa84c86547736e2e730a
|
|
||||||
timeCreated: 1501697692
|
|
||||||
licenseType: Free
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,231 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
using System.Text;
|
|
||||||
using AOT;
|
|
||||||
|
|
||||||
public class DiscordRpc
|
|
||||||
{
|
|
||||||
[MonoPInvokeCallback(typeof(OnReadyInfo))]
|
|
||||||
public static void ReadyCallback(ref DiscordUser connectedUser) { Callbacks.readyCallback(ref connectedUser); }
|
|
||||||
public delegate void OnReadyInfo(ref DiscordUser connectedUser);
|
|
||||||
|
|
||||||
[MonoPInvokeCallback(typeof(OnDisconnectedInfo))]
|
|
||||||
public static void DisconnectedCallback(int errorCode, string message) { Callbacks.disconnectedCallback(errorCode, message); }
|
|
||||||
public delegate void OnDisconnectedInfo(int errorCode, string message);
|
|
||||||
|
|
||||||
[MonoPInvokeCallback(typeof(OnErrorInfo))]
|
|
||||||
public static void ErrorCallback(int errorCode, string message) { Callbacks.errorCallback(errorCode, message); }
|
|
||||||
public delegate void OnErrorInfo(int errorCode, string message);
|
|
||||||
|
|
||||||
[MonoPInvokeCallback(typeof(OnJoinInfo))]
|
|
||||||
public static void JoinCallback(string secret) { Callbacks.joinCallback(secret); }
|
|
||||||
public delegate void OnJoinInfo(string secret);
|
|
||||||
|
|
||||||
[MonoPInvokeCallback(typeof(OnSpectateInfo))]
|
|
||||||
public static void SpectateCallback(string secret) { Callbacks.spectateCallback(secret); }
|
|
||||||
public delegate void OnSpectateInfo(string secret);
|
|
||||||
|
|
||||||
[MonoPInvokeCallback(typeof(OnRequestInfo))]
|
|
||||||
public static void RequestCallback(ref DiscordUser request) { Callbacks.requestCallback(ref request); }
|
|
||||||
public delegate void OnRequestInfo(ref DiscordUser request);
|
|
||||||
|
|
||||||
static EventHandlers Callbacks { get; set; }
|
|
||||||
|
|
||||||
public struct EventHandlers
|
|
||||||
{
|
|
||||||
public OnReadyInfo readyCallback;
|
|
||||||
public OnDisconnectedInfo disconnectedCallback;
|
|
||||||
public OnErrorInfo errorCallback;
|
|
||||||
public OnJoinInfo joinCallback;
|
|
||||||
public OnSpectateInfo spectateCallback;
|
|
||||||
public OnRequestInfo requestCallback;
|
|
||||||
}
|
|
||||||
|
|
||||||
[Serializable, StructLayout(LayoutKind.Sequential)]
|
|
||||||
public struct RichPresenceStruct
|
|
||||||
{
|
|
||||||
public IntPtr state; /* max 128 bytes */
|
|
||||||
public IntPtr details; /* max 128 bytes */
|
|
||||||
public long startTimestamp;
|
|
||||||
public long endTimestamp;
|
|
||||||
public IntPtr largeImageKey; /* max 32 bytes */
|
|
||||||
public IntPtr largeImageText; /* max 128 bytes */
|
|
||||||
public IntPtr smallImageKey; /* max 32 bytes */
|
|
||||||
public IntPtr smallImageText; /* max 128 bytes */
|
|
||||||
public IntPtr partyId; /* max 128 bytes */
|
|
||||||
public int partySize;
|
|
||||||
public int partyMax;
|
|
||||||
public int partyPrivacy;
|
|
||||||
public IntPtr matchSecret; /* max 128 bytes */
|
|
||||||
public IntPtr joinSecret; /* max 128 bytes */
|
|
||||||
public IntPtr spectateSecret; /* max 128 bytes */
|
|
||||||
public bool instance;
|
|
||||||
}
|
|
||||||
|
|
||||||
[Serializable]
|
|
||||||
public struct DiscordUser
|
|
||||||
{
|
|
||||||
public string userId;
|
|
||||||
public string username;
|
|
||||||
public string discriminator;
|
|
||||||
public string avatar;
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum Reply
|
|
||||||
{
|
|
||||||
No = 0,
|
|
||||||
Yes = 1,
|
|
||||||
Ignore = 2
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum PartyPrivacy
|
|
||||||
{
|
|
||||||
Private = 0,
|
|
||||||
Public = 1
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void Initialize(string applicationId, ref EventHandlers handlers, bool autoRegister, string optionalSteamId)
|
|
||||||
{
|
|
||||||
Callbacks = handlers;
|
|
||||||
|
|
||||||
EventHandlers staticEventHandlers = new EventHandlers();
|
|
||||||
staticEventHandlers.readyCallback += DiscordRpc.ReadyCallback;
|
|
||||||
staticEventHandlers.disconnectedCallback += DiscordRpc.DisconnectedCallback;
|
|
||||||
staticEventHandlers.errorCallback += DiscordRpc.ErrorCallback;
|
|
||||||
staticEventHandlers.joinCallback += DiscordRpc.JoinCallback;
|
|
||||||
staticEventHandlers.spectateCallback += DiscordRpc.SpectateCallback;
|
|
||||||
staticEventHandlers.requestCallback += DiscordRpc.RequestCallback;
|
|
||||||
|
|
||||||
InitializeInternal(applicationId, ref staticEventHandlers, autoRegister, optionalSteamId);
|
|
||||||
}
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_Initialize", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
static extern void InitializeInternal(string applicationId, ref EventHandlers handlers, bool autoRegister, string optionalSteamId);
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_Shutdown", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
public static extern void Shutdown();
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_RunCallbacks", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
public static extern void RunCallbacks();
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_UpdatePresence", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
private static extern void UpdatePresenceNative(ref RichPresenceStruct presence);
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_ClearPresence", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
public static extern void ClearPresence();
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_Respond", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
public static extern void Respond(string userId, Reply reply);
|
|
||||||
|
|
||||||
[DllImport("discord-rpc", EntryPoint = "Discord_UpdateHandlers", CallingConvention = CallingConvention.Cdecl)]
|
|
||||||
public static extern void UpdateHandlers(ref EventHandlers handlers);
|
|
||||||
|
|
||||||
public static void UpdatePresence(RichPresence presence)
|
|
||||||
{
|
|
||||||
var presencestruct = presence.GetStruct();
|
|
||||||
UpdatePresenceNative(ref presencestruct);
|
|
||||||
presence.FreeMem();
|
|
||||||
}
|
|
||||||
|
|
||||||
public class RichPresence
|
|
||||||
{
|
|
||||||
private RichPresenceStruct _presence;
|
|
||||||
private readonly List<IntPtr> _buffers = new List<IntPtr>(10);
|
|
||||||
|
|
||||||
public string state; /* max 128 bytes */
|
|
||||||
public string details; /* max 128 bytes */
|
|
||||||
public long startTimestamp;
|
|
||||||
public long endTimestamp;
|
|
||||||
public string largeImageKey; /* max 32 bytes */
|
|
||||||
public string largeImageText; /* max 128 bytes */
|
|
||||||
public string smallImageKey; /* max 32 bytes */
|
|
||||||
public string smallImageText; /* max 128 bytes */
|
|
||||||
public string partyId; /* max 128 bytes */
|
|
||||||
public int partySize;
|
|
||||||
public int partyMax;
|
|
||||||
public PartyPrivacy partyPrivacy;
|
|
||||||
public string matchSecret; /* max 128 bytes */
|
|
||||||
public string joinSecret; /* max 128 bytes */
|
|
||||||
public string spectateSecret; /* max 128 bytes */
|
|
||||||
public bool instance;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Get the <see cref="RichPresenceStruct"/> reprensentation of this instance
|
|
||||||
/// </summary>
|
|
||||||
/// <returns><see cref="RichPresenceStruct"/> reprensentation of this instance</returns>
|
|
||||||
internal RichPresenceStruct GetStruct()
|
|
||||||
{
|
|
||||||
if (_buffers.Count > 0)
|
|
||||||
{
|
|
||||||
FreeMem();
|
|
||||||
}
|
|
||||||
|
|
||||||
_presence.state = StrToPtr(state);
|
|
||||||
_presence.details = StrToPtr(details);
|
|
||||||
_presence.startTimestamp = startTimestamp;
|
|
||||||
_presence.endTimestamp = endTimestamp;
|
|
||||||
_presence.largeImageKey = StrToPtr(largeImageKey);
|
|
||||||
_presence.largeImageText = StrToPtr(largeImageText);
|
|
||||||
_presence.smallImageKey = StrToPtr(smallImageKey);
|
|
||||||
_presence.smallImageText = StrToPtr(smallImageText);
|
|
||||||
_presence.partyId = StrToPtr(partyId);
|
|
||||||
_presence.partySize = partySize;
|
|
||||||
_presence.partyMax = partyMax;
|
|
||||||
_presence.partyPrivacy = (int)partyPrivacy;
|
|
||||||
_presence.matchSecret = StrToPtr(matchSecret);
|
|
||||||
_presence.joinSecret = StrToPtr(joinSecret);
|
|
||||||
_presence.spectateSecret = StrToPtr(spectateSecret);
|
|
||||||
_presence.instance = instance;
|
|
||||||
|
|
||||||
return _presence;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Returns a pointer to a representation of the given string with a size of maxbytes
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="input">String to convert</param>
|
|
||||||
/// <returns>Pointer to the UTF-8 representation of <see cref="input"/></returns>
|
|
||||||
private IntPtr StrToPtr(string input)
|
|
||||||
{
|
|
||||||
if (string.IsNullOrEmpty(input)) return IntPtr.Zero;
|
|
||||||
var convbytecnt = Encoding.UTF8.GetByteCount(input);
|
|
||||||
var buffer = Marshal.AllocHGlobal(convbytecnt + 1);
|
|
||||||
for (int i = 0; i < convbytecnt + 1; i++)
|
|
||||||
{
|
|
||||||
Marshal.WriteByte(buffer, i, 0);
|
|
||||||
}
|
|
||||||
_buffers.Add(buffer);
|
|
||||||
Marshal.Copy(Encoding.UTF8.GetBytes(input), 0, buffer, convbytecnt);
|
|
||||||
return buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Convert string to UTF-8 and add null termination
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="toconv">string to convert</param>
|
|
||||||
/// <returns>UTF-8 representation of <see cref="toconv"/> with added null termination</returns>
|
|
||||||
private static string StrToUtf8NullTerm(string toconv)
|
|
||||||
{
|
|
||||||
var str = toconv.Trim();
|
|
||||||
var bytes = Encoding.Default.GetBytes(str);
|
|
||||||
if (bytes.Length > 0 && bytes[bytes.Length - 1] != 0)
|
|
||||||
{
|
|
||||||
str += "\0\0";
|
|
||||||
}
|
|
||||||
return Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(str));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Free the allocated memory for conversion to <see cref="RichPresenceStruct"/>
|
|
||||||
/// </summary>
|
|
||||||
internal void FreeMem()
|
|
||||||
{
|
|
||||||
for (var i = _buffers.Count - 1; i >= 0; i--)
|
|
||||||
{
|
|
||||||
Marshal.FreeHGlobal(_buffers[i]);
|
|
||||||
_buffers.RemoveAt(i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: b4474a677de9d80409e98c5393ec5b1e
|
|
||||||
timeCreated: 1501697692
|
|
||||||
licenseType: Free
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,101 +0,0 @@
|
||||||
using UnityEditor;
|
|
||||||
using System.Diagnostics;
|
|
||||||
using System.IO;
|
|
||||||
|
|
||||||
[InitializeOnLoad]
|
|
||||||
public class ScriptBatch
|
|
||||||
{
|
|
||||||
static ScriptBatch()
|
|
||||||
{
|
|
||||||
EnsureDLL();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static bool FileExists(string filename)
|
|
||||||
{
|
|
||||||
return new FileInfo(filename).Exists;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static bool RunRpcBuildScript()
|
|
||||||
{
|
|
||||||
UnityEngine.Debug.Log("Try to run build script");
|
|
||||||
|
|
||||||
Process proc = new Process();
|
|
||||||
#if UNITY_STANDALONE_OSX || UNITY_EDITOR_OSX
|
|
||||||
proc.StartInfo.UseShellExecute = false;
|
|
||||||
// brew installs cmake in /usr/local/bin, which Unity seems to strip from PATH?
|
|
||||||
string newPath = proc.StartInfo.EnvironmentVariables["PATH"] + ":/usr/local/bin";
|
|
||||||
proc.StartInfo.EnvironmentVariables["PATH"] = newPath;
|
|
||||||
#endif
|
|
||||||
proc.StartInfo.FileName = "python";
|
|
||||||
proc.StartInfo.Arguments = "build.py unity";
|
|
||||||
proc.StartInfo.WorkingDirectory = "../..";
|
|
||||||
proc.Start();
|
|
||||||
proc.WaitForExit();
|
|
||||||
return proc.ExitCode == 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void EnsureDLL()
|
|
||||||
{
|
|
||||||
#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN
|
|
||||||
string[] dstDirs = { "Assets/Plugins", "Assets/Plugins/x86", "Assets/Plugins/x86_64" };
|
|
||||||
string[] dstDlls = { "Assets/Plugins/x86/discord-rpc.dll", "Assets/Plugins/x86_64/discord-rpc.dll" };
|
|
||||||
string[] srcDlls = { "../../builds/install/win64-dynamic/bin/discord-rpc.dll", "../../builds/install/win64-dynamic/bin/discord-rpc.dll" };
|
|
||||||
#elif UNITY_STANDALONE_OSX || UNITY_EDITOR_OSX
|
|
||||||
string[] dstDirs = { "Assets/Plugins" };
|
|
||||||
string[] dstDlls = { "Assets/Plugins/discord-rpc.bundle" };
|
|
||||||
string[] srcDlls = { "../../builds/install/osx-dynamic/lib/libdiscord-rpc.dylib" };
|
|
||||||
#else
|
|
||||||
string[] dstDirs = { "Assets/Plugins", "Assets/Plugins/x86", "Assets/Plugins/x86_64" };
|
|
||||||
string[] dstDlls = { "Assets/Plugins/discord-rpc.so" };
|
|
||||||
string[] srcDlls = { "../../builds/install/linux-dynamic/lib/libdiscord-rpc.so" };
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Debug.Assert(dstDlls.Length == srcDlls.Length);
|
|
||||||
|
|
||||||
bool exists = true;
|
|
||||||
foreach (string fname in dstDlls)
|
|
||||||
{
|
|
||||||
if (!FileExists(fname))
|
|
||||||
{
|
|
||||||
exists = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (exists)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
exists = true;
|
|
||||||
foreach (string fname in srcDlls)
|
|
||||||
{
|
|
||||||
if (!FileExists(fname))
|
|
||||||
{
|
|
||||||
exists = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!exists)
|
|
||||||
{
|
|
||||||
if (!RunRpcBuildScript())
|
|
||||||
{
|
|
||||||
UnityEngine.Debug.LogError("Build failed");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// make sure the dirs exist
|
|
||||||
foreach (string dirname in dstDirs)
|
|
||||||
{
|
|
||||||
Directory.CreateDirectory(dirname);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copy dlls
|
|
||||||
for (int i = 0; i < dstDlls.Length; ++i)
|
|
||||||
{
|
|
||||||
FileUtil.CopyFileOrDirectory(srcDlls[i], dstDlls[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: e5aecc4633e5f594b85eaa39f49bb402
|
|
||||||
timeCreated: 1512071254
|
|
||||||
licenseType: Free
|
|
||||||
MonoImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,8 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: 3b03d21bb25fa494e8694cd6e4b6d769
|
|
||||||
timeCreated: 1501696924
|
|
||||||
licenseType: Free
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,17 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!11 &1
|
|
||||||
AudioManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_Volume: 1
|
|
||||||
Rolloff Scale: 1
|
|
||||||
Doppler Factor: 1
|
|
||||||
Default Speaker Mode: 2
|
|
||||||
m_SampleRate: 0
|
|
||||||
m_DSPBufferSize: 0
|
|
||||||
m_VirtualVoiceCount: 512
|
|
||||||
m_RealVoiceCount: 32
|
|
||||||
m_SpatializerPlugin:
|
|
||||||
m_AmbisonicDecoderPlugin:
|
|
||||||
m_DisableAudio: 0
|
|
||||||
m_VirtualizeEffects: 1
|
|
|
@ -1,6 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!236 &1
|
|
||||||
ClusterInputManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_Inputs: []
|
|
|
@ -1,20 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!55 &1
|
|
||||||
PhysicsManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 3
|
|
||||||
m_Gravity: {x: 0, y: -9.81, z: 0}
|
|
||||||
m_DefaultMaterial: {fileID: 0}
|
|
||||||
m_BounceThreshold: 2
|
|
||||||
m_SleepThreshold: 0.005
|
|
||||||
m_DefaultContactOffset: 0.01
|
|
||||||
m_DefaultSolverIterations: 6
|
|
||||||
m_DefaultSolverVelocityIterations: 1
|
|
||||||
m_QueriesHitBackfaces: 0
|
|
||||||
m_QueriesHitTriggers: 1
|
|
||||||
m_EnableAdaptiveForce: 0
|
|
||||||
m_EnablePCM: 1
|
|
||||||
m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
m_AutoSimulation: 1
|
|
||||||
m_AutoSyncTransforms: 1
|
|
|
@ -1,10 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!1045 &1
|
|
||||||
EditorBuildSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Scenes:
|
|
||||||
- enabled: 1
|
|
||||||
path: Assets/main.unity
|
|
||||||
guid: 3b03d21bb25fa494e8694cd6e4b6d769
|
|
|
@ -1,16 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!159 &1
|
|
||||||
EditorSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 4
|
|
||||||
m_ExternalVersionControlSupport: Visible Meta Files
|
|
||||||
m_SerializationMode: 2
|
|
||||||
m_DefaultBehaviorMode: 1
|
|
||||||
m_SpritePackerMode: 4
|
|
||||||
m_SpritePackerPaddingPower: 1
|
|
||||||
m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd
|
|
||||||
m_ProjectGenerationRootNamespace:
|
|
||||||
m_UserGeneratedProjectSuffix:
|
|
||||||
m_CollabEditorSettings:
|
|
||||||
inProgressEnabled: 1
|
|
|
@ -1,61 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!30 &1
|
|
||||||
GraphicsSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 12
|
|
||||||
m_Deferred:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_DeferredReflections:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_ScreenSpaceShadows:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_LegacyDeferred:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_DepthNormals:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_MotionVectors:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_LightHalo:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_LensFlare:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_AlwaysIncludedShaders:
|
|
||||||
- {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_PreloadedShaders: []
|
|
||||||
m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
|
|
||||||
type: 0}
|
|
||||||
m_CustomRenderPipeline: {fileID: 0}
|
|
||||||
m_TransparencySortMode: 0
|
|
||||||
m_TransparencySortAxis: {x: 0, y: 0, z: 1}
|
|
||||||
m_DefaultRenderingPath: 1
|
|
||||||
m_DefaultMobileRenderingPath: 1
|
|
||||||
m_TierSettings: []
|
|
||||||
m_LightmapStripping: 0
|
|
||||||
m_FogStripping: 0
|
|
||||||
m_InstancingStripping: 0
|
|
||||||
m_LightmapKeepPlain: 1
|
|
||||||
m_LightmapKeepDirCombined: 1
|
|
||||||
m_LightmapKeepDynamicPlain: 1
|
|
||||||
m_LightmapKeepDynamicDirCombined: 1
|
|
||||||
m_LightmapKeepShadowMask: 1
|
|
||||||
m_LightmapKeepSubtractive: 1
|
|
||||||
m_FogKeepLinear: 1
|
|
||||||
m_FogKeepExp: 1
|
|
||||||
m_FogKeepExp2: 1
|
|
||||||
m_AlbedoSwatchInfos: []
|
|
||||||
m_LightsUseLinearIntensity: 0
|
|
||||||
m_LightsUseColorTemperature: 0
|
|
|
@ -1,295 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!13 &1
|
|
||||||
InputManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Axes:
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Horizontal
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: left
|
|
||||||
positiveButton: right
|
|
||||||
altNegativeButton: a
|
|
||||||
altPositiveButton: d
|
|
||||||
gravity: 3
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 3
|
|
||||||
snap: 1
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Vertical
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: down
|
|
||||||
positiveButton: up
|
|
||||||
altNegativeButton: s
|
|
||||||
altPositiveButton: w
|
|
||||||
gravity: 3
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 3
|
|
||||||
snap: 1
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire1
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left ctrl
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: mouse 0
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire2
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left alt
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: mouse 1
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire3
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left shift
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: mouse 2
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Jump
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: space
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Mouse X
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0.1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 1
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Mouse Y
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0.1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 1
|
|
||||||
axis: 1
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Mouse ScrollWheel
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0.1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 1
|
|
||||||
axis: 2
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Horizontal
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0.19
|
|
||||||
sensitivity: 1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 2
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Vertical
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0.19
|
|
||||||
sensitivity: 1
|
|
||||||
snap: 0
|
|
||||||
invert: 1
|
|
||||||
type: 2
|
|
||||||
axis: 1
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire1
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 0
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire2
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 1
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire3
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 2
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Jump
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 3
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Submit
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: return
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 0
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Submit
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: enter
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: space
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Cancel
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: escape
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 1
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
|
@ -1,89 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!126 &1
|
|
||||||
NavMeshProjectSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
areas:
|
|
||||||
- name: Walkable
|
|
||||||
cost: 1
|
|
||||||
- name: Not Walkable
|
|
||||||
cost: 1
|
|
||||||
- name: Jump
|
|
||||||
cost: 2
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
m_LastAgentTypeID: -887442657
|
|
||||||
m_Settings:
|
|
||||||
- serializedVersion: 2
|
|
||||||
agentTypeID: 0
|
|
||||||
agentRadius: 0.5
|
|
||||||
agentHeight: 2
|
|
||||||
agentSlope: 45
|
|
||||||
agentClimb: 0.75
|
|
||||||
ledgeDropHeight: 0
|
|
||||||
maxJumpAcrossDistance: 0
|
|
||||||
minRegionArea: 2
|
|
||||||
manualCellSize: 0
|
|
||||||
cellSize: 0.16666667
|
|
||||||
manualTileSize: 0
|
|
||||||
tileSize: 256
|
|
||||||
accuratePlacement: 0
|
|
||||||
m_SettingNames:
|
|
||||||
- Humanoid
|
|
|
@ -1,8 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!149 &1
|
|
||||||
NetworkManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_DebugLevel: 0
|
|
||||||
m_Sendrate: 15
|
|
||||||
m_AssetToPrefab: {}
|
|
|
@ -1,37 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!19 &1
|
|
||||||
Physics2DSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 3
|
|
||||||
m_Gravity: {x: 0, y: -9.81}
|
|
||||||
m_DefaultMaterial: {fileID: 0}
|
|
||||||
m_VelocityIterations: 8
|
|
||||||
m_PositionIterations: 3
|
|
||||||
m_VelocityThreshold: 1
|
|
||||||
m_MaxLinearCorrection: 0.2
|
|
||||||
m_MaxAngularCorrection: 8
|
|
||||||
m_MaxTranslationSpeed: 100
|
|
||||||
m_MaxRotationSpeed: 360
|
|
||||||
m_BaumgarteScale: 0.2
|
|
||||||
m_BaumgarteTimeOfImpactScale: 0.75
|
|
||||||
m_TimeToSleep: 0.5
|
|
||||||
m_LinearSleepTolerance: 0.01
|
|
||||||
m_AngularSleepTolerance: 2
|
|
||||||
m_DefaultContactOffset: 0.01
|
|
||||||
m_AutoSimulation: 1
|
|
||||||
m_QueriesHitTriggers: 1
|
|
||||||
m_QueriesStartInColliders: 1
|
|
||||||
m_ChangeStopsCallbacks: 0
|
|
||||||
m_CallbacksOnDisable: 1
|
|
||||||
m_AutoSyncTransforms: 1
|
|
||||||
m_AlwaysShowColliders: 0
|
|
||||||
m_ShowColliderSleep: 1
|
|
||||||
m_ShowColliderContacts: 0
|
|
||||||
m_ShowColliderAABB: 0
|
|
||||||
m_ContactArrowScale: 0.2
|
|
||||||
m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
|
|
||||||
m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
|
|
||||||
m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
|
|
||||||
m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
|
|
||||||
m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
|
@ -1,610 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!129 &1
|
|
||||||
PlayerSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 13
|
|
||||||
productGUID: 5eccc60d3e382a346a65f512d6b81b84
|
|
||||||
AndroidProfiler: 0
|
|
||||||
AndroidFilterTouchesWhenObscured: 0
|
|
||||||
defaultScreenOrientation: 4
|
|
||||||
targetDevice: 2
|
|
||||||
useOnDemandResources: 0
|
|
||||||
accelerometerFrequency: 60
|
|
||||||
companyName: Discord Inc.
|
|
||||||
productName: button-clicker
|
|
||||||
defaultCursor: {fileID: 0}
|
|
||||||
cursorHotspot: {x: 0, y: 0}
|
|
||||||
m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
|
|
||||||
m_ShowUnitySplashScreen: 1
|
|
||||||
m_ShowUnitySplashLogo: 1
|
|
||||||
m_SplashScreenOverlayOpacity: 1
|
|
||||||
m_SplashScreenAnimation: 1
|
|
||||||
m_SplashScreenLogoStyle: 1
|
|
||||||
m_SplashScreenDrawMode: 0
|
|
||||||
m_SplashScreenBackgroundAnimationZoom: 1
|
|
||||||
m_SplashScreenLogoAnimationZoom: 1
|
|
||||||
m_SplashScreenBackgroundLandscapeAspect: 1
|
|
||||||
m_SplashScreenBackgroundPortraitAspect: 1
|
|
||||||
m_SplashScreenBackgroundLandscapeUvs:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1
|
|
||||||
height: 1
|
|
||||||
m_SplashScreenBackgroundPortraitUvs:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1
|
|
||||||
height: 1
|
|
||||||
m_SplashScreenLogos: []
|
|
||||||
m_VirtualRealitySplashScreen: {fileID: 0}
|
|
||||||
m_HolographicTrackingLossScreen: {fileID: 0}
|
|
||||||
defaultScreenWidth: 1024
|
|
||||||
defaultScreenHeight: 768
|
|
||||||
defaultScreenWidthWeb: 960
|
|
||||||
defaultScreenHeightWeb: 600
|
|
||||||
m_StereoRenderingPath: 0
|
|
||||||
m_ActiveColorSpace: 0
|
|
||||||
m_MTRendering: 1
|
|
||||||
m_StackTraceTypes: 010000000100000001000000010000000100000001000000
|
|
||||||
iosShowActivityIndicatorOnLoading: -1
|
|
||||||
androidShowActivityIndicatorOnLoading: -1
|
|
||||||
tizenShowActivityIndicatorOnLoading: -1
|
|
||||||
iosAppInBackgroundBehavior: 0
|
|
||||||
displayResolutionDialog: 1
|
|
||||||
iosAllowHTTPDownload: 1
|
|
||||||
allowedAutorotateToPortrait: 1
|
|
||||||
allowedAutorotateToPortraitUpsideDown: 1
|
|
||||||
allowedAutorotateToLandscapeRight: 1
|
|
||||||
allowedAutorotateToLandscapeLeft: 1
|
|
||||||
useOSAutorotation: 1
|
|
||||||
use32BitDisplayBuffer: 1
|
|
||||||
disableDepthAndStencilBuffers: 0
|
|
||||||
androidBlitType: 0
|
|
||||||
defaultIsFullScreen: 1
|
|
||||||
defaultIsNativeResolution: 1
|
|
||||||
macRetinaSupport: 1
|
|
||||||
runInBackground: 0
|
|
||||||
captureSingleScreen: 0
|
|
||||||
muteOtherAudioSources: 0
|
|
||||||
Prepare IOS For Recording: 0
|
|
||||||
Force IOS Speakers When Recording: 0
|
|
||||||
submitAnalytics: 1
|
|
||||||
usePlayerLog: 1
|
|
||||||
bakeCollisionMeshes: 0
|
|
||||||
forceSingleInstance: 0
|
|
||||||
resizableWindow: 0
|
|
||||||
useMacAppStoreValidation: 0
|
|
||||||
macAppStoreCategory: public.app-category.games
|
|
||||||
gpuSkinning: 0
|
|
||||||
graphicsJobs: 0
|
|
||||||
xboxPIXTextureCapture: 0
|
|
||||||
xboxEnableAvatar: 0
|
|
||||||
xboxEnableKinect: 0
|
|
||||||
xboxEnableKinectAutoTracking: 0
|
|
||||||
xboxEnableFitness: 0
|
|
||||||
visibleInBackground: 1
|
|
||||||
allowFullscreenSwitch: 1
|
|
||||||
graphicsJobMode: 0
|
|
||||||
macFullscreenMode: 2
|
|
||||||
d3d9FullscreenMode: 1
|
|
||||||
d3d11FullscreenMode: 1
|
|
||||||
xboxSpeechDB: 0
|
|
||||||
xboxEnableHeadOrientation: 0
|
|
||||||
xboxEnableGuest: 0
|
|
||||||
xboxEnablePIXSampling: 0
|
|
||||||
metalFramebufferOnly: 0
|
|
||||||
n3dsDisableStereoscopicView: 0
|
|
||||||
n3dsEnableSharedListOpt: 1
|
|
||||||
n3dsEnableVSync: 0
|
|
||||||
ignoreAlphaClear: 0
|
|
||||||
xboxOneResolution: 0
|
|
||||||
xboxOneMonoLoggingLevel: 0
|
|
||||||
xboxOneLoggingLevel: 1
|
|
||||||
xboxOneDisableEsram: 0
|
|
||||||
xboxOnePresentImmediateThreshold: 0
|
|
||||||
videoMemoryForVertexBuffers: 0
|
|
||||||
psp2PowerMode: 0
|
|
||||||
psp2AcquireBGM: 1
|
|
||||||
wiiUTVResolution: 0
|
|
||||||
wiiUGamePadMSAA: 1
|
|
||||||
wiiUSupportsNunchuk: 0
|
|
||||||
wiiUSupportsClassicController: 0
|
|
||||||
wiiUSupportsBalanceBoard: 0
|
|
||||||
wiiUSupportsMotionPlus: 0
|
|
||||||
wiiUSupportsProController: 0
|
|
||||||
wiiUAllowScreenCapture: 1
|
|
||||||
wiiUControllerCount: 0
|
|
||||||
m_SupportedAspectRatios:
|
|
||||||
4:3: 1
|
|
||||||
5:4: 1
|
|
||||||
16:10: 1
|
|
||||||
16:9: 1
|
|
||||||
Others: 1
|
|
||||||
bundleVersion: 1.0
|
|
||||||
preloadedAssets: []
|
|
||||||
metroInputSource: 0
|
|
||||||
m_HolographicPauseOnTrackingLoss: 1
|
|
||||||
xboxOneDisableKinectGpuReservation: 0
|
|
||||||
xboxOneEnable7thCore: 0
|
|
||||||
vrSettings:
|
|
||||||
cardboard:
|
|
||||||
depthFormat: 0
|
|
||||||
enableTransitionView: 0
|
|
||||||
daydream:
|
|
||||||
depthFormat: 0
|
|
||||||
useSustainedPerformanceMode: 0
|
|
||||||
enableVideoLayer: 0
|
|
||||||
useProtectedVideoMemory: 0
|
|
||||||
hololens:
|
|
||||||
depthFormat: 1
|
|
||||||
protectGraphicsMemory: 0
|
|
||||||
useHDRDisplay: 0
|
|
||||||
m_ColorGamuts: 00000000
|
|
||||||
targetPixelDensity: 0
|
|
||||||
resolutionScalingMode: 0
|
|
||||||
androidSupportedAspectRatio: 1
|
|
||||||
androidMaxAspectRatio: 2.1
|
|
||||||
applicationIdentifier: {}
|
|
||||||
buildNumber: {}
|
|
||||||
AndroidBundleVersionCode: 1
|
|
||||||
AndroidMinSdkVersion: 16
|
|
||||||
AndroidTargetSdkVersion: 0
|
|
||||||
AndroidPreferredInstallLocation: 1
|
|
||||||
aotOptions:
|
|
||||||
stripEngineCode: 1
|
|
||||||
iPhoneStrippingLevel: 0
|
|
||||||
iPhoneScriptCallOptimization: 0
|
|
||||||
ForceInternetPermission: 0
|
|
||||||
ForceSDCardPermission: 0
|
|
||||||
CreateWallpaper: 0
|
|
||||||
APKExpansionFiles: 0
|
|
||||||
keepLoadedShadersAlive: 0
|
|
||||||
StripUnusedMeshComponents: 0
|
|
||||||
VertexChannelCompressionMask:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 238
|
|
||||||
iPhoneSdkVersion: 988
|
|
||||||
iOSTargetOSVersionString: 7.0
|
|
||||||
tvOSSdkVersion: 0
|
|
||||||
tvOSRequireExtendedGameController: 0
|
|
||||||
tvOSTargetOSVersionString: 9.0
|
|
||||||
uIPrerenderedIcon: 0
|
|
||||||
uIRequiresPersistentWiFi: 0
|
|
||||||
uIRequiresFullScreen: 1
|
|
||||||
uIStatusBarHidden: 1
|
|
||||||
uIExitOnSuspend: 0
|
|
||||||
uIStatusBarStyle: 0
|
|
||||||
iPhoneSplashScreen: {fileID: 0}
|
|
||||||
iPhoneHighResSplashScreen: {fileID: 0}
|
|
||||||
iPhoneTallHighResSplashScreen: {fileID: 0}
|
|
||||||
iPhone47inSplashScreen: {fileID: 0}
|
|
||||||
iPhone55inPortraitSplashScreen: {fileID: 0}
|
|
||||||
iPhone55inLandscapeSplashScreen: {fileID: 0}
|
|
||||||
iPadPortraitSplashScreen: {fileID: 0}
|
|
||||||
iPadHighResPortraitSplashScreen: {fileID: 0}
|
|
||||||
iPadLandscapeSplashScreen: {fileID: 0}
|
|
||||||
iPadHighResLandscapeSplashScreen: {fileID: 0}
|
|
||||||
appleTVSplashScreen: {fileID: 0}
|
|
||||||
tvOSSmallIconLayers: []
|
|
||||||
tvOSLargeIconLayers: []
|
|
||||||
tvOSTopShelfImageLayers: []
|
|
||||||
tvOSTopShelfImageWideLayers: []
|
|
||||||
iOSLaunchScreenType: 0
|
|
||||||
iOSLaunchScreenPortrait: {fileID: 0}
|
|
||||||
iOSLaunchScreenLandscape: {fileID: 0}
|
|
||||||
iOSLaunchScreenBackgroundColor:
|
|
||||||
serializedVersion: 2
|
|
||||||
rgba: 0
|
|
||||||
iOSLaunchScreenFillPct: 100
|
|
||||||
iOSLaunchScreenSize: 100
|
|
||||||
iOSLaunchScreenCustomXibPath:
|
|
||||||
iOSLaunchScreeniPadType: 0
|
|
||||||
iOSLaunchScreeniPadImage: {fileID: 0}
|
|
||||||
iOSLaunchScreeniPadBackgroundColor:
|
|
||||||
serializedVersion: 2
|
|
||||||
rgba: 0
|
|
||||||
iOSLaunchScreeniPadFillPct: 100
|
|
||||||
iOSLaunchScreeniPadSize: 100
|
|
||||||
iOSLaunchScreeniPadCustomXibPath:
|
|
||||||
iOSDeviceRequirements: []
|
|
||||||
iOSURLSchemes: []
|
|
||||||
iOSBackgroundModes: 0
|
|
||||||
iOSMetalForceHardShadows: 0
|
|
||||||
metalEditorSupport: 1
|
|
||||||
metalAPIValidation: 1
|
|
||||||
iOSRenderExtraFrameOnPause: 0
|
|
||||||
appleDeveloperTeamID:
|
|
||||||
iOSManualSigningProvisioningProfileID:
|
|
||||||
tvOSManualSigningProvisioningProfileID:
|
|
||||||
appleEnableAutomaticSigning: 0
|
|
||||||
AndroidTargetDevice: 0
|
|
||||||
AndroidSplashScreenScale: 0
|
|
||||||
androidSplashScreen: {fileID: 0}
|
|
||||||
AndroidKeystoreName:
|
|
||||||
AndroidKeyaliasName:
|
|
||||||
AndroidTVCompatibility: 1
|
|
||||||
AndroidIsGame: 1
|
|
||||||
AndroidEnableTango: 0
|
|
||||||
androidEnableBanner: 1
|
|
||||||
androidUseLowAccuracyLocation: 0
|
|
||||||
m_AndroidBanners:
|
|
||||||
- width: 320
|
|
||||||
height: 180
|
|
||||||
banner: {fileID: 0}
|
|
||||||
androidGamepadSupportLevel: 0
|
|
||||||
resolutionDialogBanner: {fileID: 0}
|
|
||||||
m_BuildTargetIcons: []
|
|
||||||
m_BuildTargetBatching: []
|
|
||||||
m_BuildTargetGraphicsAPIs: []
|
|
||||||
m_BuildTargetVRSettings: []
|
|
||||||
m_BuildTargetEnableVuforiaSettings: []
|
|
||||||
openGLRequireES31: 0
|
|
||||||
openGLRequireES31AEP: 0
|
|
||||||
m_TemplateCustomTags: {}
|
|
||||||
mobileMTRendering:
|
|
||||||
Android: 1
|
|
||||||
iPhone: 1
|
|
||||||
tvOS: 1
|
|
||||||
wiiUTitleID: 0005000011000000
|
|
||||||
wiiUGroupID: 00010000
|
|
||||||
wiiUCommonSaveSize: 4096
|
|
||||||
wiiUAccountSaveSize: 2048
|
|
||||||
wiiUOlvAccessKey: 0
|
|
||||||
wiiUTinCode: 0
|
|
||||||
wiiUJoinGameId: 0
|
|
||||||
wiiUJoinGameModeMask: 0000000000000000
|
|
||||||
wiiUCommonBossSize: 0
|
|
||||||
wiiUAccountBossSize: 0
|
|
||||||
wiiUAddOnUniqueIDs: []
|
|
||||||
wiiUMainThreadStackSize: 3072
|
|
||||||
wiiULoaderThreadStackSize: 1024
|
|
||||||
wiiUSystemHeapSize: 128
|
|
||||||
wiiUTVStartupScreen: {fileID: 0}
|
|
||||||
wiiUGamePadStartupScreen: {fileID: 0}
|
|
||||||
wiiUDrcBufferDisabled: 0
|
|
||||||
wiiUProfilerLibPath:
|
|
||||||
playModeTestRunnerEnabled: 0
|
|
||||||
actionOnDotNetUnhandledException: 1
|
|
||||||
enableInternalProfiler: 0
|
|
||||||
logObjCUncaughtExceptions: 1
|
|
||||||
enableCrashReportAPI: 0
|
|
||||||
cameraUsageDescription:
|
|
||||||
locationUsageDescription:
|
|
||||||
microphoneUsageDescription:
|
|
||||||
switchNetLibKey:
|
|
||||||
switchSocketMemoryPoolSize: 6144
|
|
||||||
switchSocketAllocatorPoolSize: 128
|
|
||||||
switchSocketConcurrencyLimit: 14
|
|
||||||
switchScreenResolutionBehavior: 2
|
|
||||||
switchUseCPUProfiler: 0
|
|
||||||
switchApplicationID: 0x01004b9000490000
|
|
||||||
switchNSODependencies:
|
|
||||||
switchTitleNames_0:
|
|
||||||
switchTitleNames_1:
|
|
||||||
switchTitleNames_2:
|
|
||||||
switchTitleNames_3:
|
|
||||||
switchTitleNames_4:
|
|
||||||
switchTitleNames_5:
|
|
||||||
switchTitleNames_6:
|
|
||||||
switchTitleNames_7:
|
|
||||||
switchTitleNames_8:
|
|
||||||
switchTitleNames_9:
|
|
||||||
switchTitleNames_10:
|
|
||||||
switchTitleNames_11:
|
|
||||||
switchPublisherNames_0:
|
|
||||||
switchPublisherNames_1:
|
|
||||||
switchPublisherNames_2:
|
|
||||||
switchPublisherNames_3:
|
|
||||||
switchPublisherNames_4:
|
|
||||||
switchPublisherNames_5:
|
|
||||||
switchPublisherNames_6:
|
|
||||||
switchPublisherNames_7:
|
|
||||||
switchPublisherNames_8:
|
|
||||||
switchPublisherNames_9:
|
|
||||||
switchPublisherNames_10:
|
|
||||||
switchPublisherNames_11:
|
|
||||||
switchIcons_0: {fileID: 0}
|
|
||||||
switchIcons_1: {fileID: 0}
|
|
||||||
switchIcons_2: {fileID: 0}
|
|
||||||
switchIcons_3: {fileID: 0}
|
|
||||||
switchIcons_4: {fileID: 0}
|
|
||||||
switchIcons_5: {fileID: 0}
|
|
||||||
switchIcons_6: {fileID: 0}
|
|
||||||
switchIcons_7: {fileID: 0}
|
|
||||||
switchIcons_8: {fileID: 0}
|
|
||||||
switchIcons_9: {fileID: 0}
|
|
||||||
switchIcons_10: {fileID: 0}
|
|
||||||
switchIcons_11: {fileID: 0}
|
|
||||||
switchSmallIcons_0: {fileID: 0}
|
|
||||||
switchSmallIcons_1: {fileID: 0}
|
|
||||||
switchSmallIcons_2: {fileID: 0}
|
|
||||||
switchSmallIcons_3: {fileID: 0}
|
|
||||||
switchSmallIcons_4: {fileID: 0}
|
|
||||||
switchSmallIcons_5: {fileID: 0}
|
|
||||||
switchSmallIcons_6: {fileID: 0}
|
|
||||||
switchSmallIcons_7: {fileID: 0}
|
|
||||||
switchSmallIcons_8: {fileID: 0}
|
|
||||||
switchSmallIcons_9: {fileID: 0}
|
|
||||||
switchSmallIcons_10: {fileID: 0}
|
|
||||||
switchSmallIcons_11: {fileID: 0}
|
|
||||||
switchManualHTML:
|
|
||||||
switchAccessibleURLs:
|
|
||||||
switchLegalInformation:
|
|
||||||
switchMainThreadStackSize: 1048576
|
|
||||||
switchPresenceGroupId: 0x01004b9000490000
|
|
||||||
switchLogoHandling: 0
|
|
||||||
switchReleaseVersion: 0
|
|
||||||
switchDisplayVersion: 1.0.0
|
|
||||||
switchStartupUserAccount: 0
|
|
||||||
switchTouchScreenUsage: 0
|
|
||||||
switchSupportedLanguagesMask: 0
|
|
||||||
switchLogoType: 0
|
|
||||||
switchApplicationErrorCodeCategory:
|
|
||||||
switchUserAccountSaveDataSize: 0
|
|
||||||
switchUserAccountSaveDataJournalSize: 0
|
|
||||||
switchApplicationAttribute: 0
|
|
||||||
switchCardSpecSize: 4
|
|
||||||
switchCardSpecClock: 25
|
|
||||||
switchRatingsMask: 0
|
|
||||||
switchRatingsInt_0: 0
|
|
||||||
switchRatingsInt_1: 0
|
|
||||||
switchRatingsInt_2: 0
|
|
||||||
switchRatingsInt_3: 0
|
|
||||||
switchRatingsInt_4: 0
|
|
||||||
switchRatingsInt_5: 0
|
|
||||||
switchRatingsInt_6: 0
|
|
||||||
switchRatingsInt_7: 0
|
|
||||||
switchRatingsInt_8: 0
|
|
||||||
switchRatingsInt_9: 0
|
|
||||||
switchRatingsInt_10: 0
|
|
||||||
switchRatingsInt_11: 0
|
|
||||||
switchLocalCommunicationIds_0: 0x01004b9000490000
|
|
||||||
switchLocalCommunicationIds_1:
|
|
||||||
switchLocalCommunicationIds_2:
|
|
||||||
switchLocalCommunicationIds_3:
|
|
||||||
switchLocalCommunicationIds_4:
|
|
||||||
switchLocalCommunicationIds_5:
|
|
||||||
switchLocalCommunicationIds_6:
|
|
||||||
switchLocalCommunicationIds_7:
|
|
||||||
switchParentalControl: 0
|
|
||||||
switchAllowsScreenshot: 1
|
|
||||||
switchDataLossConfirmation: 0
|
|
||||||
switchSupportedNpadStyles: 3
|
|
||||||
switchSocketConfigEnabled: 0
|
|
||||||
switchTcpInitialSendBufferSize: 32
|
|
||||||
switchTcpInitialReceiveBufferSize: 64
|
|
||||||
switchTcpAutoSendBufferSizeMax: 256
|
|
||||||
switchTcpAutoReceiveBufferSizeMax: 256
|
|
||||||
switchUdpSendBufferSize: 9
|
|
||||||
switchUdpReceiveBufferSize: 42
|
|
||||||
switchSocketBufferEfficiency: 4
|
|
||||||
switchSocketInitializeEnabled: 1
|
|
||||||
switchNetworkInterfaceManagerInitializeEnabled: 1
|
|
||||||
switchPlayerConnectionEnabled: 1
|
|
||||||
ps4NPAgeRating: 12
|
|
||||||
ps4NPTitleSecret:
|
|
||||||
ps4NPTrophyPackPath:
|
|
||||||
ps4ParentalLevel: 11
|
|
||||||
ps4ContentID: ED1633-NPXX51362_00-0000000000000000
|
|
||||||
ps4Category: 0
|
|
||||||
ps4MasterVersion: 01.00
|
|
||||||
ps4AppVersion: 01.00
|
|
||||||
ps4AppType: 0
|
|
||||||
ps4ParamSfxPath:
|
|
||||||
ps4VideoOutPixelFormat: 0
|
|
||||||
ps4VideoOutInitialWidth: 1920
|
|
||||||
ps4VideoOutBaseModeInitialWidth: 1920
|
|
||||||
ps4VideoOutReprojectionRate: 120
|
|
||||||
ps4PronunciationXMLPath:
|
|
||||||
ps4PronunciationSIGPath:
|
|
||||||
ps4BackgroundImagePath:
|
|
||||||
ps4StartupImagePath:
|
|
||||||
ps4SaveDataImagePath:
|
|
||||||
ps4SdkOverride:
|
|
||||||
ps4BGMPath:
|
|
||||||
ps4ShareFilePath:
|
|
||||||
ps4ShareOverlayImagePath:
|
|
||||||
ps4PrivacyGuardImagePath:
|
|
||||||
ps4NPtitleDatPath:
|
|
||||||
ps4RemotePlayKeyAssignment: -1
|
|
||||||
ps4RemotePlayKeyMappingDir:
|
|
||||||
ps4PlayTogetherPlayerCount: 0
|
|
||||||
ps4EnterButtonAssignment: 1
|
|
||||||
ps4ApplicationParam1: 0
|
|
||||||
ps4ApplicationParam2: 0
|
|
||||||
ps4ApplicationParam3: 0
|
|
||||||
ps4ApplicationParam4: 0
|
|
||||||
ps4DownloadDataSize: 0
|
|
||||||
ps4GarlicHeapSize: 2048
|
|
||||||
ps4ProGarlicHeapSize: 2560
|
|
||||||
ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ
|
|
||||||
ps4pnSessions: 1
|
|
||||||
ps4pnPresence: 1
|
|
||||||
ps4pnFriends: 1
|
|
||||||
ps4pnGameCustomData: 1
|
|
||||||
playerPrefsSupport: 0
|
|
||||||
restrictedAudioUsageRights: 0
|
|
||||||
ps4UseResolutionFallback: 0
|
|
||||||
ps4ReprojectionSupport: 0
|
|
||||||
ps4UseAudio3dBackend: 0
|
|
||||||
ps4SocialScreenEnabled: 0
|
|
||||||
ps4ScriptOptimizationLevel: 0
|
|
||||||
ps4Audio3dVirtualSpeakerCount: 14
|
|
||||||
ps4attribCpuUsage: 0
|
|
||||||
ps4PatchPkgPath:
|
|
||||||
ps4PatchLatestPkgPath:
|
|
||||||
ps4PatchChangeinfoPath:
|
|
||||||
ps4PatchDayOne: 0
|
|
||||||
ps4attribUserManagement: 0
|
|
||||||
ps4attribMoveSupport: 0
|
|
||||||
ps4attrib3DSupport: 0
|
|
||||||
ps4attribShareSupport: 0
|
|
||||||
ps4attribExclusiveVR: 0
|
|
||||||
ps4disableAutoHideSplash: 0
|
|
||||||
ps4videoRecordingFeaturesUsed: 0
|
|
||||||
ps4contentSearchFeaturesUsed: 0
|
|
||||||
ps4attribEyeToEyeDistanceSettingVR: 0
|
|
||||||
ps4IncludedModules: []
|
|
||||||
monoEnv:
|
|
||||||
psp2Splashimage: {fileID: 0}
|
|
||||||
psp2NPTrophyPackPath:
|
|
||||||
psp2NPSupportGBMorGJP: 0
|
|
||||||
psp2NPAgeRating: 12
|
|
||||||
psp2NPTitleDatPath:
|
|
||||||
psp2NPCommsID:
|
|
||||||
psp2NPCommunicationsID:
|
|
||||||
psp2NPCommsPassphrase:
|
|
||||||
psp2NPCommsSig:
|
|
||||||
psp2ParamSfxPath:
|
|
||||||
psp2ManualPath:
|
|
||||||
psp2LiveAreaGatePath:
|
|
||||||
psp2LiveAreaBackroundPath:
|
|
||||||
psp2LiveAreaPath:
|
|
||||||
psp2LiveAreaTrialPath:
|
|
||||||
psp2PatchChangeInfoPath:
|
|
||||||
psp2PatchOriginalPackage:
|
|
||||||
psp2PackagePassword: F69AzBlax3CF3EDNhm3soLBPh71Yexui
|
|
||||||
psp2KeystoneFile:
|
|
||||||
psp2MemoryExpansionMode: 0
|
|
||||||
psp2DRMType: 0
|
|
||||||
psp2StorageType: 0
|
|
||||||
psp2MediaCapacity: 0
|
|
||||||
psp2DLCConfigPath:
|
|
||||||
psp2ThumbnailPath:
|
|
||||||
psp2BackgroundPath:
|
|
||||||
psp2SoundPath:
|
|
||||||
psp2TrophyCommId:
|
|
||||||
psp2TrophyPackagePath:
|
|
||||||
psp2PackagedResourcesPath:
|
|
||||||
psp2SaveDataQuota: 10240
|
|
||||||
psp2ParentalLevel: 1
|
|
||||||
psp2ShortTitle: Not Set
|
|
||||||
psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF
|
|
||||||
psp2Category: 0
|
|
||||||
psp2MasterVersion: 01.00
|
|
||||||
psp2AppVersion: 01.00
|
|
||||||
psp2TVBootMode: 0
|
|
||||||
psp2EnterButtonAssignment: 2
|
|
||||||
psp2TVDisableEmu: 0
|
|
||||||
psp2AllowTwitterDialog: 1
|
|
||||||
psp2Upgradable: 0
|
|
||||||
psp2HealthWarning: 0
|
|
||||||
psp2UseLibLocation: 0
|
|
||||||
psp2InfoBarOnStartup: 0
|
|
||||||
psp2InfoBarColor: 0
|
|
||||||
psp2ScriptOptimizationLevel: 0
|
|
||||||
psmSplashimage: {fileID: 0}
|
|
||||||
splashScreenBackgroundSourceLandscape: {fileID: 0}
|
|
||||||
splashScreenBackgroundSourcePortrait: {fileID: 0}
|
|
||||||
spritePackerPolicy:
|
|
||||||
webGLMemorySize: 256
|
|
||||||
webGLExceptionSupport: 1
|
|
||||||
webGLNameFilesAsHashes: 0
|
|
||||||
webGLDataCaching: 0
|
|
||||||
webGLDebugSymbols: 0
|
|
||||||
webGLEmscriptenArgs:
|
|
||||||
webGLModulesDirectory:
|
|
||||||
webGLTemplate: APPLICATION:Default
|
|
||||||
webGLAnalyzeBuildSize: 0
|
|
||||||
webGLUseEmbeddedResources: 0
|
|
||||||
webGLUseWasm: 0
|
|
||||||
webGLCompressionFormat: 1
|
|
||||||
scriptingDefineSymbols: {}
|
|
||||||
platformArchitecture: {}
|
|
||||||
scriptingBackend: {}
|
|
||||||
incrementalIl2cppBuild: {}
|
|
||||||
additionalIl2CppArgs:
|
|
||||||
scriptingRuntimeVersion: 0
|
|
||||||
apiCompatibilityLevelPerPlatform: {}
|
|
||||||
m_RenderingPath: 1
|
|
||||||
m_MobileRenderingPath: 1
|
|
||||||
metroPackageName: button-clicker
|
|
||||||
metroPackageVersion:
|
|
||||||
metroCertificatePath:
|
|
||||||
metroCertificatePassword:
|
|
||||||
metroCertificateSubject:
|
|
||||||
metroCertificateIssuer:
|
|
||||||
metroCertificateNotAfter: 0000000000000000
|
|
||||||
metroApplicationDescription: button-clicker
|
|
||||||
wsaImages: {}
|
|
||||||
metroTileShortName:
|
|
||||||
metroCommandLineArgsFile:
|
|
||||||
metroTileShowName: 0
|
|
||||||
metroMediumTileShowName: 0
|
|
||||||
metroLargeTileShowName: 0
|
|
||||||
metroWideTileShowName: 0
|
|
||||||
metroDefaultTileSize: 1
|
|
||||||
metroTileForegroundText: 2
|
|
||||||
metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
|
|
||||||
metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628,
|
|
||||||
a: 1}
|
|
||||||
metroSplashScreenUseBackgroundColor: 0
|
|
||||||
platformCapabilities: {}
|
|
||||||
metroFTAName:
|
|
||||||
metroFTAFileTypes: []
|
|
||||||
metroProtocolName:
|
|
||||||
metroCompilationOverrides: 1
|
|
||||||
tizenProductDescription:
|
|
||||||
tizenProductURL:
|
|
||||||
tizenSigningProfileName:
|
|
||||||
tizenGPSPermissions: 0
|
|
||||||
tizenMicrophonePermissions: 0
|
|
||||||
tizenDeploymentTarget:
|
|
||||||
tizenDeploymentTargetType: -1
|
|
||||||
tizenMinOSVersion: 1
|
|
||||||
n3dsUseExtSaveData: 0
|
|
||||||
n3dsCompressStaticMem: 1
|
|
||||||
n3dsExtSaveDataNumber: 0x12345
|
|
||||||
n3dsStackSize: 131072
|
|
||||||
n3dsTargetPlatform: 2
|
|
||||||
n3dsRegion: 7
|
|
||||||
n3dsMediaSize: 0
|
|
||||||
n3dsLogoStyle: 3
|
|
||||||
n3dsTitle: GameName
|
|
||||||
n3dsProductCode:
|
|
||||||
n3dsApplicationId: 0xFF3FF
|
|
||||||
stvDeviceAddress:
|
|
||||||
stvProductDescription:
|
|
||||||
stvProductAuthor:
|
|
||||||
stvProductAuthorEmail:
|
|
||||||
stvProductLink:
|
|
||||||
stvProductCategory: 0
|
|
||||||
XboxOneProductId:
|
|
||||||
XboxOneUpdateKey:
|
|
||||||
XboxOneSandboxId:
|
|
||||||
XboxOneContentId:
|
|
||||||
XboxOneTitleId:
|
|
||||||
XboxOneSCId:
|
|
||||||
XboxOneGameOsOverridePath:
|
|
||||||
XboxOnePackagingOverridePath:
|
|
||||||
XboxOneAppManifestOverridePath:
|
|
||||||
XboxOnePackageEncryption: 0
|
|
||||||
XboxOnePackageUpdateGranularity: 2
|
|
||||||
XboxOneDescription:
|
|
||||||
XboxOneLanguage:
|
|
||||||
- enus
|
|
||||||
XboxOneCapability: []
|
|
||||||
XboxOneGameRating: {}
|
|
||||||
XboxOneIsContentPackage: 0
|
|
||||||
XboxOneEnableGPUVariability: 0
|
|
||||||
XboxOneSockets: {}
|
|
||||||
XboxOneSplashScreen: {fileID: 0}
|
|
||||||
XboxOneAllowedProductIds: []
|
|
||||||
XboxOnePersistentLocalStorageSize: 0
|
|
||||||
xboxOneScriptCompiler: 0
|
|
||||||
vrEditorSettings:
|
|
||||||
daydream:
|
|
||||||
daydreamIconForeground: {fileID: 0}
|
|
||||||
daydreamIconBackground: {fileID: 0}
|
|
||||||
cloudServicesEnabled: {}
|
|
||||||
facebookSdkVersion: 7.9.4
|
|
||||||
apiCompatibilityLevel: 2
|
|
||||||
cloudProjectId:
|
|
||||||
projectName:
|
|
||||||
organizationId:
|
|
||||||
cloudEnabled: 0
|
|
||||||
enableNativePlatformBackendsForNewInputSystem: 0
|
|
||||||
disableOldInputManagerSupport: 0
|
|
|
@ -1 +0,0 @@
|
||||||
m_EditorVersion: 2017.2.0f3
|
|
|
@ -1,193 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!47 &1
|
|
||||||
QualitySettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 5
|
|
||||||
m_CurrentQuality: 5
|
|
||||||
m_QualitySettings:
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: Very Low
|
|
||||||
pixelLightCount: 0
|
|
||||||
shadows: 0
|
|
||||||
shadowResolution: 0
|
|
||||||
shadowProjection: 1
|
|
||||||
shadowCascades: 1
|
|
||||||
shadowDistance: 15
|
|
||||||
shadowNearPlaneOffset: 3
|
|
||||||
shadowCascade2Split: 0.33333334
|
|
||||||
shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
|
|
||||||
shadowmaskMode: 0
|
|
||||||
blendWeights: 1
|
|
||||||
textureQuality: 1
|
|
||||||
anisotropicTextures: 0
|
|
||||||
antiAliasing: 0
|
|
||||||
softParticles: 0
|
|
||||||
softVegetation: 0
|
|
||||||
realtimeReflectionProbes: 0
|
|
||||||
billboardsFaceCameraPosition: 0
|
|
||||||
vSyncCount: 0
|
|
||||||
lodBias: 0.3
|
|
||||||
maximumLODLevel: 0
|
|
||||||
particleRaycastBudget: 4
|
|
||||||
asyncUploadTimeSlice: 2
|
|
||||||
asyncUploadBufferSize: 4
|
|
||||||
resolutionScalingFixedDPIFactor: 1
|
|
||||||
excludedTargetPlatforms: []
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: Low
|
|
||||||
pixelLightCount: 0
|
|
||||||
shadows: 0
|
|
||||||
shadowResolution: 0
|
|
||||||
shadowProjection: 1
|
|
||||||
shadowCascades: 1
|
|
||||||
shadowDistance: 20
|
|
||||||
shadowNearPlaneOffset: 3
|
|
||||||
shadowCascade2Split: 0.33333334
|
|
||||||
shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
|
|
||||||
shadowmaskMode: 0
|
|
||||||
blendWeights: 2
|
|
||||||
textureQuality: 0
|
|
||||||
anisotropicTextures: 0
|
|
||||||
antiAliasing: 0
|
|
||||||
softParticles: 0
|
|
||||||
softVegetation: 0
|
|
||||||
realtimeReflectionProbes: 0
|
|
||||||
billboardsFaceCameraPosition: 0
|
|
||||||
vSyncCount: 0
|
|
||||||
lodBias: 0.4
|
|
||||||
maximumLODLevel: 0
|
|
||||||
particleRaycastBudget: 16
|
|
||||||
asyncUploadTimeSlice: 2
|
|
||||||
asyncUploadBufferSize: 4
|
|
||||||
resolutionScalingFixedDPIFactor: 1
|
|
||||||
excludedTargetPlatforms: []
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: Medium
|
|
||||||
pixelLightCount: 1
|
|
||||||
shadows: 1
|
|
||||||
shadowResolution: 0
|
|
||||||
shadowProjection: 1
|
|
||||||
shadowCascades: 1
|
|
||||||
shadowDistance: 20
|
|
||||||
shadowNearPlaneOffset: 3
|
|
||||||
shadowCascade2Split: 0.33333334
|
|
||||||
shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
|
|
||||||
shadowmaskMode: 0
|
|
||||||
blendWeights: 2
|
|
||||||
textureQuality: 0
|
|
||||||
anisotropicTextures: 1
|
|
||||||
antiAliasing: 0
|
|
||||||
softParticles: 0
|
|
||||||
softVegetation: 0
|
|
||||||
realtimeReflectionProbes: 0
|
|
||||||
billboardsFaceCameraPosition: 0
|
|
||||||
vSyncCount: 1
|
|
||||||
lodBias: 0.7
|
|
||||||
maximumLODLevel: 0
|
|
||||||
particleRaycastBudget: 64
|
|
||||||
asyncUploadTimeSlice: 2
|
|
||||||
asyncUploadBufferSize: 4
|
|
||||||
resolutionScalingFixedDPIFactor: 1
|
|
||||||
excludedTargetPlatforms: []
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: High
|
|
||||||
pixelLightCount: 2
|
|
||||||
shadows: 2
|
|
||||||
shadowResolution: 1
|
|
||||||
shadowProjection: 1
|
|
||||||
shadowCascades: 2
|
|
||||||
shadowDistance: 40
|
|
||||||
shadowNearPlaneOffset: 3
|
|
||||||
shadowCascade2Split: 0.33333334
|
|
||||||
shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
|
|
||||||
shadowmaskMode: 1
|
|
||||||
blendWeights: 2
|
|
||||||
textureQuality: 0
|
|
||||||
anisotropicTextures: 1
|
|
||||||
antiAliasing: 0
|
|
||||||
softParticles: 0
|
|
||||||
softVegetation: 1
|
|
||||||
realtimeReflectionProbes: 1
|
|
||||||
billboardsFaceCameraPosition: 1
|
|
||||||
vSyncCount: 1
|
|
||||||
lodBias: 1
|
|
||||||
maximumLODLevel: 0
|
|
||||||
particleRaycastBudget: 256
|
|
||||||
asyncUploadTimeSlice: 2
|
|
||||||
asyncUploadBufferSize: 4
|
|
||||||
resolutionScalingFixedDPIFactor: 1
|
|
||||||
excludedTargetPlatforms: []
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: Very High
|
|
||||||
pixelLightCount: 3
|
|
||||||
shadows: 2
|
|
||||||
shadowResolution: 2
|
|
||||||
shadowProjection: 1
|
|
||||||
shadowCascades: 2
|
|
||||||
shadowDistance: 70
|
|
||||||
shadowNearPlaneOffset: 3
|
|
||||||
shadowCascade2Split: 0.33333334
|
|
||||||
shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
|
|
||||||
shadowmaskMode: 1
|
|
||||||
blendWeights: 4
|
|
||||||
textureQuality: 0
|
|
||||||
anisotropicTextures: 2
|
|
||||||
antiAliasing: 2
|
|
||||||
softParticles: 1
|
|
||||||
softVegetation: 1
|
|
||||||
realtimeReflectionProbes: 1
|
|
||||||
billboardsFaceCameraPosition: 1
|
|
||||||
vSyncCount: 1
|
|
||||||
lodBias: 1.5
|
|
||||||
maximumLODLevel: 0
|
|
||||||
particleRaycastBudget: 1024
|
|
||||||
asyncUploadTimeSlice: 2
|
|
||||||
asyncUploadBufferSize: 4
|
|
||||||
resolutionScalingFixedDPIFactor: 1
|
|
||||||
excludedTargetPlatforms: []
|
|
||||||
- serializedVersion: 2
|
|
||||||
name: Ultra
|
|
||||||
pixelLightCount: 4
|
|
||||||
shadows: 2
|
|
||||||
shadowResolution: 2
|
|
||||||
shadowProjection: 1
|
|
||||||
shadowCascades: 4
|
|
||||||
shadowDistance: 150
|
|
||||||
shadowNearPlaneOffset: 3
|
|
||||||
shadowCascade2Split: 0.33333334
|
|
||||||
shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
|
|
||||||
shadowmaskMode: 1
|
|
||||||
blendWeights: 4
|
|
||||||
textureQuality: 0
|
|
||||||
anisotropicTextures: 2
|
|
||||||
antiAliasing: 2
|
|
||||||
softParticles: 1
|
|
||||||
softVegetation: 1
|
|
||||||
realtimeReflectionProbes: 1
|
|
||||||
billboardsFaceCameraPosition: 1
|
|
||||||
vSyncCount: 1
|
|
||||||
lodBias: 2
|
|
||||||
maximumLODLevel: 0
|
|
||||||
particleRaycastBudget: 4096
|
|
||||||
asyncUploadTimeSlice: 2
|
|
||||||
asyncUploadBufferSize: 4
|
|
||||||
resolutionScalingFixedDPIFactor: 1
|
|
||||||
excludedTargetPlatforms: []
|
|
||||||
m_PerPlatformDefaultQuality:
|
|
||||||
Android: 2
|
|
||||||
Nintendo 3DS: 5
|
|
||||||
Nintendo Switch: 5
|
|
||||||
PS4: 5
|
|
||||||
PSM: 5
|
|
||||||
PSP2: 2
|
|
||||||
Samsung TV: 2
|
|
||||||
Standalone: 5
|
|
||||||
Tizen: 2
|
|
||||||
Web: 5
|
|
||||||
WebGL: 3
|
|
||||||
WiiU: 5
|
|
||||||
Windows Store Apps: 5
|
|
||||||
XboxOne: 5
|
|
||||||
iPhone: 2
|
|
||||||
tvOS: 2
|
|
|
@ -1,43 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!78 &1
|
|
||||||
TagManager:
|
|
||||||
serializedVersion: 2
|
|
||||||
tags: []
|
|
||||||
layers:
|
|
||||||
- Default
|
|
||||||
- TransparentFX
|
|
||||||
- Ignore Raycast
|
|
||||||
-
|
|
||||||
- Water
|
|
||||||
- UI
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
m_SortingLayers:
|
|
||||||
- name: Default
|
|
||||||
uniqueID: 0
|
|
||||||
locked: 0
|
|
|
@ -1,9 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!5 &1
|
|
||||||
TimeManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
Fixed Timestep: 0.02
|
|
||||||
Maximum Allowed Timestep: 0.33333334
|
|
||||||
m_TimeScale: 1
|
|
||||||
Maximum Particle Timestep: 0.03
|
|
|
@ -1,34 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!310 &1
|
|
||||||
UnityConnectSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_Enabled: 0
|
|
||||||
m_TestMode: 0
|
|
||||||
m_TestEventUrl:
|
|
||||||
m_TestConfigUrl:
|
|
||||||
m_TestInitMode: 0
|
|
||||||
CrashReportingSettings:
|
|
||||||
m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes
|
|
||||||
m_Enabled: 0
|
|
||||||
m_CaptureEditorExceptions: 1
|
|
||||||
UnityPurchasingSettings:
|
|
||||||
m_Enabled: 0
|
|
||||||
m_TestMode: 0
|
|
||||||
UnityAnalyticsSettings:
|
|
||||||
m_Enabled: 0
|
|
||||||
m_InitializeOnStartup: 1
|
|
||||||
m_TestMode: 0
|
|
||||||
m_TestEventUrl:
|
|
||||||
m_TestConfigUrl:
|
|
||||||
UnityAdsSettings:
|
|
||||||
m_Enabled: 0
|
|
||||||
m_InitializeOnStartup: 1
|
|
||||||
m_TestMode: 0
|
|
||||||
m_EnabledPlatforms: 4294967295
|
|
||||||
m_IosGameId:
|
|
||||||
m_AndroidGameId:
|
|
||||||
m_GameIds: {}
|
|
||||||
m_GameId:
|
|
||||||
PerformanceReportingSettings:
|
|
||||||
m_Enabled: 0
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"dependencies": {
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
include_directories(${PROJECT_SOURCE_DIR}/include)
|
|
||||||
add_executable(
|
|
||||||
send-presence
|
|
||||||
MACOSX_BUNDLE
|
|
||||||
send-presence.c
|
|
||||||
)
|
|
||||||
set_target_properties(send-presence PROPERTIES
|
|
||||||
MACOSX_BUNDLE_BUNDLE_NAME "Send Presence"
|
|
||||||
MACOSX_BUNDLE_GUI_IDENTIFIER "com.discordapp.examples.send-presence"
|
|
||||||
)
|
|
||||||
target_link_libraries(send-presence discord-rpc)
|
|
||||||
|
|
||||||
install(
|
|
||||||
TARGETS send-presence
|
|
||||||
RUNTIME
|
|
||||||
DESTINATION "bin"
|
|
||||||
CONFIGURATIONS Release
|
|
||||||
BUNDLE
|
|
||||||
DESTINATION "bin"
|
|
||||||
CONFIGURATIONS Release
|
|
||||||
)
|
|
|
@ -1,206 +0,0 @@
|
||||||
/*
|
|
||||||
This is a simple example in C of using the rich presence API asynchronously.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define _CRT_SECURE_NO_WARNINGS /* thanks Microsoft */
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <time.h>
|
|
||||||
|
|
||||||
#include "discord_rpc.h"
|
|
||||||
|
|
||||||
static const char* APPLICATION_ID = "345229890980937739";
|
|
||||||
static int FrustrationLevel = 0;
|
|
||||||
static int64_t StartTime;
|
|
||||||
static int SendPresence = 1;
|
|
||||||
|
|
||||||
static int prompt(char* line, size_t size)
|
|
||||||
{
|
|
||||||
int res;
|
|
||||||
char* nl;
|
|
||||||
printf("\n> ");
|
|
||||||
fflush(stdout);
|
|
||||||
res = fgets(line, (int)size, stdin) ? 1 : 0;
|
|
||||||
line[size - 1] = 0;
|
|
||||||
nl = strchr(line, '\n');
|
|
||||||
if (nl) {
|
|
||||||
*nl = 0;
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void updateDiscordPresence()
|
|
||||||
{
|
|
||||||
if (SendPresence) {
|
|
||||||
char buffer[256];
|
|
||||||
DiscordRichPresence discordPresence;
|
|
||||||
memset(&discordPresence, 0, sizeof(discordPresence));
|
|
||||||
discordPresence.state = "West of House";
|
|
||||||
sprintf(buffer, "Frustration level: %d", FrustrationLevel);
|
|
||||||
discordPresence.details = buffer;
|
|
||||||
discordPresence.startTimestamp = StartTime;
|
|
||||||
discordPresence.endTimestamp = time(0) + 5 * 60;
|
|
||||||
discordPresence.largeImageKey = "canary-large";
|
|
||||||
discordPresence.smallImageKey = "ptb-small";
|
|
||||||
discordPresence.partyId = "party1234";
|
|
||||||
discordPresence.partySize = 1;
|
|
||||||
discordPresence.partyMax = 6;
|
|
||||||
discordPresence.partyPrivacy = DISCORD_PARTY_PUBLIC;
|
|
||||||
discordPresence.matchSecret = "xyzzy";
|
|
||||||
discordPresence.joinSecret = "join";
|
|
||||||
discordPresence.spectateSecret = "look";
|
|
||||||
discordPresence.instance = 0;
|
|
||||||
Discord_UpdatePresence(&discordPresence);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
Discord_ClearPresence();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void handleDiscordReady(const DiscordUser* connectedUser)
|
|
||||||
{
|
|
||||||
printf("\nDiscord: connected to user %s#%s - %s\n",
|
|
||||||
connectedUser->username,
|
|
||||||
connectedUser->discriminator,
|
|
||||||
connectedUser->userId);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void handleDiscordDisconnected(int errcode, const char* message)
|
|
||||||
{
|
|
||||||
printf("\nDiscord: disconnected (%d: %s)\n", errcode, message);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void handleDiscordError(int errcode, const char* message)
|
|
||||||
{
|
|
||||||
printf("\nDiscord: error (%d: %s)\n", errcode, message);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void handleDiscordJoin(const char* secret)
|
|
||||||
{
|
|
||||||
printf("\nDiscord: join (%s)\n", secret);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void handleDiscordSpectate(const char* secret)
|
|
||||||
{
|
|
||||||
printf("\nDiscord: spectate (%s)\n", secret);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void handleDiscordJoinRequest(const DiscordUser* request)
|
|
||||||
{
|
|
||||||
int response = -1;
|
|
||||||
char yn[4];
|
|
||||||
printf("\nDiscord: join request from %s#%s - %s\n",
|
|
||||||
request->username,
|
|
||||||
request->discriminator,
|
|
||||||
request->userId);
|
|
||||||
do {
|
|
||||||
printf("Accept? (y/n)");
|
|
||||||
if (!prompt(yn, sizeof(yn))) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!yn[0]) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (yn[0] == 'y') {
|
|
||||||
response = DISCORD_REPLY_YES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (yn[0] == 'n') {
|
|
||||||
response = DISCORD_REPLY_NO;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} while (1);
|
|
||||||
if (response != -1) {
|
|
||||||
Discord_Respond(request->userId, response);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void discordInit()
|
|
||||||
{
|
|
||||||
DiscordEventHandlers handlers;
|
|
||||||
memset(&handlers, 0, sizeof(handlers));
|
|
||||||
handlers.ready = handleDiscordReady;
|
|
||||||
handlers.disconnected = handleDiscordDisconnected;
|
|
||||||
handlers.errored = handleDiscordError;
|
|
||||||
handlers.joinGame = handleDiscordJoin;
|
|
||||||
handlers.spectateGame = handleDiscordSpectate;
|
|
||||||
handlers.joinRequest = handleDiscordJoinRequest;
|
|
||||||
Discord_Initialize(APPLICATION_ID, &handlers, 1, NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void gameLoop()
|
|
||||||
{
|
|
||||||
char line[512];
|
|
||||||
char* space;
|
|
||||||
|
|
||||||
StartTime = time(0);
|
|
||||||
|
|
||||||
printf("You are standing in an open field west of a white house.\n");
|
|
||||||
while (prompt(line, sizeof(line))) {
|
|
||||||
if (line[0]) {
|
|
||||||
if (line[0] == 'q') {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (line[0] == 't') {
|
|
||||||
printf("Shutting off Discord.\n");
|
|
||||||
Discord_Shutdown();
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (line[0] == 'c') {
|
|
||||||
if (SendPresence) {
|
|
||||||
printf("Clearing presence information.\n");
|
|
||||||
SendPresence = 0;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
printf("Restoring presence information.\n");
|
|
||||||
SendPresence = 1;
|
|
||||||
}
|
|
||||||
updateDiscordPresence();
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (line[0] == 'y') {
|
|
||||||
printf("Reinit Discord.\n");
|
|
||||||
discordInit();
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (time(NULL) & 1) {
|
|
||||||
printf("I don't understand that.\n");
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
space = strchr(line, ' ');
|
|
||||||
if (space) {
|
|
||||||
*space = 0;
|
|
||||||
}
|
|
||||||
printf("I don't know the word \"%s\".\n", line);
|
|
||||||
}
|
|
||||||
|
|
||||||
++FrustrationLevel;
|
|
||||||
|
|
||||||
updateDiscordPresence();
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef DISCORD_DISABLE_IO_THREAD
|
|
||||||
Discord_UpdateConnection();
|
|
||||||
#endif
|
|
||||||
Discord_RunCallbacks();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int main(int argc, char* argv[])
|
|
||||||
{
|
|
||||||
discordInit();
|
|
||||||
|
|
||||||
gameLoop();
|
|
||||||
|
|
||||||
Discord_Shutdown();
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -1,78 +0,0 @@
|
||||||
# Visual Studio 2015 user specific files
|
|
||||||
.vs/
|
|
||||||
|
|
||||||
# Visual Studio 2015 database file
|
|
||||||
*.VC.db
|
|
||||||
|
|
||||||
# Compiled Object files
|
|
||||||
*.slo
|
|
||||||
*.lo
|
|
||||||
*.o
|
|
||||||
*.obj
|
|
||||||
|
|
||||||
# Precompiled Headers
|
|
||||||
*.gch
|
|
||||||
*.pch
|
|
||||||
|
|
||||||
# Compiled Dynamic libraries
|
|
||||||
*.so
|
|
||||||
*.dylib
|
|
||||||
*.dll
|
|
||||||
|
|
||||||
# Fortran module files
|
|
||||||
*.mod
|
|
||||||
|
|
||||||
# Compiled Static libraries
|
|
||||||
*.lai
|
|
||||||
*.la
|
|
||||||
*.a
|
|
||||||
*.lib
|
|
||||||
|
|
||||||
# Executables
|
|
||||||
*.exe
|
|
||||||
*.out
|
|
||||||
*.app
|
|
||||||
*.ipa
|
|
||||||
|
|
||||||
# These project files can be generated by the engine
|
|
||||||
*.xcodeproj
|
|
||||||
*.xcworkspace
|
|
||||||
*.sln
|
|
||||||
*.suo
|
|
||||||
*.opensdf
|
|
||||||
*.sdf
|
|
||||||
*.VC.db
|
|
||||||
*.VC.opendb
|
|
||||||
|
|
||||||
# Precompiled Assets
|
|
||||||
SourceArt/**/*.png
|
|
||||||
SourceArt/**/*.tga
|
|
||||||
|
|
||||||
# Binary Files
|
|
||||||
Binaries/
|
|
||||||
|
|
||||||
# Builds
|
|
||||||
Build/*
|
|
||||||
|
|
||||||
# Whitelist PakBlacklist-<BuildConfiguration>.txt files
|
|
||||||
!Build/*/
|
|
||||||
Build/*/**
|
|
||||||
!Build/*/PakBlacklist*.txt
|
|
||||||
|
|
||||||
# Don't ignore icon files in Build
|
|
||||||
!Build/**/*.ico
|
|
||||||
|
|
||||||
# Built data for maps
|
|
||||||
*_BuiltData.uasset
|
|
||||||
|
|
||||||
# Configuration files generated by the Editor
|
|
||||||
Saved/*
|
|
||||||
|
|
||||||
# Compiled source files for the engine to use
|
|
||||||
Intermediate/
|
|
||||||
|
|
||||||
# Cache files for the editor to use
|
|
||||||
DerivedDataCache/
|
|
||||||
|
|
||||||
# Library headers must be copied automatically by the build script (build.py unreal)
|
|
||||||
Plugins/DiscordRpc/Source/ThirdParty/DiscordRpcLibrary/Include
|
|
|
@ -1,54 +0,0 @@
|
||||||
[URL]
|
|
||||||
|
|
||||||
[/Script/HardwareTargeting.HardwareTargetingSettings]
|
|
||||||
TargetedHardwareClass=Desktop
|
|
||||||
AppliedTargetedHardwareClass=Desktop
|
|
||||||
DefaultGraphicsPerformance=Maximum
|
|
||||||
AppliedDefaultGraphicsPerformance=Maximum
|
|
||||||
|
|
||||||
[/Script/Engine.EndUserSettings]
|
|
||||||
bSendAnonymousUsageDataToEpic=False
|
|
||||||
|
|
||||||
[/Script/Engine.PhysicsSettings]
|
|
||||||
DefaultGravityZ=-980.000000
|
|
||||||
DefaultTerminalVelocity=4000.000000
|
|
||||||
DefaultFluidFriction=0.300000
|
|
||||||
SimulateScratchMemorySize=262144
|
|
||||||
RagdollAggregateThreshold=4
|
|
||||||
TriangleMeshTriangleMinAreaThreshold=5.000000
|
|
||||||
bEnableAsyncScene=False
|
|
||||||
bEnableShapeSharing=False
|
|
||||||
bEnablePCM=False
|
|
||||||
bEnableStabilization=False
|
|
||||||
bWarnMissingLocks=True
|
|
||||||
bEnable2DPhysics=False
|
|
||||||
LockedAxis=Invalid
|
|
||||||
DefaultDegreesOfFreedom=Full3D
|
|
||||||
BounceThresholdVelocity=200.000000
|
|
||||||
FrictionCombineMode=Average
|
|
||||||
RestitutionCombineMode=Average
|
|
||||||
MaxAngularVelocity=3600.000000
|
|
||||||
MaxDepenetrationVelocity=0.000000
|
|
||||||
ContactOffsetMultiplier=0.010000
|
|
||||||
MinContactOffset=0.000100
|
|
||||||
MaxContactOffset=1.000000
|
|
||||||
bSimulateSkeletalMeshOnDedicatedServer=True
|
|
||||||
DefaultShapeComplexity=CTF_UseSimpleAndComplex
|
|
||||||
bDefaultHasComplexCollision=True
|
|
||||||
bSuppressFaceRemapTable=False
|
|
||||||
bSupportUVFromHitResults=False
|
|
||||||
bDisableActiveActors=False
|
|
||||||
bDisableCCD=False
|
|
||||||
MaxPhysicsDeltaTime=0.033333
|
|
||||||
bSubstepping=False
|
|
||||||
bSubsteppingAsync=False
|
|
||||||
MaxSubstepDeltaTime=0.016667
|
|
||||||
MaxSubsteps=6
|
|
||||||
SyncSceneSmoothingFactor=0.000000
|
|
||||||
AsyncSceneSmoothingFactor=0.990000
|
|
||||||
InitialAverageFrameRate=0.016667
|
|
||||||
|
|
||||||
[/Script/EngineSettings.GameMapsSettings]
|
|
||||||
EditorStartupMap=/Game/ShowTheUILevel.ShowTheUILevel
|
|
||||||
GameDefaultMap=/Game/ShowTheUILevel.ShowTheUILevel
|
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
[/Script/EngineSettings.GeneralProjectSettings]
|
|
||||||
ProjectID=E5977A24492699DF20B8ADBF736AF6C6
|
|
||||||
ProjectName=Discord RPC Example
|
|
||||||
CompanyName=Discord Inc.
|
|
||||||
Homepage="https://discordapp.com/"
|
|
||||||
CopyrightNotice=
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,29 +0,0 @@
|
||||||
{
|
|
||||||
"FileVersion": 3,
|
|
||||||
"Version": 1,
|
|
||||||
"VersionName": "1.0",
|
|
||||||
"FriendlyName": "Discord RPC",
|
|
||||||
"Description": "Wrap the Discord RPC library.",
|
|
||||||
"Category": "Messaging",
|
|
||||||
"CreatedBy": "Chris Marsh <chris@discordapp.com>",
|
|
||||||
"CreatedByURL": "https://discordapp.com/",
|
|
||||||
"DocsURL": "",
|
|
||||||
"MarketplaceURL": "",
|
|
||||||
"SupportURL": "",
|
|
||||||
"CanContainContent": true,
|
|
||||||
"IsBetaVersion": true,
|
|
||||||
"Installed": false,
|
|
||||||
"Modules": [
|
|
||||||
{
|
|
||||||
"Name": "DiscordRpc",
|
|
||||||
"Type": "Runtime",
|
|
||||||
"LoadingPhase": "PreDefault",
|
|
||||||
"WhitelistPlatforms" :
|
|
||||||
[
|
|
||||||
"Win64",
|
|
||||||
"Linux",
|
|
||||||
"Mac"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
Binary file not shown.
Before Width: | Height: | Size: 9.6 KiB |
Binary file not shown.
Before Width: | Height: | Size: 9.6 KiB |
|
@ -1,57 +0,0 @@
|
||||||
// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
|
|
||||||
|
|
||||||
using UnrealBuildTool;
|
|
||||||
using System.IO;
|
|
||||||
|
|
||||||
public class DiscordRpc : ModuleRules
|
|
||||||
{
|
|
||||||
#if WITH_FORWARDED_MODULE_RULES_CTOR
|
|
||||||
public DiscordRpc(ReadOnlyTargetRules Target) : base(Target)
|
|
||||||
#else
|
|
||||||
public DiscordRpc(TargetInfo Target)
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
Definitions.Add("DISCORD_DYNAMIC_LIB=1");
|
|
||||||
|
|
||||||
PublicIncludePaths.AddRange(
|
|
||||||
new string[] {
|
|
||||||
"DiscordRpc/Public"
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
PrivateIncludePaths.AddRange(
|
|
||||||
new string[] {
|
|
||||||
"DiscordRpc/Private"
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
PublicDependencyModuleNames.AddRange(
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
"Core",
|
|
||||||
"DiscordRpcLibrary"
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
PrivateDependencyModuleNames.AddRange(
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
"CoreUObject",
|
|
||||||
"Engine",
|
|
||||||
"Slate",
|
|
||||||
"SlateCore",
|
|
||||||
"Projects"
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
DynamicallyLoadedModuleNames.AddRange(
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
// ... add any modules that your module loads dynamically here ...
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
string BaseDirectory = Path.GetFullPath(Path.Combine(ModuleDirectory, "..", "..", "Source", "ThirdParty", "DiscordRpcLibrary"));
|
|
||||||
PublicIncludePaths.Add(Path.Combine(BaseDirectory, "Include"));
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,76 +0,0 @@
|
||||||
// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
|
|
||||||
|
|
||||||
#include "DiscordRpcPrivatePCH.h"
|
|
||||||
#include "IPluginManager.h"
|
|
||||||
#include "ModuleManager.h"
|
|
||||||
|
|
||||||
#define LOCTEXT_NAMESPACE "FDiscordRpcModule"
|
|
||||||
|
|
||||||
void FDiscordRpcModule::StartupModule()
|
|
||||||
{
|
|
||||||
#if !PLATFORM_LINUX
|
|
||||||
#if defined(DISCORD_DYNAMIC_LIB)
|
|
||||||
// Get the base directory of this plugin
|
|
||||||
FString BaseDir = IPluginManager::Get().FindPlugin("DiscordRpc")->GetBaseDir();
|
|
||||||
const FString SDKDir =
|
|
||||||
FPaths::Combine(*BaseDir, TEXT("Source"), TEXT("ThirdParty"), TEXT("DiscordRpcLibrary"));
|
|
||||||
#if PLATFORM_WINDOWS
|
|
||||||
const FString LibName = TEXT("discord-rpc");
|
|
||||||
const FString LibDir = FPaths::Combine(*SDKDir, TEXT("Win64"));
|
|
||||||
if (!LoadDependency(LibDir, LibName, DiscordRpcLibraryHandle)) {
|
|
||||||
FMessageDialog::Open(
|
|
||||||
EAppMsgType::Ok,
|
|
||||||
LOCTEXT(LOCTEXT_NAMESPACE,
|
|
||||||
"Failed to load DiscordRpc plugin. Plug-in will not be functional."));
|
|
||||||
FreeDependency(DiscordRpcLibraryHandle);
|
|
||||||
}
|
|
||||||
#elif PLATFORM_MAC
|
|
||||||
const FString LibName = TEXT("libdiscord-rpc");
|
|
||||||
const FString LibDir = FPaths::Combine(*SDKDir, TEXT("Mac"));
|
|
||||||
if (!LoadDependency(LibDir, LibName, DiscordRpcLibraryHandle)) {
|
|
||||||
FMessageDialog::Open(
|
|
||||||
EAppMsgType::Ok,
|
|
||||||
LOCTEXT(LOCTEXT_NAMESPACE,
|
|
||||||
"Failed to load DiscordRpc plugin. Plug-in will not be functional."));
|
|
||||||
FreeDependency(DiscordRpcLibraryHandle);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void FDiscordRpcModule::ShutdownModule()
|
|
||||||
{
|
|
||||||
// Free the dll handle
|
|
||||||
#if !PLATFORM_LINUX
|
|
||||||
#if defined(DISCORD_DYNAMIC_LIB)
|
|
||||||
FreeDependency(DiscordRpcLibraryHandle);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
bool FDiscordRpcModule::LoadDependency(const FString& Dir, const FString& Name, void*& Handle)
|
|
||||||
{
|
|
||||||
FString Lib = Name + TEXT(".") + FPlatformProcess::GetModuleExtension();
|
|
||||||
FString Path = Dir.IsEmpty() ? *Lib : FPaths::Combine(*Dir, *Lib);
|
|
||||||
|
|
||||||
Handle = FPlatformProcess::GetDllHandle(*Path);
|
|
||||||
|
|
||||||
if (Handle == nullptr) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void FDiscordRpcModule::FreeDependency(void*& Handle)
|
|
||||||
{
|
|
||||||
if (Handle != nullptr) {
|
|
||||||
FPlatformProcess::FreeDllHandle(Handle);
|
|
||||||
Handle = nullptr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#undef LOCTEXT_NAMESPACE
|
|
||||||
|
|
||||||
IMPLEMENT_MODULE(FDiscordRpcModule, DiscordRpc)
|
|
|
@ -1,172 +0,0 @@
|
||||||
#include "DiscordRpcPrivatePCH.h"
|
|
||||||
#include "DiscordRpcBlueprint.h"
|
|
||||||
#include "discord_rpc.h"
|
|
||||||
|
|
||||||
DEFINE_LOG_CATEGORY(Discord)
|
|
||||||
|
|
||||||
static UDiscordRpc* self = nullptr;
|
|
||||||
|
|
||||||
static void ReadyHandler(const DiscordUser* connectedUser)
|
|
||||||
{
|
|
||||||
FDiscordUserData ud;
|
|
||||||
ud.userId = ANSI_TO_TCHAR(connectedUser->userId);
|
|
||||||
ud.username = ANSI_TO_TCHAR(connectedUser->username);
|
|
||||||
ud.discriminator = ANSI_TO_TCHAR(connectedUser->discriminator);
|
|
||||||
ud.avatar = ANSI_TO_TCHAR(connectedUser->avatar);
|
|
||||||
UE_LOG(Discord,
|
|
||||||
Log,
|
|
||||||
TEXT("Discord connected to %s - %s#%s"),
|
|
||||||
*ud.userId,
|
|
||||||
*ud.username,
|
|
||||||
*ud.discriminator);
|
|
||||||
if (self) {
|
|
||||||
self->IsConnected = true;
|
|
||||||
self->OnConnected.Broadcast(ud);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void DisconnectHandler(int errorCode, const char* message)
|
|
||||||
{
|
|
||||||
auto msg = FString(message);
|
|
||||||
UE_LOG(Discord, Log, TEXT("Discord disconnected (%d): %s"), errorCode, *msg);
|
|
||||||
if (self) {
|
|
||||||
self->IsConnected = false;
|
|
||||||
self->OnDisconnected.Broadcast(errorCode, msg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void ErroredHandler(int errorCode, const char* message)
|
|
||||||
{
|
|
||||||
auto msg = FString(message);
|
|
||||||
UE_LOG(Discord, Log, TEXT("Discord error (%d): %s"), errorCode, *msg);
|
|
||||||
if (self) {
|
|
||||||
self->OnErrored.Broadcast(errorCode, msg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void JoinGameHandler(const char* joinSecret)
|
|
||||||
{
|
|
||||||
auto secret = FString(joinSecret);
|
|
||||||
UE_LOG(Discord, Log, TEXT("Discord join %s"), *secret);
|
|
||||||
if (self) {
|
|
||||||
self->OnJoin.Broadcast(secret);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void SpectateGameHandler(const char* spectateSecret)
|
|
||||||
{
|
|
||||||
auto secret = FString(spectateSecret);
|
|
||||||
UE_LOG(Discord, Log, TEXT("Discord spectate %s"), *secret);
|
|
||||||
if (self) {
|
|
||||||
self->OnSpectate.Broadcast(secret);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void JoinRequestHandler(const DiscordUser* request)
|
|
||||||
{
|
|
||||||
FDiscordUserData ud;
|
|
||||||
ud.userId = ANSI_TO_TCHAR(request->userId);
|
|
||||||
ud.username = ANSI_TO_TCHAR(request->username);
|
|
||||||
ud.discriminator = ANSI_TO_TCHAR(request->discriminator);
|
|
||||||
ud.avatar = ANSI_TO_TCHAR(request->avatar);
|
|
||||||
UE_LOG(Discord,
|
|
||||||
Log,
|
|
||||||
TEXT("Discord join request from %s - %s#%s"),
|
|
||||||
*ud.userId,
|
|
||||||
*ud.username,
|
|
||||||
*ud.discriminator);
|
|
||||||
if (self) {
|
|
||||||
self->OnJoinRequest.Broadcast(ud);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDiscordRpc::Initialize(const FString& applicationId,
|
|
||||||
bool autoRegister,
|
|
||||||
const FString& optionalSteamId)
|
|
||||||
{
|
|
||||||
self = this;
|
|
||||||
IsConnected = false;
|
|
||||||
DiscordEventHandlers handlers{};
|
|
||||||
handlers.ready = ReadyHandler;
|
|
||||||
handlers.disconnected = DisconnectHandler;
|
|
||||||
handlers.errored = ErroredHandler;
|
|
||||||
if (OnJoin.IsBound()) {
|
|
||||||
handlers.joinGame = JoinGameHandler;
|
|
||||||
}
|
|
||||||
if (OnSpectate.IsBound()) {
|
|
||||||
handlers.spectateGame = SpectateGameHandler;
|
|
||||||
}
|
|
||||||
if (OnJoinRequest.IsBound()) {
|
|
||||||
handlers.joinRequest = JoinRequestHandler;
|
|
||||||
}
|
|
||||||
auto appId = StringCast<ANSICHAR>(*applicationId);
|
|
||||||
auto steamId = StringCast<ANSICHAR>(*optionalSteamId);
|
|
||||||
Discord_Initialize(
|
|
||||||
(const char*)appId.Get(), &handlers, autoRegister, (const char*)steamId.Get());
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDiscordRpc::Shutdown()
|
|
||||||
{
|
|
||||||
Discord_Shutdown();
|
|
||||||
self = nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDiscordRpc::RunCallbacks()
|
|
||||||
{
|
|
||||||
Discord_RunCallbacks();
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDiscordRpc::UpdatePresence()
|
|
||||||
{
|
|
||||||
DiscordRichPresence rp{};
|
|
||||||
|
|
||||||
auto state = StringCast<ANSICHAR>(*RichPresence.state);
|
|
||||||
rp.state = state.Get();
|
|
||||||
|
|
||||||
auto details = StringCast<ANSICHAR>(*RichPresence.details);
|
|
||||||
rp.details = details.Get();
|
|
||||||
|
|
||||||
auto largeImageKey = StringCast<ANSICHAR>(*RichPresence.largeImageKey);
|
|
||||||
rp.largeImageKey = largeImageKey.Get();
|
|
||||||
|
|
||||||
auto largeImageText = StringCast<ANSICHAR>(*RichPresence.largeImageText);
|
|
||||||
rp.largeImageText = largeImageText.Get();
|
|
||||||
|
|
||||||
auto smallImageKey = StringCast<ANSICHAR>(*RichPresence.smallImageKey);
|
|
||||||
rp.smallImageKey = smallImageKey.Get();
|
|
||||||
|
|
||||||
auto smallImageText = StringCast<ANSICHAR>(*RichPresence.smallImageText);
|
|
||||||
rp.smallImageText = smallImageText.Get();
|
|
||||||
|
|
||||||
auto partyId = StringCast<ANSICHAR>(*RichPresence.partyId);
|
|
||||||
rp.partyId = partyId.Get();
|
|
||||||
|
|
||||||
auto matchSecret = StringCast<ANSICHAR>(*RichPresence.matchSecret);
|
|
||||||
rp.matchSecret = matchSecret.Get();
|
|
||||||
|
|
||||||
auto joinSecret = StringCast<ANSICHAR>(*RichPresence.joinSecret);
|
|
||||||
rp.joinSecret = joinSecret.Get();
|
|
||||||
|
|
||||||
auto spectateSecret = StringCast<ANSICHAR>(*RichPresence.spectateSecret);
|
|
||||||
rp.spectateSecret = spectateSecret.Get();
|
|
||||||
rp.startTimestamp = RichPresence.startTimestamp;
|
|
||||||
rp.endTimestamp = RichPresence.endTimestamp;
|
|
||||||
rp.partySize = RichPresence.partySize;
|
|
||||||
rp.partyMax = RichPresence.partyMax;
|
|
||||||
rp.partyPrivacy = (int)RichPresence.partyPrivacy;
|
|
||||||
rp.instance = RichPresence.instance;
|
|
||||||
|
|
||||||
Discord_UpdatePresence(&rp);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDiscordRpc::ClearPresence()
|
|
||||||
{
|
|
||||||
Discord_ClearPresence();
|
|
||||||
}
|
|
||||||
|
|
||||||
void UDiscordRpc::Respond(const FString& userId, int reply)
|
|
||||||
{
|
|
||||||
UE_LOG(Discord, Log, TEXT("Responding %d to join request from %s"), reply, *userId);
|
|
||||||
FTCHARToUTF8 utf8_userid(*userId);
|
|
||||||
Discord_Respond(utf8_userid.Get(), reply);
|
|
||||||
}
|
|
|
@ -1,2 +0,0 @@
|
||||||
#include "Core.h"
|
|
||||||
#include "DiscordRpc.h"
|
|
|
@ -1,20 +0,0 @@
|
||||||
// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "ModuleManager.h"
|
|
||||||
|
|
||||||
class FDiscordRpcModule : public IModuleInterface {
|
|
||||||
public:
|
|
||||||
/** IModuleInterface implementation */
|
|
||||||
virtual void StartupModule() override;
|
|
||||||
virtual void ShutdownModule() override;
|
|
||||||
|
|
||||||
private:
|
|
||||||
/** Handle to the test dll we will load */
|
|
||||||
void* DiscordRpcLibraryHandle;
|
|
||||||
|
|
||||||
/** StartupModule is covered with defines, these functions are the place to put breakpoints */
|
|
||||||
static bool LoadDependency(const FString& Dir, const FString& Name, void*& Handle);
|
|
||||||
static void FreeDependency(void*& Handle);
|
|
||||||
};
|
|
|
@ -1,181 +0,0 @@
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "CoreMinimal.h"
|
|
||||||
#include "Engine.h"
|
|
||||||
#include "DiscordRpcBlueprint.generated.h"
|
|
||||||
|
|
||||||
// unreal's header tool hates clang-format
|
|
||||||
// clang-format off
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Ask to join callback data
|
|
||||||
*/
|
|
||||||
USTRUCT(BlueprintType)
|
|
||||||
struct FDiscordUserData {
|
|
||||||
GENERATED_USTRUCT_BODY()
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintReadOnly)
|
|
||||||
FString userId;
|
|
||||||
UPROPERTY(BlueprintReadOnly)
|
|
||||||
FString username;
|
|
||||||
UPROPERTY(BlueprintReadOnly)
|
|
||||||
FString discriminator;
|
|
||||||
UPROPERTY(BlueprintReadOnly)
|
|
||||||
FString avatar;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Valid response codes for Respond function
|
|
||||||
*/
|
|
||||||
UENUM(BlueprintType)
|
|
||||||
enum class EDiscordJoinResponseCodes : uint8
|
|
||||||
{
|
|
||||||
DISCORD_REPLY_NO UMETA(DisplayName="No"),
|
|
||||||
DISCORD_REPLY_YES UMETA(DisplayName="Yes"),
|
|
||||||
DISCORD_REPLY_IGNORE UMETA(DisplayName="Ignore")
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Valid party privacy values
|
|
||||||
*/
|
|
||||||
UENUM(BlueprintType)
|
|
||||||
enum class EDiscordPartyPrivacy: uint8
|
|
||||||
{
|
|
||||||
DISCORD_PARTY_PRIVATE UMETA(DisplayName="Private"),
|
|
||||||
DISCORD_PARTY_PUBLIC UMETA(DisplayName="Public")
|
|
||||||
};
|
|
||||||
|
|
||||||
DECLARE_LOG_CATEGORY_EXTERN(Discord, Log, All);
|
|
||||||
|
|
||||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FDiscordConnected, const FDiscordUserData&, joinRequest);
|
|
||||||
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FDiscordDisconnected, int, errorCode, const FString&, errorMessage);
|
|
||||||
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 FDiscordUserData&, joinRequest);
|
|
||||||
|
|
||||||
// clang-format on
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Rich presence data
|
|
||||||
*/
|
|
||||||
USTRUCT(BlueprintType)
|
|
||||||
struct FDiscordRichPresence {
|
|
||||||
GENERATED_USTRUCT_BODY()
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString state;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString details;
|
|
||||||
// todo, timestamps are 64bit, does that even matter?
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
int startTimestamp;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
int endTimestamp;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString largeImageKey;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString largeImageText;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString smallImageKey;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString smallImageText;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString partyId;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
int partySize;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
int partyMax;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
EDiscordPartyPrivacy partyPrivacy;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString matchSecret;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString joinSecret;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
FString spectateSecret;
|
|
||||||
UPROPERTY(BlueprintReadWrite)
|
|
||||||
bool instance;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
UCLASS(BlueprintType, meta = (DisplayName = "Discord RPC"), Category = "Discord")
|
|
||||||
class DISCORDRPC_API UDiscordRpc : public UObject {
|
|
||||||
GENERATED_BODY()
|
|
||||||
|
|
||||||
public:
|
|
||||||
UFUNCTION(BlueprintCallable,
|
|
||||||
meta = (DisplayName = "Initialize connection", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
void Initialize(const FString& applicationId,
|
|
||||||
bool autoRegister,
|
|
||||||
const FString& optionalSteamId);
|
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable,
|
|
||||||
meta = (DisplayName = "Shut down connection", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
void Shutdown();
|
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable,
|
|
||||||
meta = (DisplayName = "Check for callbacks", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
void RunCallbacks();
|
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable,
|
|
||||||
meta = (DisplayName = "Send presence", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
void UpdatePresence();
|
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable,
|
|
||||||
meta = (DisplayName = "Clear presence", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
void ClearPresence();
|
|
||||||
|
|
||||||
UFUNCTION(BlueprintCallable,
|
|
||||||
meta = (DisplayName = "Respond to join request", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
void Respond(const FString& userId, int reply);
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintReadOnly,
|
|
||||||
meta = (DisplayName = "Is Discord connected", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
bool IsConnected;
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintAssignable,
|
|
||||||
meta = (DisplayName = "On connection", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
FDiscordConnected OnConnected;
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintAssignable,
|
|
||||||
meta = (DisplayName = "On disconnection", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
FDiscordDisconnected OnDisconnected;
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintAssignable,
|
|
||||||
meta = (DisplayName = "On error message", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
FDiscordErrored OnErrored;
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintAssignable,
|
|
||||||
meta = (DisplayName = "When Discord user presses join", Keywords = "Discord rpc"),
|
|
||||||
Category = "Discord")
|
|
||||||
FDiscordJoin OnJoin;
|
|
||||||
|
|
||||||
UPROPERTY(BlueprintAssignable,
|
|
||||||
meta = (DisplayName = "When Discord user presses spectate", Keywords = "Discord rpc"),
|
|
||||||
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")
|
|
||||||
FDiscordRichPresence RichPresence;
|
|
||||||
};
|
|
|
@ -1,59 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
using System.IO;
|
|
||||||
using UnrealBuildTool;
|
|
||||||
|
|
||||||
public class DiscordRpcLibrary : ModuleRules
|
|
||||||
{
|
|
||||||
#if WITH_FORWARDED_MODULE_RULES_CTOR
|
|
||||||
public DiscordRpcLibrary(ReadOnlyTargetRules Target) : base(Target)
|
|
||||||
#else
|
|
||||||
public DiscordRpcLibrary(TargetInfo Target)
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
Type = ModuleType.External;
|
|
||||||
Definitions.Add("DISCORD_DYNAMIC_LIB=1");
|
|
||||||
|
|
||||||
string BaseDirectory = Path.GetFullPath(Path.Combine(ModuleDirectory, "..", "..", "ThirdParty", "DiscordRpcLibrary"));
|
|
||||||
|
|
||||||
if (Target.Platform == UnrealTargetPlatform.Win64)
|
|
||||||
{
|
|
||||||
string lib = Path.Combine(BaseDirectory, "Win64");
|
|
||||||
|
|
||||||
// Include headers
|
|
||||||
PublicIncludePaths.Add(Path.Combine(BaseDirectory, "Include"));
|
|
||||||
|
|
||||||
// Add the import library
|
|
||||||
PublicLibraryPaths.Add(lib);
|
|
||||||
PublicAdditionalLibraries.Add(Path.Combine(lib, "discord-rpc.lib"));
|
|
||||||
|
|
||||||
// Dynamic
|
|
||||||
RuntimeDependencies.Add(new RuntimeDependency(Path.Combine(lib, "discord-rpc.dll")));
|
|
||||||
PublicDelayLoadDLLs.Add("discord-rpc.dll");
|
|
||||||
}
|
|
||||||
else if (Target.Platform == UnrealTargetPlatform.Linux)
|
|
||||||
{
|
|
||||||
string lib = Path.Combine(BaseDirectory, "Linux", "x86_64-unknown-linux-gnu");
|
|
||||||
|
|
||||||
// Include headers
|
|
||||||
PublicIncludePaths.Add(Path.Combine(BaseDirectory, "Include"));
|
|
||||||
|
|
||||||
// Add the import library
|
|
||||||
PublicLibraryPaths.Add(lib);
|
|
||||||
PublicAdditionalLibraries.Add(Path.Combine(lib, "libdiscord-rpc.so"));
|
|
||||||
RuntimeDependencies.Add(new RuntimeDependency(Path.Combine(lib, "libdiscord-rpc.so")));
|
|
||||||
}
|
|
||||||
else if (Target.Platform == UnrealTargetPlatform.Mac)
|
|
||||||
{
|
|
||||||
string lib = Path.Combine(BaseDirectory, "Mac");
|
|
||||||
|
|
||||||
// Include headers
|
|
||||||
PublicIncludePaths.Add(Path.Combine(BaseDirectory, "Include"));
|
|
||||||
|
|
||||||
// Add the import library
|
|
||||||
PublicLibraryPaths.Add(lib);
|
|
||||||
PublicAdditionalLibraries.Add(Path.Combine(lib, "libdiscord-rpc.dylib"));
|
|
||||||
RuntimeDependencies.Add(new RuntimeDependency(Path.Combine(lib, "libdiscord-rpc.dylib")));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
using UnrealBuildTool;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
public class unrealstatusTarget : TargetRules
|
|
||||||
{
|
|
||||||
public unrealstatusTarget(TargetInfo Target) : base(Target)
|
|
||||||
{
|
|
||||||
Type = TargetType.Game;
|
|
||||||
|
|
||||||
ExtraModuleNames.AddRange( new string[] { "unrealstatus" } );
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,23 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
using UnrealBuildTool;
|
|
||||||
|
|
||||||
public class unrealstatus : ModuleRules
|
|
||||||
{
|
|
||||||
public unrealstatus(ReadOnlyTargetRules Target) : base(Target)
|
|
||||||
{
|
|
||||||
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
|
|
||||||
|
|
||||||
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });
|
|
||||||
|
|
||||||
PrivateDependencyModuleNames.AddRange(new string[] { });
|
|
||||||
|
|
||||||
// Uncomment if you are using Slate UI
|
|
||||||
// PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });
|
|
||||||
|
|
||||||
// Uncomment if you are using online features
|
|
||||||
// PrivateDependencyModuleNames.Add("OnlineSubsystem");
|
|
||||||
|
|
||||||
// To include OnlineSubsystemSteam, add it to the plugins section in your uproject file with the Enabled attribute set to true
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,6 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
#include "unrealstatus.h"
|
|
||||||
#include "Modules/ModuleManager.h"
|
|
||||||
|
|
||||||
IMPLEMENT_PRIMARY_GAME_MODULE(FDefaultGameModuleImpl, unrealstatus, "unrealstatus");
|
|
|
@ -1,5 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "CoreMinimal.h"
|
|
|
@ -1,3 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
#include "unrealstatusGameModeBase.h"
|
|
|
@ -1,15 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "CoreMinimal.h"
|
|
||||||
#include "GameFramework/GameModeBase.h"
|
|
||||||
#include "unrealstatusGameModeBase.generated.h"
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
UCLASS()
|
|
||||||
class UNREALSTATUS_API AunrealstatusGameModeBase : public AGameModeBase {
|
|
||||||
GENERATED_BODY()
|
|
||||||
};
|
|
|
@ -1,14 +0,0 @@
|
||||||
// Fill out your copyright notice in the Description page of Project Settings.
|
|
||||||
|
|
||||||
using UnrealBuildTool;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
public class unrealstatusEditorTarget : TargetRules
|
|
||||||
{
|
|
||||||
public unrealstatusEditorTarget(TargetInfo Target) : base(Target)
|
|
||||||
{
|
|
||||||
Type = TargetType.Editor;
|
|
||||||
|
|
||||||
ExtraModuleNames.AddRange( new string[] { "unrealstatus" } );
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,19 +0,0 @@
|
||||||
{
|
|
||||||
"FileVersion": 3,
|
|
||||||
"EngineAssociation": "4.18",
|
|
||||||
"Category": "",
|
|
||||||
"Description": "",
|
|
||||||
"Modules": [
|
|
||||||
{
|
|
||||||
"Name": "unrealstatus",
|
|
||||||
"Type": "Runtime",
|
|
||||||
"LoadingPhase": "Default"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"TargetPlatforms": [
|
|
||||||
"LinuxNoEditor",
|
|
||||||
"MacNoEditor",
|
|
||||||
"WindowsNoEditor",
|
|
||||||
"AllDesktop"
|
|
||||||
]
|
|
||||||
}
|
|
Loading…
Reference in New Issue