This commit is contained in:
GL 2024-11-12 22:02:08 +08:00
commit 430fb9205b
21 changed files with 942 additions and 167 deletions

View File

@ -209,7 +209,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -388, y: 897}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 255.4885, y: 136.6154}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4075030775632783702

View File

@ -1131,7 +1131,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 503.5, y: -1649.3665}
m_AnchoredPosition: {x: 503.5, y: -1938.7665}
m_SizeDelta: {x: 911, y: 289.4}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &376604315
@ -1291,7 +1291,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 503.5, y: -773.83325}
m_AnchoredPosition: {x: 503.5, y: -861.33325}
m_SizeDelta: {x: 911, y: 292.3333}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &421083510
@ -4584,8 +4584,6 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1789203781}
- component: {fileID: 1789203785}
- component: {fileID: 1789203784}
- component: {fileID: 1789203783}
- component: {fileID: 1789203782}
m_Layer: 0
@ -4619,7 +4617,7 @@ MonoBehaviour:
m_GameObject: {fileID: 1789203778}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9e50b3d02b729854e87c092afffd2a03, type: 3}
m_Script: {fileID: 11500000, guid: b7936430f01cc8343a1e62fc2052a12b, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &1789203783
@ -4631,33 +4629,9 @@ MonoBehaviour:
m_GameObject: {fileID: 1789203778}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b7936430f01cc8343a1e62fc2052a12b, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &1789203784
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1789203778}
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8ee1a43c8ad7f8c41bad48013bf5af49, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &1789203785
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1789203778}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: db50a6d583762ea45b20d705d0e068cd, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1850703526
GameObject:
m_ObjectHideFlags: 0

View File

