Просмотр исходного кода

FrameMessage用proto生成,IFrameMessage接口不需要ActorId方法

tanghai 7 лет назад
Родитель
Сommit
5e36ae9dc0

+ 12 - 0
Proto/OuterMessage.proto

@@ -44,6 +44,18 @@ message Actor_CreateUnits // IActorMessage
     repeated UnitInfo Units = 1;
 }
 
+message OneFrameMessage // IActorMessage
+{
+	required uint16 Op = 1;
+	required bytes AMessage = 2;
+}
+
+message FrameMessage // IActorMessage
+{
+	required int32 Frame = 1;
+	repeated OneFrameMessage Messages = 2;
+}
+
 message Frame_ClickMap // IFrameMessage
 {
 	required int32 X = 1;

+ 35 - 2
Server/Model/Module/Message/OuterMessage.cs

@@ -142,9 +142,27 @@ namespace ETModel
 
 	}
 
-	[Message(OuterOpcode.Frame_ClickMap)]
+	[Message(OuterOpcode.OneFrameMessage)]
 	[ProtoContract]
-	public partial class Frame_ClickMap: IFrameMessage
+	public partial class OneFrameMessage: IActorMessage
+	{
+		[ProtoMember(90, IsRequired = true)]
+		public int RpcId { get; set; }
+
+		[ProtoMember(93, IsRequired = true)]
+		public long ActorId { get; set; }
+
+		[ProtoMember(1, IsRequired = true)]
+		public ushort Op;
+
+		[ProtoMember(2, IsRequired = true)]
+		public byte[] AMessage;
+
+	}
+
+	[Message(OuterOpcode.FrameMessage)]
+	[ProtoContract]
+	public partial class FrameMessage: IActorMessage
 	{
 		[ProtoMember(90, IsRequired = true)]
 		public int RpcId { get; set; }
@@ -152,6 +170,21 @@ namespace ETModel
 		[ProtoMember(93, IsRequired = true)]
 		public long ActorId { get; set; }
 
+		[ProtoMember(1, IsRequired = true)]
+		public int Frame;
+
+		[ProtoMember(2)]
+		public List<OneFrameMessage> Messages = new List<OneFrameMessage>();
+
+	}
+
+	[Message(OuterOpcode.Frame_ClickMap)]
+	[ProtoContract]
+	public partial class Frame_ClickMap: IFrameMessage
+	{
+		[ProtoMember(90, IsRequired = true)]
+		public int RpcId { get; set; }
+
 		[ProtoMember(94, IsRequired = true)]
 		public long Id { get; set; }
 

+ 7 - 5
Server/Model/Module/Message/OuterOpcode.cs

@@ -11,10 +11,12 @@ namespace ETModel
 		 public const ushort G2C_EnterMap = 107;
 		 public const ushort UnitInfo = 108;
 		 public const ushort Actor_CreateUnits = 109;
-		 public const ushort Frame_ClickMap = 110;
-		 public const ushort C2M_Reload = 111;
-		 public const ushort M2C_Reload = 112;
-		 public const ushort C2R_Ping = 113;
-		 public const ushort R2C_Ping = 114;
+		 public const ushort OneFrameMessage = 110;
+		 public const ushort FrameMessage = 111;
+		 public const ushort Frame_ClickMap = 112;
+		 public const ushort C2M_Reload = 113;
+		 public const ushort M2C_Reload = 114;
+		 public const ushort C2R_Ping = 115;
+		 public const ushort R2C_Ping = 116;
 	}
 }

+ 0 - 1
Server/Model/Server.Model.csproj

@@ -69,7 +69,6 @@
     <Compile Include="..\..\Unity\Assets\Scripts\Module\Config\ConfigAttribute.cs" Link="Module\Config\ConfigAttribute.cs" />
     <Compile Include="..\..\Unity\Assets\Scripts\Module\Config\ConfigComponent.cs" Link="Module\Config\ConfigComponent.cs" />
     <Compile Include="..\..\Unity\Assets\Scripts\Module\Config\IConfig.cs" Link="Module\Config\IConfig.cs" />
-    <Compile Include="..\..\Unity\Assets\Scripts\Module\FrameSync\FrameMessage.cs" Link="Module\FrameSync\FrameMessage.cs" />
     <Compile Include="..\..\Unity\Assets\Scripts\Module\Message\AMHandler.cs" Link="Module\Message\AMHandler.cs" />
     <Compile Include="..\..\Unity\Assets\Scripts\Module\Message\ErrorCode.cs" Link="Module\Message\ErrorCode.cs" />
     <Compile Include="..\..\Unity\Assets\Scripts\Module\Message\IActorMessage.cs" Link="Module\Message\IActorMessage.cs" />

+ 7 - 1
Unity/Assets/Editor/Proto2CsEditor/Proto2CSEditor.cs

