_xiaofang/xiaofang/Assets/comm/test.cs

349 lines
12 KiB
C#
Raw Normal View History

2024-11-23 14:08:04 +08:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Newtonsoft.Json;
using System.Net.Sockets;
using UnityWebSocket;
using System.Text;
using Google.Protobuf;
using System.Net.WebSockets;
using System;
using System.Threading.Tasks;
public class test : MonoBehaviour
{
public string token;
public WEBScriptListener wEBScriptListener;
public class auth_login
{
public string clientId = "e5cd7e4891bf95d1d19206ce24a7b32e";
public string grantType = "password";
public string userType = "company_user";
public string username = "13699802230";
public string password = "YYL2230!";
}
public async void loging()
{
auth_login auth_Login = new auth_login();
string response = await web.SendRequest(web.URL + "/auth/login", "POST", JsonUtility.ToJson(auth_Login));
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
server serverData = JsonConvert.DeserializeObject<server>(response);
token = serverData.data.access_token;
//Debug.Log(setverData.msg);
}
//<2F><>¼
void lodingWebSocket()
{
LoginRequest data = new LoginRequest();
data.UserId = "1846032755921199105";
data.Account = "13152628999";
WSMessage msg = new WSMessage();
msg.Module = "hall";
msg.ServiceName = "Login";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
LoginRequest login = ProtoBufffer.DeSerialize<LoginRequest>(deinfo.Data.ToByteArray());
Debug.Log("<22><>¼");
wEBScriptListener.SendMessageByte(sendData);
}
//<2F><><EFBFBD>뷿<EFBFBD><EBB7BF>
void JoinRoom()
{
JoinRoomRequest data = new JoinRoomRequest();
data.RoomId = "168888";
WSMessage msg = new WSMessage();
msg.Module = "hall";
msg.ServiceName = "JoinRoom";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
JoinRoomRequest login = ProtoBufffer.DeSerialize<JoinRoomRequest>(deinfo.Data.ToByteArray());
Debug.Log("<22><><EFBFBD>뷿<EFBFBD><EBB7BF>");
//BroadcastFrameMsg.FramesFieldNumber
wEBScriptListener.SendMessageByte(sendData);
}
//void BroadcastMessage()
//{
// WSMessage msg = new WSMessage();
// msg.Module = "hall";
// msg.ServiceName = "BroadcastMessage";
// //msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
// byte[] sendData = ProtoBufffer.Serialize(msg);
// WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
// JoinRoomRequest login = ProtoBufffer.DeSerialize<JoinRoomRequest>(deinfo.Data.ToByteArray());
// Debug.Log("<22><><EFBFBD>뷿<EFBFBD><EBB7BF>");
// //BroadcastFrameMsg.FramesFieldNumber
// wEBScriptListener.SendMessageByte(sendData);
//}
//<2F><><EFBFBD><EFBFBD>
async void Heartbeat()
{
//WSMessage msg = new WSMessage();
//msg.Data = ByteString.CopyFrom(new byte[] { 1 });
//byte[] sendData = ProtoBufffer.Serialize(msg);
//Debug.Log("");
while (true)
{
WSMessage msg = new WSMessage();
msg.Module = "ping";
//msg.Data = ByteString.CopyFrom(new byte[] { 1 });
byte[] sendData = ProtoBufffer.Serialize(msg);
// ÿ<><C3BF>ִ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
Debug.Log("ÿ<><C3BF>ִ<EFBFBD><D6B4>һ<EFBFBD><D2BB>");
wEBScriptListener.SendMessageByte(sendData);
// <20>ȴ<EFBFBD>һ<EFBFBD><D2BB>
await Task.Delay(1000);
}
}
//֡<><EFBFBD><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//void UpFps()
//{
// InputData data = new InputData();
// data.RoomId = "168888";
// data.Id = "778899";
// data.SId = "7";
// data.X = 7f;
// data.Y = 5f;
// data.Z = 4f;
// data.RoomSeatId = 5;
// WSMessage msg = new WSMessage();
// msg.Module = "fps";
// msg.ServiceName = "UpFps";
// msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
// byte[] sendData = ProtoBufffer.Serialize(msg);
// WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
// InputData login = ProtoBufffer.DeSerialize<InputData>(deinfo.Data.ToByteArray());
// Debug.Log("֡<><EFBFBD><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
// //BroadcastFrameMsg.FramesFieldNumber
// wEBScriptListener.SendMessageByte(sendData);
//}
//ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD>
void PickUpProp()
{
PropRequest data = new PropRequest();
data.PropId = 1001;
data.RoomId = "168888";
WSMessage msg = new WSMessage();
msg.Module = "prop";
msg.ServiceName = "PickUpProp";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
PropRequest login = ProtoBufffer.DeSerialize<PropRequest>(deinfo.Data.ToByteArray());
Debug.Log("ʰȡ<CAB0><C8A1><EFBFBD><EFBFBD>");
//BroadcastFrameMsg.FramesFieldNumber
wEBScriptListener.SendMessageByte(sendData);
}
//ʹ<>õ<EFBFBD><C3B5><EFBFBD>
void StartUseProp()
{
PropRequest data = new PropRequest();
data.RoomId = "168888";
data.PropId = 1001;
data.Action = 1;
data.PropServerId = "MTg1OTc5MDMwOTIyODc4OTc2MA==";
WSMessage msg = new WSMessage();
msg.Module = "prop";
msg.ServiceName = "StartUseProp";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
PropRequest login = ProtoBufffer.DeSerialize<PropRequest>(deinfo.Data.ToByteArray());
Debug.Log("ʹ<>õ<EFBFBD><C3B5><EFBFBD>");
//BroadcastFrameMsg.FramesFieldNumber
wEBScriptListener.SendMessageByte(sendData);
}
//ֹͣʹ<D6B9>õ<EFBFBD><C3B5><EFBFBD>
void StopUseProp()
{
PropRequest data = new PropRequest();
data.RoomId = "168888";
data.PropId = 1001;
data.PropServerId = "MTg1OTc5MDMwOTIyODc4OTc2MA==";
WSMessage msg = new WSMessage();
msg.Module = "prop";
msg.ServiceName = "StopUseProp";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
PropRequest login = ProtoBufffer.DeSerialize<PropRequest>(deinfo.Data.ToByteArray());
Debug.Log("ֹͣʹ<D6B9>õ<EFBFBD><C3B5><EFBFBD>");
//BroadcastFrameMsg.FramesFieldNumber
wEBScriptListener.SendMessageByte(sendData);
}
//<2F><><EFBFBD><EFBFBD>NPC ========================<3D><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ҫ
//void CreateNpc()
//{
// PropRequest data = new PropRequest();
// data.RoomId = "168888";
// WSMessage msg = new WSMessage();
// msg.Module = "move";
// msg.ServiceName = "CreateNpc";
// msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
// byte[] sendData = ProtoBufffer.Serialize(msg);
// WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
// PropRequest login = ProtoBufffer.DeSerialize<PropRequest>(deinfo.Data.ToByteArray());
// Debug.Log("<22><><EFBFBD><EFBFBD>NPC");
// //BroadcastFrameMsg.FramesFieldNumber
// wEBScriptListener.SendMessageByte(sendData);
//}
//<2F><><EFBFBD><EFBFBD>npc<70><63><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>Ϣ ===============ֻ<><D6BB>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>Ϣ
//void Location()
//{
// PropRequest data = new PropRequest();
// data.RoomId = "168888";
// WSMessage msg = new WSMessage();
// msg.Module = "prop";
// msg.ServiceName = "CreateNpc";
// msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
// byte[] sendData = ProtoBufffer.Serialize(msg);
// WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
// PropRequest login = ProtoBufffer.DeSerialize<PropRequest>(deinfo.Data.ToByteArray());
// Debug.Log("<22><><EFBFBD><EFBFBD>npc<70><63><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>Ϣ");
// //BroadcastFrameMsg.FramesFieldNumber
// wEBScriptListener.SendMessageByte(sendData);
//}
//<2F><>ʼ<EFBFBD><CABC>ʱ
void RoomStartTime()
{
JoinRoomRequest data = new JoinRoomRequest();
data.RoomId = "168888";
WSMessage msg = new WSMessage();
msg.Module = "hall";
msg.ServiceName = "RoomStartTime";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
JoinRoomRequest login = ProtoBufffer.DeSerialize<JoinRoomRequest>(deinfo.Data.ToByteArray());
Debug.Log("<22><><EFBFBD><EFBFBD>npc<70><63><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>Ϣ");
//BroadcastFrameMsg.FramesFieldNumber
wEBScriptListener.SendMessageByte(sendData);
}
// Start is called before the first frame update
void Start()
{
//loging();
wEBScriptListener.ConcatWEBSocket();
wEBScriptListener.OnCallback += callback;
if (wEBScriptListener != null)
{
lodingWebSocket();
JoinRoom();
//Heartbeat();
//BroadcastMessage();
//UpFps();
PickUpProp();
StartUseProp();
StopUseProp();
//RoomStartTime();
}
}
void callback(byte[] data)
{
WSResponse deinfo = ProtoBufffer.DeSerialize<WSResponse>(data);
Debug.Log("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:"+deinfo.MessageType);
byte[] bytes = deinfo.Data.ToByteArray();
switch (deinfo.MessageType)
{
//<2F><><EFBFBD><EFBFBD>
//<2F><>¼
case "hall.Login":
LoginResponse user = ProtoBufffer.DeSerialize<LoginResponse>(bytes);
Debug.Log(user.Message);
break;
//<2F><><EFBFBD>뷿<EFBFBD><EBB7BF>
case "hall.JoinRoom":
JoinRoomResponse joinRoomResponse = ProtoBufffer.DeSerialize<JoinRoomResponse>(bytes);
byte[] joinByte = joinRoomResponse.Data.ToByteArray();
PlayerJoinResponse playerJoinResponse = ProtoBufffer.DeSerialize<PlayerJoinResponse>(joinByte);
Debug.Log("<22><><EFBFBD>ң<EFBFBD>"+playerJoinResponse.UserName+"<22><><EFBFBD>뷿<EFBFBD><EBB7BF>:"+playerJoinResponse.RoomId.ToString());
break;
//<2F>
case "hall.BroadcastMessage":
UserJoinResponse userJoinResponse = ProtoBufffer.DeSerialize<UserJoinResponse>(bytes);
Debug.Log("<22><><EFBFBD><EFBFBD><EFBFBD>dzƣ<C7B3>" + userJoinResponse.NickName + ",<2C><><EFBFBD><EFBFBD>:" + userJoinResponse.RoomId.ToString() + "<22><><EFBFBD>û<EFBFBD><C3BB><EFBFBD>ɫ"+ userJoinResponse.RoleName);
2024-11-29 15:22:51 +08:00
2024-11-23 14:08:04 +08:00
break;
//
case "fps.UpFps":
InputData inputData = ProtoBufffer.DeSerialize<InputData>(bytes);
Debug.Log("Id<49><64>" + inputData.Id + ",sId :" + inputData.SId + "<22><>X:"+ inputData.X.ToString() + "<22><>Y:" + inputData.Y.ToString() + "<22><>roomSeatId :" + inputData.RoomSeatId + "<22><>z:" + inputData.Z.ToString() + "<22><>roomId:" + inputData.RoomId);
break;
case "prop.PickUpProp":
PropRequest propRequest = ProtoBufffer.DeSerialize<PropRequest>(bytes);
Debug.Log("PropId:" + propRequest.PropId);
break;
case "prop.StartUseProp":
PropResponse useProp = ProtoBufffer.DeSerialize<PropResponse>(bytes);
Debug.Log("PropId:" + useProp);
break;
case "prop.StopUseProp":
PropResponse stopuseProp = ProtoBufffer.DeSerialize<PropResponse>(bytes);
Debug.Log("PropId:" + stopuseProp);
break;
//case "prop.CreateNpc":
// MoveResponse moveResponse = ProtoBufffer.DeSerialize<MoveResponse>(bytes);
// Debug.Log("UserId:" + moveResponse.UserId + "<22><>RoomId:" + moveResponse.RoomId + "<22><>x:" + moveResponse.MoveData);
// break;
//case "hall.RoomStartTime":
// JoinRoomRequest joinRoomRequest = ProtoBufffer.DeSerialize<JoinRoomRequest>(bytes);
// Debug.Log("PropId:" + joinRoomRequest.RoomId);
// break;
//case " hall.MessageToUser":
// //JoinRoomRequest joinRoomRequest = ProtoBufffer.DeSerialize<JoinRoomRequest>(bytes);
// //Debug.Log("PropId:" + joinRoomRequest.RoomId);
// break;
}
}
}