You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

207 lines
4.5 KiB

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
namespace Multiplayer
{
public class PlayerMsgID
{
public const short Position = 200;
public const short Rotation = 201;
public const short Lobby = 202;
public const short GameWin = 203;
public const short GameOver = 204;
public const short GameStart = 205;
public const short QueryPosition = 206;
public const short Vegetable = 207;
}
public class PlayerMsg : MessageBase
{
public byte ID;
public PlayerMsg() { }
public PlayerMsg(byte playerID)
{
this.ID = playerID;
}
public override void Serialize(NetworkWriter writer)
{
writer.Write(ID);
}
public override void Deserialize(NetworkReader reader)
{
ID = reader.ReadByte();
}
}
public class VectorMsg : PlayerMsg
{
public Vector3 vector;
public VectorMsg() { }
public VectorMsg(byte PlayerID, Vector3 Vector) : base(PlayerID)
{
this.vector = Vector;
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(vector);
}
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
vector = reader.ReadVector3();
}
}
public class QuaternionMsg : PlayerMsg
{
public Quaternion quaternion;
public QuaternionMsg() { }
public QuaternionMsg(byte PlayerID, Quaternion quaternion) : base(PlayerID)
{
this.quaternion = quaternion;
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(quaternion);
}
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
quaternion = reader.ReadQuaternion();
}
}
public class longMsg : PlayerMsg
{
public long Long;
public longMsg() { }
public longMsg(byte PlayerID, long Long) : base(PlayerID)
{
this.Long = Long;
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(Long);
}
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
Long = reader.ReadInt64();
}
}
public class StringMsg : PlayerMsg
{
public string String;
public StringMsg() { }
public StringMsg(byte PlayerID, string String) : base(PlayerID)
{
this.String = String;
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(String);
}
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
String = reader.ReadString();
}
}
public class VegMsg : PlayerMsg
{
public string String;
public int Int;
public VegMsg() { }
public VegMsg(byte PlayerID, string String, int Int) : base(PlayerID)
{
this.String = String;
this.Int = Int;
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(String);
writer.Write(Int);
}
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
String = reader.ReadString();
Int = reader.ReadInt32();
}
}
public class PlayerDataMsg : PlayerMsg
{
public string Name;
public Color Color;
public PlayerDataMsg() { }
public PlayerDataMsg(byte PlayerID, string Name, Color Color) : base(PlayerID)
{
this.Name = Name;
this.Color = Color;
}
public override void Serialize(NetworkWriter writer)
{
base.Serialize(writer);
writer.Write(Name);
writer.Write(Color);
}
public override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader);
Name = reader.ReadString();
Color = reader.ReadColor();
}
}
}