@@ -140,7 +140,7 @@ namespace MyEditor
 						sb.AppendLine("\t\tpublic string Message { get; set; }\n");
 					}
 
-					if (parentClass == "IActorRequest" || parentClass == "IActorMessage" || parentClass == "IFrameMessage")
+					if (parentClass == "IActorRequest" || parentClass == "IActorMessage")
 					{
 						sb.AppendLine("\t\t[ProtoMember(93, IsRequired = true)]");
 						sb.AppendLine("\t\tpublic long ActorId { get; set; }\n");
@@ -281,6 +281,9 @@ namespace MyEditor
 			string typeCs = "";
 			switch (type)
 			{
+				case "int16":
+					typeCs = "short";
+					break;
 				case "int32":
 					typeCs = "int";
 					break;
@@ -299,6 +302,9 @@ namespace MyEditor
 				case "uint64":
 					typeCs = "ulong";
 					break;
+				case "uint16":
+					typeCs = "ushort";
+					break;
 				default:
 					typeCs = type;
 					break;

+ 0 - 37
Unity/Assets/Scripts/Module/FrameSync/FrameMessage.cs

@@ -1,37 +0,0 @@
-using System.Collections.Generic;
-using ProtoBuf;
-
-namespace ETModel
-{
-	[Message(Opcode.OneFrameMessage)]
-	[ProtoContract]
-	public class OneFrameMessage: IActorMessage
-	{
-		[ProtoMember(90)]
-		public int RpcId { get; set; }
-		[ProtoMember(93)]
-		public long ActorId { get; set; }
-
-		[ProtoMember(1, IsRequired = true)]
-		public ushort Op;
-
-		[ProtoMember(2, IsRequired = true)]
-		public byte[] AMessage;
-	}
-
-	[Message(Opcode.FrameMessage)]
-	[ProtoContract]
-	public partial class FrameMessage : IActorMessage
-	{
-		[ProtoMember(90)]
-		public int RpcId { get; set; }
-		[ProtoMember(93)]
-		public long ActorId { get; set; }
-
-		[ProtoMember(1, IsRequired = true)]
-		public int Frame;
-
-		[ProtoMember(2)]
-		public List<OneFrameMessage> Messages = new List<OneFrameMessage>();
-	}
-}

+ 0 - 12
Unity/Assets/Scripts/Module/FrameSync/FrameMessage.cs.meta

@@ -1,12 +0,0 @@
-fileFormatVersion: 2
-guid: 86afd5075954a1d4db4f7affb78b6eba
-timeCreated: 1520238285
-licenseType: Free
-MonoImporter:
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 1 - 1
Unity/Assets/Scripts/Module/Message/IActorMessage.cs

@@ -19,7 +19,7 @@ namespace ETModel
 	}
 
 	[ProtoContract]
-	public interface IFrameMessage : IActorMessage
+	public interface IFrameMessage : IMessage
 	{
 		long Id { get; set; }
 	}

+ 1 - 4
Unity/Assets/Scripts/Module/Message/Opcode.cs

@@ -2,9 +2,6 @@ namespace ETModel
 {
 	public static partial class Opcode
 	{
-		public const ushort ActorRequest = 1;
-		public const ushort ActorResponse = 2;
-		public const ushort FrameMessage = 3;
-		public const ushort OneFrameMessage = 4;
+		public const ushort ActorResponse = 1;
 	}
 }

+ 35 - 2
Unity/Assets/Scripts/Module/Message/OuterMessage.cs

@@ -142,9 +142,27 @@ namespace ETModel
 
 	}
 
-	[Message(OuterOpcode.Frame_ClickMap)]
+	[Message(OuterOpcode.OneFrameMessage)]
 	[ProtoContract]
