Initial commit

This commit is contained in:
MuHua-123
2024-11-01 17:14:31 +08:00
commit 5f169b90bb
216 changed files with 24712 additions and 0 deletions
@@ -0,0 +1,21 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public abstract class DataNetwork {
public event Action<string> OnError;
public event Action<string> OnCallback;
public readonly string url;
public DataNetwork(string url) => this.url = url;
public abstract IEnumerator IWebRequest();
public virtual void RequestResultHandle(UnityWebRequest web) {
bool isDone = !web.isDone || web.result != UnityWebRequest.Result.Success;
if (isDone) { OnCallback?.Invoke(web.downloadHandler.text); }
else { OnError?.Invoke(web.downloadHandler.text); }
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 26504492cb699964aad1334e6c272c90
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,16 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkGet : DataNetwork {
public DataNetworkGet(string url) : base(url) { }
public override IEnumerator IWebRequest() {
using (UnityWebRequest web = UnityWebRequest.Get(url)) {
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 178fdb6bf03219a419be9c9661e25a5f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,22 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkGetTexture : DataNetwork {
public Action<Texture2D> action;
public DataNetworkGetTexture(string url, Action<Texture2D> action) : base(url) => this.action = action;
public override IEnumerator IWebRequest() {
using (UnityWebRequest web = UnityWebRequestTexture.GetTexture(url)) {
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
public override void RequestResultHandle(UnityWebRequest web) {
base.RequestResultHandle(web);
bool isDone = !web.isDone || web.result != UnityWebRequest.Result.Success;
if (isDone) { action?.Invoke((web.downloadHandler as DownloadHandlerTexture).texture); }
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d878ccfee24dcb643a5969a41747030f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,16 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkPostForm : DataNetwork {
public readonly WWWForm form;
public DataNetworkPostForm(string url, WWWForm form) : base(url) => this.form = form;
public override IEnumerator IWebRequest() {
using (UnityWebRequest web = UnityWebRequest.Post(url, form)) {
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 94c1d521794afc841b26a36e6e873c59
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,24 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkPostJson : DataNetwork {
public readonly string json;
public DataNetworkPostJson(string url, string json) : base(url) => this.json = json;
public override IEnumerator IWebRequest() {
byte[] postBytes = System.Text.Encoding.Default.GetBytes(json);
#if UNITY_2022
using (UnityWebRequest web = UnityWebRequest.PostWwwForm(url, "POST")) {
#else
using (UnityWebRequest web = UnityWebRequest.Post(url, "POST")) {
#endif
web.uploadHandler.Dispose();
web.uploadHandler = new UploadHandlerRaw(postBytes);
web.SetRequestHeader("Content-Type", "application/json");
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: bf7743cdb35457b448a4b426a9c4a2af
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: