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

修复actor rpc返回errorcode造成的错误

tanghai 7 лет назад
Родитель
Сommit
9f66a9f097

+ 12 - 11
Server/Hotfix/Module/Actor/ActorMessageSenderSystem.cs

@@ -148,15 +148,6 @@ namespace ETHotfix
 			// 发送成功
 			switch (response.Error)
 			{
-				case ErrorCode.ERR_Success:
-					self.LastSendTime = TimeHelper.Now();
-					self.FailTimes = 0;
-
-					self.WaitingTasks.Dequeue();
-					
-					task.Tcs?.SetResult(response);
-					
-					return;
 				case ErrorCode.ERR_NotFoundActor:
 					// 如果没找到Actor,重试
 					++self.FailTimes;
@@ -179,11 +170,21 @@ namespace ETHotfix
 							.GetComponent<InnerConfig>().IPEndPoint;
 					self.AllowGet();
 					return;
-				default:
-					// 其它错误
+				
+				case ErrorCode.ERR_ActorNoMailBoxComponent:
 					self.Error = response.Error;
 					self.GetParent<ActorMessageSenderComponent>().Remove(self.Id);
 					return;
+				
+				default:
+					self.LastSendTime = TimeHelper.Now();
+					self.FailTimes = 0;
+
+					self.WaitingTasks.Dequeue();
+					
+					task.Tcs?.SetResult(response);
+					
+					return;
 			}
 		}
 

+ 2 - 2
Server/Hotfix/Module/Message/InnerMessageDispatcher.cs

@@ -32,11 +32,11 @@ namespace ETHotfix
 				{
 					ActorResponse response = new ActorResponse
 					{
-						Error = ErrorCode.ERR_ActorNoActorComponent,
+						Error = ErrorCode.ERR_ActorNoMailBoxComponent,
 						RpcId = iActorMessage.RpcId
 					};
 					session.Reply(response);
-					Log.Error($"actor没有挂载ActorComponent组件: {entity.GetType().Name} {entity.Id}");
+					Log.Error($"actor没有挂载MailBoxComponent组件: {entity.GetType().Name} {entity.Id}");
 					return;
 				}
 				

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

@@ -4,7 +4,7 @@ namespace ETModel
 	{
 		public const int ERR_Success = 0;
 		public const int ERR_NotFoundActor = 2;
-		public const int ERR_ActorNoActorComponent = 3;
+		public const int ERR_ActorNoMailBoxComponent = 3;
 		public const int ERR_ActorTimeOut = 4;
 
 		public const int ERR_AccountOrPasswordError = 102;