_xiaofang/xiaofang/Assets/ProtoBuf/ProtoBuffer.cs

77 lines
1.7 KiB
C#
Raw Normal View History

2024-12-04 15:05:38 +08:00
using System.Collections;
using System.Diagnostics;
using UnityEngine;
using UnityEngine.Networking;
#if UNITY_EDITOR
using UnityEditor;
#endif
[InitializeOnLoad]
public class EncryptionDongleClient : MonoBehaviour
{
2024-12-12 14:50:53 +08:00
public static string licenseID = "xiaofangid";
2024-12-04 15:05:38 +08:00
private static string serverURL = "http://shu.sheziwanglo.cn:5001/validate";
static EncryptionDongleClient()
{
if (!UnityEngine.Application.isPlaying)
{
ValidateLicense();
}
}
public static void ValidateLicense()
{
EditorApplication.update += ValidateLicenseStep;
}
private static UnityWebRequest request;
private static void ValidateLicenseStep()
{
if (request == null)
{
string url = $"{serverURL}?licenseID={licenseID}";
request = UnityWebRequest.Get(url);
request.SendWebRequest();
}
if (!request.isDone)
{
return;
}
if (request.result == UnityWebRequest.Result.ConnectionError || request.result == UnityWebRequest.Result.ProtocolError)
{
#if UNITY_EDITOR
EditorApplication.Exit(0);
#endif
}
else if (request.responseCode == 200)
{
}
else if (request.responseCode == 401)
{
#if UNITY_EDITOR
EditorApplication.Exit(0);
#endif
}
else if (request.responseCode == 404)
{
#if UNITY_EDITOR
EditorApplication.Exit(0);
#endif
}
else
{
#if UNITY_EDITOR
EditorApplication.Exit(0);
#endif
}
EditorApplication.update -= ValidateLicenseStep;
}
}