_xiaofang/xiaofang/Assets/comm/test.cs

446 lines
15 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!";
}
2024-11-29 20:05:55 +08:00
//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));
2024-11-23 14:08:04 +08:00
2024-11-29 20:05:55 +08:00
// // <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);
2024-11-23 14:08:04 +08:00
2024-11-29 20:05:55 +08:00
//}
2024-11-23 14:08:04 +08:00
//<2F><>¼
void lodingWebSocket()
{
LoginRequest data = new LoginRequest();
2024-11-29 20:05:55 +08:00
data.UserId = "1845037177556934657";
data.Account = "17311259169";
2024-11-23 14:08:04 +08:00
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);
}
2024-11-29 20:05:55 +08:00
void Location()
{
MoveResponse data = new MoveResponse();
data.RoomId = "168888";
WSMessage msg = new WSMessage();
msg.Module = "move";
msg.ServiceName = "Location";
msg.Data = ByteString.CopyFrom(ProtoBufffer.Serialize(data));
byte[] sendData = ProtoBufffer.Serialize(msg);
WSMessage deinfo = ProtoBufffer.DeSerialize<WSMessage>(sendData);
MoveResponse login = ProtoBufffer.DeSerialize<MoveResponse>(deinfo.Data.ToByteArray());
Debug.Log("<22><><EFBFBD><EFBFBD>npc<70><63><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>Ϣ");
//BroadcastFrameMsg.FramesFieldNumber
wEBScriptListener.SendMessageByte(sendData);
}
2024-11-23 14:08:04 +08:00
// Start is called before the first frame update
async void Start()
2024-11-23 14:08:04 +08:00
{
//loging();
wEBScriptListener.ConcatWEBSocket();
wEBScriptListener.OnCallback += callback;
if (wEBScriptListener != null)
{
//lodingWebSocket();
2024-11-29 20:05:55 +08:00
//JoinRoom();
2024-11-23 14:08:04 +08:00
//Heartbeat();
//BroadcastMessage();
//UpFps();
2024-11-29 20:05:55 +08:00
//PickUpProp();
//StartUseProp();
//StopUseProp();
2024-11-23 14:08:04 +08:00
//RoomStartTime();
2024-11-29 20:05:55 +08:00
//Location();
2024-11-23 14:08:04 +08:00
}
int index = 0;
while (true)
{
index++;
NpcData moveData = new NpcData();
moveData.X = index;
moveData.Y = 1;
moveData.Z = 1;
MoveResponse data = new MoveResponse();
data.MoveData.Add(moveData);
WSResponse ws = new WSResponse();
ws.MessageType = "move.Location";
ws.Data = ByteString.CopyFrom(data.ToByteArray());
callback(ProtoBufffer.Serialize(ws));
//PlayerJoinResponse pj = new PlayerJoinResponse();
//pj.UserName = "abc";
//pj.RoomId = "2";
//pj.Status = 0;
//pj.RoleName = "ABC";
//pj.IsLeadingNPC = 5;
//pj.Online = true;
//pj.RoleId = 7;
//pj.GroupLeader = 0;
//pj.ActionMode = 2;
//pj.Group = -1;
//pj.X = 11;
//pj.Y = 12;
//pj.Z = 13;
//pj.OverseeCond = "14";
//pj.SendFrameCount = 15;
//pj.MoveSpeedFirst = 16;
//pj.MoveSpeedSecond = 17;
//pj.MoveSpeedThird = 18;
//pj.BearLoad = 19;
//pj.Protection = 20;
//pj.Health = 21;
//pj.RoleStatus = 22;
//pj.UserId = 23;
//JoinRoomResponse data = new JoinRoomResponse();
//data.Data = pj;
//WSResponse ws = new WSResponse();
//ws.MessageType = "hall.JoinRoom";
//ws.Data = ByteString.CopyFrom(data.ToByteArray());
//callback(ProtoBufffer.Serialize(ws));
await Task.Delay(1000);
}
2024-11-23 14:08:04 +08:00
}
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":
2024-11-29 20:05:55 +08:00
Debug.Log("-=====--");
2024-11-23 14:08:04 +08:00
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);
Debug.Log(userJoinResponse.IncidentPosition);
2024-11-29 20:05:55 +08:00
Debug.Log(userJoinResponse);
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;
2024-11-29 20:05:55 +08:00
case "move.Location":
Debug.Log("move.Location<6F><6E><EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD>");
MoveResponse moveResponse = ProtoBufffer.DeSerialize<MoveResponse>(bytes);
Debug.Log(moveResponse.MoveData);
NpcData npcData = new NpcData();
npcData = moveResponse.MoveData[0];
RecuseNpc rn = GetComponent<RecuseNpc>();
float x = npcData.X;
float y = npcData.Y;
float z = npcData.Z;
rn.target.transform.position = new Vector3(x,y,z);
2024-11-29 20:05:55 +08:00
break;
2024-11-23 14:08:04 +08:00
//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;
2024-11-23 14:08:04 +08:00
}
}
}