@ -0,0 +1,32 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ShowMoney : MonoBehaviour
{
public GameObject purplePoint;
public GameObject cyanPoint;
public GameObject pinkPoint;
public GameObject yellowPoint;
public GameObject bluePoint;
public GameObject greenPoint;
public GameObject TextBoxPrefab;
// Start is called before the first frame update
void Start()
{
GameObject purpleText = Instantiate( TextBoxPrefab, purplePoint.transform);
GameObject cyanText = Instantiate( TextBoxPrefab, cyanPoint.transform);
GameObject pinkText = Instantiate( TextBoxPrefab, pinkPoint.transform);
GameObject yellowText = Instantiate( TextBoxPrefab, yellowPoint.transform);
GameObject blueText = Instantiate( TextBoxPrefab, bluePoint.transform);
GameObject greenText = Instantiate( TextBoxPrefab, greenPoint.transform);
}
// Update is called once per frame
void Update()
{
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6e4bf0165dc8aed4bb250188bb0d6f1e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,106 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class QueryEscapeRoom : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
//Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
await QueryEscapeRoomDetails();//=====================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改掉,吃服务器
//Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await QueryEscapeRoomDetails();//=====================================================================放在此处只为解除一个黄色报错,看着闹心。但可以不要
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
await QueryEscapeRoomDetails();//==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 查询逃亡房间详情
public async Task QueryEscapeRoomDetails()
{
var headers = CreateHeaders();
string body = $@"
{{
""userId"": 106,
""escapeId"": {escapeId}
}}";
string response = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/queryEscapeRoomList", "POST", body, headers);
Debug.Log("逃亡房间详情响应: " + response);
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: b27d2d49f51751e42b31653d0b0b8d2d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,111 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class UpdateUserInfo : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
//Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
await UpdateUserInformation();//=====================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改掉,吃服务器
//Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await UpdateUserInformation();//=====================================================================放在此处只为解除一个黄色报错,看着闹心。但可以不要
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
// 查询击杀数据
await UpdateUserInformation();//==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 更新用户信息
public async Task UpdateUserInformation()
{
var headers = CreateHeaders();
string body = @"
{
""nickName"": ""wulongxiao"",
""headImg"": ""https://fantasymonster-app.oss-cn-hangzhou.aliyuncs.com/upload/imgs/127e4e42d7c0405aab53359c1b278a9c.png"",
""gender"": 1,
""birthday"": ""2023-12-12 12:12:12""
}";
Debug.Log("正在更新用户信息...");
string response = await web.SendRequest("http://121.40.42.41:8080/snail/user/update", "POST", body, headers);
Debug.Log("更新用户信息响应: " + response);
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 3cdc7291c1f2c68489b960c1d53cbac6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,106 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class UserBetResult : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
await QueryUserBetResult();//=====================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改掉,吃服务器
Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await QueryUserBetResult();//=====================================================================放在此处只为解除一个黄色报错,看着闹心。但可以不要
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
await QueryUserBetResult();//==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 查询用户下注结果
public async Task QueryUserBetResult()
{
var headers = CreateHeaders();
string body = $@"
{{
""userId"": 106,
""escapeId"": {escapeId}
}}";
string response = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/queryUserBetResult", "POST", body, headers);
Debug.Log("查询用户下注结果响应: " + response);
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e57021e815a075842afcb8cea3c745d1
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,108 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class gamber : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
// Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
//await UserBet();//=====================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改掉,吃服务器
//Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await UserBet();//=====================================================================放在此处只为解除一个黄色报错,看着闹心。但可以不要
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
await UserBet();//==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 用户下注
public async Task UserBet()
{
var headers = CreateHeaders();
string body = $@"
{{
""userId"": 106,
""escapeId"": {escapeId},
""bet"": 100,
""roomNo"": 1
}}";
string response = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/userBet", "POST", body, headers);
Debug.Log("用户下注响应: " + response);
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 265365642b7b8644081cd2ce79416fb3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,143 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class loadMall : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
//Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
await LoadMallData();//=====================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改掉,吃服务器
//Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await LoadMallData();//=====================================================================放在此处只为解除一个黄色报错,看着闹心。但可以不要
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
await LoadMallData();//==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 加载商城数据
public async Task LoadMallData()
{
// 查询商城虚拟商品列表
await QueryMallList(0);
// 查询商城实体商品列表
await QueryMallList(1);
// 获取商品详情
await GetMallProductDetails(1);
// 购买商品
await BuyMallProduct(106, 1);
}
// 查询商城列表
public async Task QueryMallList(int productType)
{
var headers = CreateHeaders();
Mall_List mallList = new Mall_List
{
productType = productType
};
string response = await web.SendRequest("http://121.40.42.41:8080/snail/product/page", "POST", JsonUtility.ToJson(mallList), headers);
Debug.Log($"商城列表 (productType: {productType}) 响应: " + response);
}
// 获取商城商品详情
public async Task GetMallProductDetails(int productId)
{
var headers = CreateHeaders();
Product_Details productDetails = new Product_Details
{
productId = productId
};
string response = await web.SendRequest("http://121.40.42.41:8080/snail/product/info", "POST", JsonUtility.ToJson(productDetails), headers);
Debug.Log("获取商品详情响应: " + response);
}
// 购买商品
public async Task BuyMallProduct(int userId, int productId)
{
var headers = CreateHeaders();
Mall_buy mallBuy = new Mall_buy
{
userId = userId,
productId = productId
};
string response = await web.SendRequest("http://121.40.42.41:8080/snail/product/buy", "POST", JsonUtility.ToJson(mallBuy), headers);
Debug.Log("购买商品响应: " + response);
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d449c3ad634c36d44a6c1fff067aa826
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,108 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class selectQueryKill : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
//Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
await QueryKill();//==================================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改
// Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await QueryKill();
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
// 查询击杀数据
await QueryKill();//=================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 查询击杀信息
public async Task QueryKill()
{
var headers = CreateHeaders();
string body = $@"
{{
""userId"": 106,
""escapeId"": {escapeId}
}}";
string response = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/queryKill", "POST", body, headers);
Debug.Log("查询击杀信息响应: " + response);
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c230883956c0b3546a885c300ad34498
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,104 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class selsecUserInfo : MonoBehaviour
{
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
// 注册监听事件,当收到 token 时,触发 HandleTokenReceived
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
// 注册监听,当 escapeId 更新时调用 HandleGameEscapeIdUpdated但不执行其他方法
selectGameEscape512.OnGameEscapeIdUpdated += HandleGameEscapeIdUpdated;
}
// 当接收到 token 时触发此方法,仅保存 token
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
LoadInitialData();
//LoadGameEscapeData();
//Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
public async void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
await selectUser();//=====================================================================放在这里仅因为懒得写触发条件可以放在任何地方比如input.GetKeyDown.....必须改掉,吃服务器
//Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
public async void LoadInitialData()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载初始数据token 未设置。");
return;
}
await selectUser();//=====================================================================放在此处只为解除一个黄色报错,看着闹心。但可以不要
}
// 加载游戏逃亡数据,使用最新的 escapeId 和 token
public async void selectQueryKill1()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("无法加载游戏逃亡数据token 未设置。");
return;
}
if (escapeId == -1)
{
Debug.LogWarning("无法加载游戏逃亡数据escapeId 未设置。");
return;
}
await selectUser();//==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// 查询用户详情
public async Task<string> selectUser()
{
var headers = CreateHeaders();
Debug.Log("正在查询用户详细信息...");
string response = await web.SendRequest("http://121.40.42.41:8080/snail/user/queryUserInfo", "POST", "{}", headers);
Debug.Log("查询用户详细信息响应: " + response);
return response;
}
//===============================================================================================================================================================================================================================
// 创建请求头,使用最新的 token
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{
Debug.LogWarning("尝试创建请求头时token 未设置。");
return new Dictionary<string, string>();
}
return new Dictionary<string, string>
{
{ "Authorization", token }
};
}
void OnDestroy()
{
// 注销监听事件,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
selectGameEscape512.OnGameEscapeIdUpdated -= HandleGameEscapeIdUpdated;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 81202125ae1fe2f43a0ccf3e996186bf
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -15,7 +15,7 @@ public class LoginAndGetToken : MonoBehaviour
private void OnEnable()
{
Login();
//Login();
}
public async void Login()

View File

@ -303,7 +303,6 @@ public class cutePoolPage {
public int orderByBeansCoin;
}
*/
/*using System;
using System.Collections;
using System.Collections.Generic;
@ -526,7 +525,6 @@ public class WebConnact : MonoBehaviour
{
}
}*/
/*using System;
using System.Collections;
using System.Collections.Generic;
@ -982,11 +980,10 @@ using System.Collections.Generic;
using UnityEngine;
using System.Threading.Tasks;
using Newtonsoft.Json;
public class WebConnact : MonoBehaviour
{
private string token = null; // 保存最新的 token初始为 null
private int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
public string token = null; // 保存最新的 token初始为 null
public int escapeId = -1; // 保存最新的 escapeId初始为 -1 表示未设置
void Start()
{
@ -998,17 +995,21 @@ public class WebConnact : MonoBehaviour
}
// 当接收到 token 时触发此方法,仅保存 token
void HandleTokenReceived(string receivedToken)
public void HandleTokenReceived(string receivedToken)
{
token = receivedToken; // 保存最新的 token
// 首次调用加载初始数据
//LoadInitialData();
//LoadGameEscapeData();
Debug.Log("接收到新的 token: " + token);
}
// 当游戏逃亡 ID 更新时触发此方法,仅保存最新的 escapeId
void HandleGameEscapeIdUpdated(int newGameEscapeId)
public void HandleGameEscapeIdUpdated(int newGameEscapeId)
{
escapeId = newGameEscapeId; // 保存最新的 escapeId
Debug.Log("接收到新的 GameEscapeId: " + escapeId);
//LoadGameEscapeData();
//Debug.Log("接收到新的 GameEscapeId: " + escapeId);
}
// 加载初始数据,使用最新的 token
@ -1044,7 +1045,7 @@ public class WebConnact : MonoBehaviour
}
// 查询最近的大屠杀
await QueryLatestMassacre();
// await QueryLatestMassacre();
// 查询逃亡房间详情
await QueryEscapeRoomDetails();
// 用户下注
@ -1056,7 +1057,7 @@ public class WebConnact : MonoBehaviour
}
// 更新用户信息
private async Task UpdateUserInformation()
public async Task UpdateUserInformation()
{
var headers = CreateHeaders();
string body = @"
@ -1072,7 +1073,7 @@ public class WebConnact : MonoBehaviour
}
// 查询用户详情
private async Task<string> QueryUserDetails()
public async Task<string> QueryUserDetails()
{
var headers = CreateHeaders();
Debug.Log("正在查询用户详细信息...");
@ -1082,7 +1083,7 @@ public class WebConnact : MonoBehaviour
}
// 加载商城数据
private async Task LoadMallData()
public async Task LoadMallData()
{
// 查询商城虚拟商品列表
await QueryMallList(0);
@ -1095,7 +1096,7 @@ public class WebConnact : MonoBehaviour
}
// 查询商城列表
private async Task QueryMallList(int productType)
public async Task QueryMallList(int productType)
{
var headers = CreateHeaders();
Mall_List mallList = new Mall_List
@ -1107,7 +1108,7 @@ public class WebConnact : MonoBehaviour
}
// 获取商城商品详情
private async Task GetMallProductDetails(int productId)
public async Task GetMallProductDetails(int productId)
{
var headers = CreateHeaders();
Product_Details productDetails = new Product_Details
@ -1119,7 +1120,7 @@ public class WebConnact : MonoBehaviour
}
// 购买商品
private async Task BuyMallProduct(int userId, int productId)
public async Task BuyMallProduct(int userId, int productId)
{
var headers = CreateHeaders();
Mall_buy mallBuy = new Mall_buy
@ -1131,16 +1132,16 @@ public class WebConnact : MonoBehaviour
Debug.Log("购买商品响应: " + response);
}
// 查询最近的大屠杀
private async Task QueryLatestMassacre()
{
var headers = CreateHeaders();
string response = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/queryLatest", "POST", "{}", headers);
Debug.Log("查询最近大屠杀响应: " + response);
}
//// 查询最近的大屠杀
//public async Task QueryLatestMassacre()
//{
// var headers = CreateHeaders();
// string response = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/queryLatest", "POST", "{}", headers);
// Debug.Log("查询最近大屠杀响应: " + response);
//}
// 查询逃亡房间详情
private async Task QueryEscapeRoomDetails()
public async Task QueryEscapeRoomDetails()
{
var headers = CreateHeaders();
string body = $@"
@ -1153,7 +1154,7 @@ public class WebConnact : MonoBehaviour
}
// 用户下注
private async Task UserBet()
public async Task UserBet()
{
var headers = CreateHeaders();
string body = $@"
@ -1168,7 +1169,7 @@ public class WebConnact : MonoBehaviour
}
// 查询击杀信息
private async Task QueryKill()
public async Task QueryKill()
{
var headers = CreateHeaders();
string body = $@"
@ -1181,7 +1182,7 @@ public class WebConnact : MonoBehaviour
}
// 查询用户下注结果
private async Task QueryUserBetResult()
public async Task QueryUserBetResult()
{
var headers = CreateHeaders();
string body = $@"
@ -1194,7 +1195,7 @@ public class WebConnact : MonoBehaviour
}
// 创建请求头,使用最新的 token
private Dictionary<string, string> CreateHeaders()
public Dictionary<string, string> CreateHeaders()
{
if (string.IsNullOrEmpty(token))
{

View File

@ -43,7 +43,7 @@ public class selectGameEscape512 : MonoBehaviour
{
while (true) // 无限循环来实现每2秒发送一次请求
{
yield return new WaitForSeconds(5f); // 每2秒暂停一次
yield return new WaitForSeconds(2f); // 每2秒暂停一次
yield return gameEscape(token); // 调用gameEscape方法
}
}
@ -52,7 +52,7 @@ public class selectGameEscape512 : MonoBehaviour
{
// 用来给请求头赋值
string Authorization = token;
Debug.Log("Loding(Authorization)请求头赋值" + Authorization);
//Debug.Log("Loding(Authorization)请求头赋值" + Authorization);
// 5.1查询最近一场大屠杀
Dictionary<string, string> head51 = new Dictionary<string, string>
@ -70,7 +70,7 @@ public class selectGameEscape512 : MonoBehaviour
if (response != null && response.code == 200 && response.data != null)
{
gameEscapeId = response.data.gameEscapeModel.id;
Debug.Log("解析成功id为: " + gameEscapeId);
//Debug.Log("解析成功id为: " + gameEscapeId);
// 触发事件,通知所有订阅者
OnGameEscapeIdUpdated?.Invoke(gameEscapeId);
@ -126,109 +126,3 @@ public class selectGameEscape512 : MonoBehaviour
}
/*public class selectGameEscape512 : MonoBehaviour
{
int gameEscapeId;
void Start()
{
// 由于除登录注册外的其他方法都需要登录后返回的token
// 因此登录不在此发送请求(同时)
// 采用监听和事件回调的方法只有监听到登录和token返回时才运行其他方法
LoginAndGetToken.OnTokenReceived += HandleTokenReceived;
}
void HandleTokenReceived(string token)
{
// 使用 token
Debug.Log("HandleTokenReceived监听:" + token);
StartCoroutine(GameEscapeRoutine(token)); // 启动协程每2秒调用一次gameEscape
}
// 创建一个IEnumerator的协程
IEnumerator GameEscapeRoutine(string token)
{
while (true) // 无限循环来实现每2秒发送一次请求
{
yield return new WaitForSeconds(2f); // 每2秒暂停一次
yield return gameEscape(token); // 调用gameEscape方法
}
}
public async Task gameEscape(string token)
{
// 用来给请求头赋值
string Authorization = token;
Debug.Log("Loding(Authorization)请求头赋值" + Authorization);
// 5.1查询最近一场大屠杀
Dictionary<string, string> head51 = new Dictionary<string, string>
{
{ "Authorization", Authorization }, // 设置授权头
};
string response51 = await web.SendRequest("http://121.40.42.41:8080/snail/gameEscape/queryLatest", "POST", "{}", head51);
Debug.Log("5.1查询最近一场大屠杀(独立)" + response51); // 查询最近一场大逃亡游戏详情:
// 解析JSON数据
string json = response51;
Response response = JsonConvert.DeserializeObject<Response>(json);
if (response != null && response.code == 200 && response.data != null)
{
gameEscapeId = response.data.gameEscapeModel.id;
Debug.Log("解析成功id为: " + gameEscapeId);
}
else
{
Debug.LogError("解析失败或响应错误");
}
}
void OnDestroy()
{
// 取消监听,避免内存泄漏
LoginAndGetToken.OnTokenReceived -= HandleTokenReceived;
}
// Update is called once per frame
void Update()
{
}
[Serializable]
public class GameEscapeModel
{
public int id; // 解析游戏ID
public string gameNo; // 包括游戏编号
}
[Serializable]
public class GameEscapeRoomResponseVo
{
public int escapeId; // 逃脱游戏的ID
public int roomNo; // 房间号
}
[Serializable]
public class Data
{
public int carrySeconds; // 持续秒数
public GameEscapeModel gameEscapeModel; // 嵌套的GameEscapeModel对象
public List<GameEscapeRoomResponseVo> gameEscapeRoomResponseVoList; // 房间信息列表
public object gameEscapeUserModel; // 用户模型,可以保持为空或根据需要进行定义
}
[Serializable]
public class Response
{
public int code; // 状态码
public string message; // 返回信息
public Data data; // 数据对象
}
}*/