-	public partial class Frame_ClickMap: IFrameMessage
+	public partial class OneFrameMessage: IActorMessage
+	{
+		[ProtoMember(90, IsRequired = true)]
+		public int RpcId { get; set; }
+
+		[ProtoMember(93, IsRequired = true)]
+		public long ActorId { get; set; }
+
+		[ProtoMember(1, IsRequired = true)]
+		public ushort Op;
+
+		[ProtoMember(2, IsRequired = true)]
+		public byte[] AMessage;
+
+	}
+
+	[Message(OuterOpcode.FrameMessage)]
+	[ProtoContract]
+	public partial class FrameMessage: IActorMessage
 	{
 		[ProtoMember(90, IsRequired = true)]
 		public int RpcId { get; set; }
@@ -152,6 +170,21 @@ namespace ETModel
 		[ProtoMember(93, IsRequired = true)]
 		public long ActorId { get; set; }
 
+		[ProtoMember(1, IsRequired = true)]
+		public int Frame;
+
+		[ProtoMember(2, TypeName = "ETModel.OneFrameMessage")]
+		public List<OneFrameMessage> Messages = new List<OneFrameMessage>();
+
+	}
+
+	[Message(OuterOpcode.Frame_ClickMap)]
+	[ProtoContract]
+	public partial class Frame_ClickMap: IFrameMessage
+	{
+		[ProtoMember(90, IsRequired = true)]
+		public int RpcId { get; set; }
+
 		[ProtoMember(94, IsRequired = true)]
 		public long Id { get; set; }
 

+ 7 - 5
Unity/Assets/Scripts/Module/Message/OuterOpcode.cs

@@ -11,10 +11,12 @@ namespace ETModel
 		 public const ushort G2C_EnterMap = 107;
 		 public const ushort UnitInfo = 108;
 		 public const ushort Actor_CreateUnits = 109;
-		 public const ushort Frame_ClickMap = 110;
-		 public const ushort C2M_Reload = 111;
-		 public const ushort M2C_Reload = 112;
-		 public const ushort C2R_Ping = 113;
-		 public const ushort R2C_Ping = 114;
+		 public const ushort OneFrameMessage = 110;
+		 public const ushort FrameMessage = 111;
+		 public const ushort Frame_ClickMap = 112;
+		 public const ushort C2M_Reload = 113;
+		 public const ushort M2C_Reload = 114;
+		 public const ushort C2R_Ping = 115;
+		 public const ushort R2C_Ping = 116;
 	}
 }

+ 3 - 2
Unity/Assets/ThirdParty/ILRuntime/Editor/ILRuntimeCLRBinding.cs

@@ -34,7 +34,7 @@ public class ILRuntimeCLRBinding
         types.Add(typeof(List<ILRuntime.Runtime.Intepreter.ILTypeInstance>));
 
         ILRuntime.Runtime.CLRBinding.BindingCodeGenerator.GenerateBindingCode(types, "Assets/ThirdParty/ILRuntime/Generated");
-
+		AssetDatabase.Refresh();
     }
 
     [MenuItem("Tools/ILRuntime/Generate CLR Binding Code by Analysis")]
@@ -49,7 +49,8 @@ public class ILRuntimeCLRBinding
         //Crossbind Adapter is needed to generate the correct binding code
         InitILRuntime(domain);
         ILRuntime.Runtime.CLRBinding.BindingCodeGenerator.GenerateBindingCode(domain, "Assets/ThirdParty/ILRuntime/Generated");
-    }
+	    AssetDatabase.Refresh();
+	}
 
     static void InitILRuntime(ILRuntime.Runtime.Enviorment.AppDomain domain)
     {

+ 1 - 1
Unity/Hotfix/Module/Message/IActorMessage.cs

@@ -19,7 +19,7 @@ namespace ETHotfix
 	}
 
 	[ProtoContract]
-	public interface IFrameMessage : IActorMessage
+	public interface IFrameMessage : IMessage
 	{
 		long Id { get; set; }
 	}

+ 7 - 5
Unity/Unity.csproj

@@ -12,12 +12,15 @@
     <ProjectTypeGuids>{E097FAD1-6243-4DAD-9C02-E9B9EFC3FFC1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
     <TargetFrameworkIdentifier>.NETFramework</TargetFrameworkIdentifier>
     <TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
-    <TargetFrameworkProfile></TargetFrameworkProfile>
-    <CompilerResponseFile></CompilerResponseFile>
+    <TargetFrameworkProfile>
+    </TargetFrameworkProfile>
+    <CompilerResponseFile>
+    </CompilerResponseFile>
     <UnityProjectType>Game:1</UnityProjectType>
     <UnityBuildTarget>StandaloneWindows:5</UnityBuildTarget>
     <UnityVersion>2017.1.1p4</UnityVersion>
-    <RootNamespace></RootNamespace>
+    <RootNamespace>
+    </RootNamespace>
     <LangVersion>6</LangVersion>
   </PropertyGroup>
   <PropertyGroup>
@@ -273,7 +276,6 @@
     <Compile Include="Assets\Scripts\Module\FrameSync\AnimatorComponent.cs" />
     <Compile Include="Assets\Scripts\Module\FrameSync\CameraComponent.cs" />
     <Compile Include="Assets\Scripts\Module\FrameSync\ClientFrameComponent.cs" />
-    <Compile Include="Assets\Scripts\Module\FrameSync\FrameMessage.cs" />
     <Compile Include="Assets\Scripts\Module\FrameSync\MoveComponent.cs" />
     <Compile Include="Assets\Scripts\Module\FrameSync\Player.cs" />
     <Compile Include="Assets\Scripts\Module\FrameSync\PlayerComponent.cs" />
@@ -781,4 +783,4 @@
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <Target Name="GenerateTargetFrameworkMonikerAttribute" />
-</Project>
+</Project>