本文主要是介绍ET框架新起一个服务及实现服务之间的消息通讯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ET框架是熊猫大大写的双端框架,游戏客户端和服务端都是用C#语言来编写
新起一个服务名比如叫做Activity
1.配置文件StartSceneConfig
2. SceneFactory
switch (scene.SceneType)
{case SceneType.Activity:break;
}
定义SceneType枚举类型
public enum SceneType: uint
{Activity = 66,
}
3.在InnerMessage.proto文件中定义消息
//ResponseType Activity2Other_Test
message Other2Activity_Test //IActorRequest
{int32 RpcId = 90;string testMessage = 1;
}message Activity2Other_Test // IActorResponse
{int32 RpcId = 90;int32 Error = 91;string Message = 92;string responseMessage = 2;
}
4.导入配置文件和Proto文件
5.发送消息及编写消息的处理类
StartSceneConfig startSceneConfig = StartSceneConfigCategory.Instance.GetBySceneName(unit.DomainZone(), "Activity");
Activity2Other_Test test = (Activity2Other_Test)await ActorMessageSenderComponent.Instance.Call(startSceneConfig.InstanceId, new Other2Activity_Test() { testMessage="12345" });
Log.Debug("###############" + test.responseMessage);
namespace ET.Server
{[ActorMessageHandler(SceneType.Activity)]public class Other2Activity_TestHandler: AMActorRpcHandler<Scene,Other2Activity_Test,Activity2Other_Test>{protected override async ETTask Run(Scene scene, Other2Activity_Test request, Activity2Other_Test response){Log.Debug("%%%%%%%%%%%%$$$$$####@@@@@@@@@@@"+request.testMessage);Log.Debug("&&"+scene.Name);response.responseMessage = "67890";await ETTask.CompletedTask;}}
}
6.打印输出结果
这篇关于ET框架新起一个服务及实现服务之间的消息通讯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!