From 4d9a185be5876d48c28b4b734553fc9b01dae168 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Thu, 19 Nov 2020 20:33:41 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B7=A8=E6=9C=8D=E6=9C=8D=E5=8A=A1=E5=99=A8?= =?UTF-8?q?=E9=80=9A=E4=BF=A1=E5=88=9D=E7=89=88=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gamecommon/build.gradle | 17 +- .../java/rpc/net/GlobalProtocolsManager.java | 16 +- .../src/main/java/rpc/net/RpcMessage.java | 10 + ...tGBaseHandler.java => gtGBaseHandler.java} | 20 +- .../main/java/rpc/protocols/CommonProto.java | 575 ++++++++++++------ .../com/global/GlobalServerApplication.java | 12 +- .../java/com/global/config/CoreSettings.java | 20 + .../handler/GetWorldServerRequestHandler.java | 12 +- .../global/thrift/pool/GlobalRpcService.java | 4 +- .../world/thrift/idl/RPCgTwRequestIFace.java | 41 -- .../src/main/resources/application.properties | 5 +- .../main/java/com/ljsd/GameLogicService.java | 2 +- .../gtG/GetWorldServerResponseHandler.java | 5 +- .../network/server/GlobalidHelper.java | 4 +- .../jieling/network/server/WorldHelper.java | 16 +- .../jieling/thrift/pool/ClientAdapterPo.java | 5 +- .../jieling/thrift/pool/ThriftFactory.java | 8 +- .../jieling/thrift/pool/ThriftPoolUtils.java | 1 - .../com/world/WorldServerApplication.java | 13 +- ...ConfigurableApplicationContextManager.java | 2 +- .../GetWorldArenaInfoRequestHandler.java | 4 +- .../thrift/idl/pool/WorldRpcService.java | 5 +- .../src/main/resources/application.properties | 2 +- 23 files changed, 515 insertions(+), 284 deletions(-) rename gamecommon/src/main/java/rpc/net/{_gtGBaseHandler.java => gtGBaseHandler.java} (75%) delete mode 100644 globalidserver/src/main/java/com/world/thrift/idl/RPCgTwRequestIFace.java diff --git a/gamecommon/build.gradle b/gamecommon/build.gradle index fc4dd47a8..5156ab663 100644 --- a/gamecommon/build.gradle +++ b/gamecommon/build.gradle @@ -2,7 +2,8 @@ plugins { id 'java' } -group 'com.ljsd' +group 'com.gamecommon' +version '1.0.0-SNAPSHOT' sourceCompatibility = 1.8 @@ -19,4 +20,18 @@ dependencies { } jar { baseName = 'gamecommon' +} +//依赖编译,然后打包JAR +task taskJar(type:Jar, dependsOn: compileJava) { + from 'build/classes/main' + destinationDir = file('build/libs') +} +//删除lib中的jar +task clearJars(type:Delete){ + delete 'lib' +} + +task copyJars(type: Copy, dependsOn:clearJars) { + from configurations.runtime + into 'lib' // 目标位置 } \ No newline at end of file diff --git a/gamecommon/src/main/java/rpc/net/GlobalProtocolsManager.java b/gamecommon/src/main/java/rpc/net/GlobalProtocolsManager.java index 5ede013bc..81532b06c 100644 --- a/gamecommon/src/main/java/rpc/net/GlobalProtocolsManager.java +++ b/gamecommon/src/main/java/rpc/net/GlobalProtocolsManager.java @@ -19,28 +19,28 @@ import java.util.Map; public abstract class GlobalProtocolsManager { public static final Logger LOGGER = LoggerFactory.getLogger(GlobalProtocolsManager.class); - private static Map handlers = new HashMap<>(); + private static Map handlers = new HashMap<>(); - public static void initHandler(String pck) { + public static void initHandler(String pck,ClassLoader classLoader) { List> handlers = new LinkedList<>(); try { try { - ClassLoaderHelper.findLocalClass(pck, _gtGBaseHandler.class, Thread.currentThread().getContextClassLoader(), handlers); + ClassLoaderHelper.findLocalClass(pck, gtGBaseHandler.class, classLoader, handlers); } catch (RuntimeException e) { LOGGER.info("request unknow RuntimeException {} ", ErrorPrintUtil.getExceptionStackTraceFileLineAndMethod(e)); } try { - ClassLoaderHelper.findClassJar(pck, _gtGBaseHandler.class, Thread.currentThread().getContextClassLoader(), handlers); + ClassLoaderHelper.findClassJar(pck, gtGBaseHandler.class,classLoader, handlers); } catch (RuntimeException e) { LOGGER.info("request unknow RuntimeException {} ", ErrorPrintUtil.getExceptionStackTraceFileLineAndMethod(e)); } handlers.forEach(hand -> { - _gtGBaseHandler baseHandler = null; + gtGBaseHandler baseHandler = null; try { - baseHandler = (_gtGBaseHandler) hand.newInstance(); + baseHandler = (gtGBaseHandler) hand.newInstance(); } catch (Exception ex) { LOGGER.info("request unknow Exception {} ", ErrorPrintUtil.getExceptionStackTraceFileLineAndMethod(ex)); } @@ -65,7 +65,7 @@ public abstract class GlobalProtocolsManager { } - private static void addHandler(_gtGBaseHandler handler) { + private static void addHandler(gtGBaseHandler handler) { String simpleName = handler.getClass().getSimpleName(); int index = simpleName.indexOf("Handler"); if (index != -1) { @@ -81,7 +81,7 @@ public abstract class GlobalProtocolsManager { } - protected static Map getHandlers() { + protected static Map getHandlers() { return handlers; } } diff --git a/gamecommon/src/main/java/rpc/net/RpcMessage.java b/gamecommon/src/main/java/rpc/net/RpcMessage.java index ac7845f71..4f9372bae 100644 --- a/gamecommon/src/main/java/rpc/net/RpcMessage.java +++ b/gamecommon/src/main/java/rpc/net/RpcMessage.java @@ -41,4 +41,14 @@ public class RpcMessage { public ByteBuffer getMessage() { return message; } + + @Override + public String toString() { + return "RpcMessage{" + + "serverId=" + serverId + + ", uid=" + uid + + ", protpId=" + protpId + + ", message=" + message + + '}'; + } } diff --git a/gamecommon/src/main/java/rpc/net/_gtGBaseHandler.java b/gamecommon/src/main/java/rpc/net/gtGBaseHandler.java similarity index 75% rename from gamecommon/src/main/java/rpc/net/_gtGBaseHandler.java rename to gamecommon/src/main/java/rpc/net/gtGBaseHandler.java index 4aead89da..cd4fc27e0 100644 --- a/gamecommon/src/main/java/rpc/net/_gtGBaseHandler.java +++ b/gamecommon/src/main/java/rpc/net/gtGBaseHandler.java @@ -4,6 +4,7 @@ import com.google.protobuf.GeneratedMessage; import com.google.protobuf.Parser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import rpc.protocols.MessageTypeProto; import java.lang.reflect.Field; import java.lang.reflect.ParameterizedType; @@ -14,12 +15,12 @@ import java.nio.ByteBuffer; * Author: zsx * CreateDate: 2020/11/18 21:12 */ -public abstract class _gtGBaseHandler { +public abstract class gtGBaseHandler { private Class protoClazz; - public static final Logger LOGGER = LoggerFactory.getLogger(_gtGBaseHandler.class); + public static final Logger LOGGER = LoggerFactory.getLogger(gtGBaseHandler.class); - public _gtGBaseHandler() { + public gtGBaseHandler() { getTClassIsNull(); } @@ -30,7 +31,18 @@ public abstract class _gtGBaseHandler { if(generatedMessage==null){ return null; } - return new RpcMessage(rpc.getServerId(), rpc.getProtpId(), ByteBuffer.wrap(generatedMessage.toByteArray())); + return new RpcMessage(rpc.getServerId(), getProtoIdBySimpleName(generatedMessage.getClass().getSimpleName()), ByteBuffer.wrap(generatedMessage.toByteArray())); + } + + public static int getProtoIdBySimpleName(String name){ + try { + MessageTypeProto.MessageType messageType = MessageTypeProto.MessageType.valueOf(name); + return messageType.getNumber(); + }catch (IllegalArgumentException e){ + return 0; + } + + } @SuppressWarnings("unchecked") diff --git a/gamecommon/src/main/java/rpc/protocols/CommonProto.java b/gamecommon/src/main/java/rpc/protocols/CommonProto.java index 8841c9049..4dbe7aba3 100644 --- a/gamecommon/src/main/java/rpc/protocols/CommonProto.java +++ b/gamecommon/src/main/java/rpc/protocols/CommonProto.java @@ -33814,6 +33814,26 @@ public final class CommonProto { * optional int32 headFrame = 8; */ int getHeadFrame(); + + // optional int32 serverId = 9; + /** + * optional int32 serverId = 9; + */ + boolean hasServerId(); + /** + * optional int32 serverId = 9; + */ + int getServerId(); + + // optional int32 worshipTime = 10; + /** + * optional int32 worshipTime = 10; + */ + boolean hasWorshipTime(); + /** + * optional int32 worshipTime = 10; + */ + int getWorshipTime(); } /** * Protobuf type {@code rpc.protocols.ArenaPersonInfo} @@ -33906,6 +33926,16 @@ public final class CommonProto { headFrame_ = input.readInt32(); break; } + case 72: { + bitField0_ |= 0x00000100; + serverId_ = input.readInt32(); + break; + } + case 80: { + bitField0_ |= 0x00000200; + worshipTime_ = input.readInt32(); + break; + } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { @@ -34109,6 +34139,38 @@ public final class CommonProto { return headFrame_; } + // optional int32 serverId = 9; + public static final int SERVERID_FIELD_NUMBER = 9; + private int serverId_; + /** + * optional int32 serverId = 9; + */ + public boolean hasServerId() { + return ((bitField0_ & 0x00000100) == 0x00000100); + } + /** + * optional int32 serverId = 9; + */ + public int getServerId() { + return serverId_; + } + + // optional int32 worshipTime = 10; + public static final int WORSHIPTIME_FIELD_NUMBER = 10; + private int worshipTime_; + /** + * optional int32 worshipTime = 10; + */ + public boolean hasWorshipTime() { + return ((bitField0_ & 0x00000200) == 0x00000200); + } + /** + * optional int32 worshipTime = 10; + */ + public int getWorshipTime() { + return worshipTime_; + } + private void initFields() { uid_ = 0; level_ = 0; @@ -34118,6 +34180,8 @@ public final class CommonProto { rank_ = 0; totalForce_ = 0; headFrame_ = 0; + serverId_ = 0; + worshipTime_ = 0; } private byte memoizedIsInitialized = -1; public final boolean isInitialized() { @@ -34155,6 +34219,12 @@ public final class CommonProto { if (((bitField0_ & 0x00000080) == 0x00000080)) { output.writeInt32(8, headFrame_); } + if (((bitField0_ & 0x00000100) == 0x00000100)) { + output.writeInt32(9, serverId_); + } + if (((bitField0_ & 0x00000200) == 0x00000200)) { + output.writeInt32(10, worshipTime_); + } getUnknownFields().writeTo(output); } @@ -34196,6 +34266,14 @@ public final class CommonProto { size += com.google.protobuf.CodedOutputStream .computeInt32Size(8, headFrame_); } + if (((bitField0_ & 0x00000100) == 0x00000100)) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(9, serverId_); + } + if (((bitField0_ & 0x00000200) == 0x00000200)) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(10, worshipTime_); + } size += getUnknownFields().getSerializedSize(); memoizedSerializedSize = size; return size; @@ -34328,6 +34406,10 @@ public final class CommonProto { bitField0_ = (bitField0_ & ~0x00000040); headFrame_ = 0; bitField0_ = (bitField0_ & ~0x00000080); + serverId_ = 0; + bitField0_ = (bitField0_ & ~0x00000100); + worshipTime_ = 0; + bitField0_ = (bitField0_ & ~0x00000200); return this; } @@ -34388,6 +34470,14 @@ public final class CommonProto { to_bitField0_ |= 0x00000080; } result.headFrame_ = headFrame_; + if (((from_bitField0_ & 0x00000100) == 0x00000100)) { + to_bitField0_ |= 0x00000100; + } + result.serverId_ = serverId_; + if (((from_bitField0_ & 0x00000200) == 0x00000200)) { + to_bitField0_ |= 0x00000200; + } + result.worshipTime_ = worshipTime_; result.bitField0_ = to_bitField0_; onBuilt(); return result; @@ -34430,6 +34520,12 @@ public final class CommonProto { if (other.hasHeadFrame()) { setHeadFrame(other.getHeadFrame()); } + if (other.hasServerId()) { + setServerId(other.getServerId()); + } + if (other.hasWorshipTime()) { + setWorshipTime(other.getWorshipTime()); + } this.mergeUnknownFields(other.getUnknownFields()); return this; } @@ -34778,6 +34874,72 @@ public final class CommonProto { return this; } + // optional int32 serverId = 9; + private int serverId_ ; + /** + * optional int32 serverId = 9; + */ + public boolean hasServerId() { + return ((bitField0_ & 0x00000100) == 0x00000100); + } + /** + * optional int32 serverId = 9; + */ + public int getServerId() { + return serverId_; + } + /** + * optional int32 serverId = 9; + */ + public Builder setServerId(int value) { + bitField0_ |= 0x00000100; + serverId_ = value; + onChanged(); + return this; + } + /** + * optional int32 serverId = 9; + */ + public Builder clearServerId() { + bitField0_ = (bitField0_ & ~0x00000100); + serverId_ = 0; + onChanged(); + return this; + } + + // optional int32 worshipTime = 10; + private int worshipTime_ ; + /** + * optional int32 worshipTime = 10; + */ + public boolean hasWorshipTime() { + return ((bitField0_ & 0x00000200) == 0x00000200); + } + /** + * optional int32 worshipTime = 10; + */ + public int getWorshipTime() { + return worshipTime_; + } + /** + * optional int32 worshipTime = 10; + */ + public Builder setWorshipTime(int value) { + bitField0_ |= 0x00000200; + worshipTime_ = value; + onChanged(); + return this; + } + /** + * optional int32 worshipTime = 10; + */ + public Builder clearWorshipTime() { + bitField0_ = (bitField0_ & ~0x00000200); + worshipTime_ = 0; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:rpc.protocols.ArenaPersonInfo) } @@ -36043,10 +36205,18 @@ public final class CommonProto { // optional int32 score = 3; /** * optional int32 score = 3; + * + *
+     *跨服排名 -1 
+     * 
*/ boolean hasScore(); /** * optional int32 score = 3; + * + *
+     *跨服排名 -1 
+     * 
*/ int getScore(); @@ -36287,12 +36457,20 @@ public final class CommonProto { private int score_; /** * optional int32 score = 3; + * + *
+     *跨服排名 -1 
+     * 
*/ public boolean hasScore() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional int32 score = 3; + * + *
+     *跨服排名 -1 
+     * 
*/ public int getScore() { return score_; @@ -36788,18 +36966,30 @@ public final class CommonProto { private int score_ ; /** * optional int32 score = 3; + * + *
+       *跨服排名 -1 
+       * 
*/ public boolean hasScore() { return ((bitField0_ & 0x00000004) == 0x00000004); } /** * optional int32 score = 3; + * + *
+       *跨服排名 -1 
+       * 
*/ public int getScore() { return score_; } /** * optional int32 score = 3; + * + *
+       *跨服排名 -1 
+       * 
*/ public Builder setScore(int value) { bitField0_ |= 0x00000004; @@ -36809,6 +36999,10 @@ public final class CommonProto { } /** * optional int32 score = 3; + * + *
+       *跨服排名 -1 
+       * 
*/ public Builder clearScore() { bitField0_ = (bitField0_ & ~0x00000004); @@ -100082,198 +100276,199 @@ public final class CommonProto { "reallyOpen\030\004 \001(\005\032A\n\013MissionInfo\022\021\n\tmissi" + "onId\030\001 \002(\005\022\020\n\010progress\030\002 \002(\005\022\r\n\005state\030\003 " + "\002(\005\"=\n\nGmResponse\022!\n\004drop\030\001 \001(\0132\023.rpc.pr" + - "otocols.Drop\022\014\n\004info\030\002 \001(\t\"\215\001\n\017ArenaPers" + + "otocols.Drop\022\014\n\004info\030\002 \001(\t\"\264\001\n\017ArenaPers" + "onInfo\022\013\n\003uid\030\001 \001(\005\022\r\n\005level\030\002 \001(\005\022\014\n\004na" + "me\030\003 \001(\t\022\r\n\005score\030\004 \001(\005\022\014\n\004head\030\005 \001(\005\022\014\n" + "\004rank\030\006 \001(\005\022\022\n\ntotalForce\030\007 \001(\005\022\021\n\theadF" + - "rame\030\010 \001(\005\"\027\n\004Team\022\017\n\007heroTid\030\001 \003(\005\"c\n\nA" + - "renaEnemy\0222\n\npersonInfo\030\001 \001(\0132\036.rpc.prot" + - "ocols.ArenaPersonInfo\022!\n\004team\030\002 \001(\0132\023.rp", - "c.protocols.Team\"\205\001\n\tArenaInfo\022\020\n\010failNu" + - "ms\030\001 \001(\005\022\023\n\013successNums\030\002 \001(\005\022\r\n\005score\030\003" + - " \001(\005\022.\n\013arenaEnemys\030\004 \003(\0132\031.rpc.protocol" + - "s.ArenaEnemy\022\022\n\nhadTakeBox\030\005 \003(\005\"\'\n\tStor" + - "eItem\022\n\n\002id\030\001 \001(\005\022\016\n\006buyNum\030\002 \001(\005\"\201\001\n\tSt" + - "oreInfo\022\n\n\002id\030\001 \001(\005\022\027\n\017lastRefreshTime\030\002" + - " \001(\003\022\021\n\tstartTime\030\004 \001(\003\022\017\n\007endTime\030\005 \001(\003" + - "\022+\n\tstoreItem\030\006 \003(\0132\030.rpc.protocols.Stor" + - "eItem\"\221\001\n\017ArenaRecordInfo\022\n\n\002id\030\001 \001(\t\0222\n" + - "\nattackInfo\030\002 \001(\0132\036.rpc.protocols.ArenaP", - "ersonInfo\022\022\n\nattackTime\030\003 \001(\005\022\025\n\rmyScore" + - "Change\030\004 \001(\005\022\023\n\013fightResult\030\005 \001(\005\"Z\n\016Fun" + - "ctionOfTime\022\022\n\nfunctionId\030\001 \001(\005\022\021\n\tstart" + - "Time\030\002 \001(\005\022\017\n\007endTime\030\003 \001(\005\022\020\n\010interval\030" + - "\004 \001(\005\"~\n\025AdventureRankItemInfo\022\r\n\005level\030" + - "\001 \001(\005\022\014\n\004name\030\002 \001(\t\022\014\n\004hurt\030\003 \001(\005\022\014\n\004hea" + - "d\030\004 \001(\005\022\014\n\004rank\030\005 \001(\005\022\021\n\theadFrame\030\006 \001(\005" + - "\022\013\n\003uid\030\007 \001(\005\"\313\001\n\021AdventureBossInfo\022\017\n\007a" + - "renaId\030\001 \001(\005\022\017\n\007findUid\030\002 \001(\005\022\020\n\010findNam" + - "e\030\003 \001(\t\022\016\n\006bossId\030\004 \001(\t\022\023\n\013bossGroupId\030\005", - " \001(\005\022\016\n\006myHurt\030\006 \001(\005\022\021\n\tlevelTime\030\007 \001(\005\022" + - "\017\n\007totalHp\030\010 \001(\005\022\025\n\rbossRemainlHp\030\t \001(\005\022" + - "\022\n\narenaLevel\030\n \001(\005\"v\n\017UserMissionInfo\022\021" + - "\n\tmissionId\030\001 \001(\005\022\020\n\010progress\030\002 \001(\005\022\r\n\005s" + - "tate\030\003 \001(\005\022\014\n\004type\030\004 \001(\005\022\021\n\ttakeTimes\030\005 " + - "\001(\005\022\016\n\006heroId\030\006 \003(\t\"8\n\013VipBaseInfo\022\020\n\010vi" + - "pLevel\030\001 \001(\005\022\027\n\017hadTakeLevelBox\030\002 \001(\005\"\250\001" + - "\n\006Friend\022\n\n\002id\030\001 \001(\005\022\014\n\004name\030\002 \001(\t\022\n\n\002lv" + - "\030\003 \001(\005\022\023\n\013offLineTime\030\004 \001(\004\022\022\n\nhaveRewar" + - "d\030\005 \001(\005\022\016\n\006isGive\030\006 \001(\005\022\021\n\tisApplyed\030\007 \001", - "(\005\022\014\n\004head\030\014 \001(\005\022\r\n\005frame\030\r \001(\005\022\017\n\007soulV" + - "al\030\016 \001(\005\"o\n\rGiftGoodsInfo\022\017\n\007goodsId\030\001 \001" + - "(\005\022\020\n\010buyTimes\030\002 \001(\005\022\021\n\tstartTime\030\003 \001(\005\022" + - "\017\n\007endTime\030\004 \001(\005\022\027\n\017dynamicBuyTimes\030\005 \001(" + - "\005\"7\n\021GoodsTypeDuration\022\021\n\tgoodsType\030\001 \001(" + - "\005\022\017\n\007endTime\030\002 \001(\005\"/\n\016TechnologyInfo\022\016\n\006" + - "techId\030\001 \001(\005\022\r\n\005levle\030\002 \001(\005\"J\n\020SuddenlyB" + - "ossInfo\022\022\n\nsuddBossId\030\006 \001(\005\022\017\n\007endTime\030\007" + - " \001(\005\022\021\n\tfindMapId\030\010 \001(\005\"H\n\010ItemInfo\022\022\n\nt" + - "emplateId\030\001 \001(\005\022\017\n\007overlap\030\002 \001(\005\022\027\n\017next", - "RefreshTime\030\003 \001(\005\"H\n\010RankInfo\022\014\n\004rank\030\001 " + - "\001(\005\022\016\n\006param1\030\002 \001(\003\022\016\n\006param2\030\003 \001(\005\022\016\n\006p" + - "aram3\030\004 \001(\005\"\306\001\n\010UserRank\022\013\n\003uid\030\001 \001(\005\022\r\n" + - "\005level\030\002 \001(\005\022\014\n\004head\030\003 \001(\005\022\020\n\010userName\030\004" + - " \001(\t\022)\n\010rankInfo\030\005 \001(\0132\027.rpc.protocols.R" + - "ankInfo\022\021\n\theadFrame\030\006 \001(\005\022\021\n\tguildName\030" + - "\007 \001(\t\022\r\n\005force\030\010 \001(\005\022\021\n\tguildSign\030\t \001(\005\022" + - "\013\n\003sex\030\n \001(\005\"\204\001\n\025ActorEffectBufferInfo\022\n" + - "\n\002id\030\001 \001(\005\022\014\n\004type\030\002 \001(\005\022\021\n\tstartTime\030\003 " + - "\001(\005\022\017\n\007endTime\030\004 \001(\005\022\016\n\006target\030\005 \001(\005\022\016\n\006", - "caster\030\006 \001(\005\022\r\n\005value\030\007 \003(\005\"T\n\016BloodyHer" + - "oInfo\022\016\n\006heroId\030\001 \001(\t\022\016\n\006heroHp\030\002 \001(\005\022\021\n" + - "\theroMaxHp\030\003 \001(\005\022\017\n\007heroTid\030\004 \001(\005\"%\n\010Sce" + - "neMsg\022\014\n\004time\030\001 \001(\005\022\013\n\003msg\030\002 \001(\t\"\'\n\nPosM" + - "ineral\022\013\n\003pos\030\001 \001(\005\022\014\n\004nums\030\002 \001(\005\"\247\001\n\010Cr" + - "eature\022\014\n\004path\030\001 \003(\005\022\r\n\005speed\030\002 \001(\005\022\r\n\005m" + - "axHp\030\003 \001(\005\022\r\n\005curHp\030\004 \001(\005\022\017\n\007mineral\030\005 \001" + - "(\005\022\014\n\004camp\030\006 \001(\005\022/\n\010heroInfo\030\007 \003(\0132\035.rpc" + - ".protocols.BloodyHeroInfo\022\020\n\010killNums\030\010 " + - "\001(\005\"\202\001\n\nSceneActor\022\n\n\002id\030\001 \001(\005\022\016\n\006curPos", - "\030\002 \001(\005\022\r\n\005state\030\003 \001(\005\022\014\n\004type\030\004 \001(\005\022)\n\010C" + - "reature\030\006 \001(\0132\027.rpc.protocols.Creature\022\020" + - "\n\010userName\030\007 \001(\t\"\367\001\n\tSceneInfo\022\016\n\006roomId" + - "\030\001 \001(\005\022\r\n\005mapId\030\002 \001(\005\022-\n\nSceneActor\030\003 \003(" + - "\0132\031.rpc.protocols.SceneActor\022C\n\025actorEff" + - "ectBufferInfo\030\004 \003(\0132$.rpc.protocols.Acto" + - "rEffectBufferInfo\022\024\n\014barrierPoint\030\005 \003(\005\022" + - "-\n\nposMineral\030\006 \003(\0132\031.rpc.protocols.PosM" + - "ineral\022\022\n\nremainTime\030\007 \001(\005\"F\n\027SceneGetFu" + - "llMsgResponse\022+\n\tsceneInfo\030\001 \001(\0132\030.rpc.p", - "rotocols.SceneInfo\"B\n\013blessReward\022\022\n\nloc" + - "ationId\030\001 \001(\005\022\r\n\005state\030\002 \001(\005\022\020\n\010rewardId" + - "\030\003 \001(\005\"5\n\022fiveResetTowerInfo\022\r\n\005tower\030\001 " + - "\001(\005\022\020\n\010intoType\030\002 \001(\005\";\n\020FamilyContribut" + - "e\022\013\n\003win\030\001 \001(\005\022\014\n\004draw\030\002 \001(\005\022\014\n\004fail\030\003 \001" + - "(\005\"\211\002\n\016FamilyBaseInfo\022\n\n\002id\030\001 \001(\005\022\014\n\004nam" + - "e\030\002 \001(\t\022\017\n\007annouce\030\003 \001(\t\022\r\n\005levle\030\004 \001(\005\022" + - "\013\n\003exp\030\005 \001(\005\022\020\n\010totalNum\030\006 \001(\005\022\016\n\006maxNum" + - "\030\007 \001(\005\022\020\n\010joinType\030\010 \001(\005\022\014\n\004icon\030\t \001(\005\022\021" + - "\n\tlevelTime\030\n \001(\005\0224\n\013fightResult\030\013 \001(\0132\037", - ".rpc.protocols.FamilyContribute\022\027\n\017playe" + - "rIntoLevel\030\014 \001(\005\022\014\n\004fete\030\r \001(\005\")\n\013endles" + - "sHero\022\016\n\006heroId\030\001 \001(\t\022\n\n\002hp\030\002 \001(\005\"2\n\022End" + - "lessRefreshInfo\022\016\n\006cellId\030\001 \001(\005\022\014\n\004time\030" + - "\002 \001(\005\"u\n\014UseForceInfo\022\014\n\004name\030\001 \001(\t\022\014\n\004l" + - "eve\030\002 \001(\005\022\r\n\005force\030\003 \001(\005\022\014\n\004rank\030\004 \001(\005\022\014" + - "\n\004head\030\005 \001(\005\022\021\n\theadFrame\030\006 \001(\005\022\013\n\003uid\030\007" + - " \001(\005\"H\n\013endlessSign\022\r\n\005mapId\030\001 \001(\005\022\016\n\006ce" + - "llId\030\002 \001(\005\022\014\n\004info\030\003 \001(\t\022\014\n\004type\030\004 \001(\005\"g" + - "\n\nExpertInfo\022\014\n\004name\030\001 \001(\t\022\r\n\005score\030\002 \001(", - "\005\022\014\n\004rank\030\003 \001(\005\022\r\n\005level\030\004 \001(\005\022\014\n\004head\030\005" + - " \001(\005\022\021\n\theadFrame\030\006 \001(\005\")\n\nSignInInfo\022\014\n" + - "\004days\030\001 \001(\005\022\r\n\005state\030\002 \001(\005\"p\n\016TeamSimple" + - "Info\022\016\n\006heroid\030\001 \001(\t\022\017\n\007heroTid\030\002 \001(\005\022\014\n" + - "\004star\030\003 \001(\005\022\r\n\005level\030\004 \001(\005\022\020\n\010position\030\005" + - " \001(\005\022\016\n\006skinId\030\006 \001(\005\"\231\001\n\017TeamOneTeamInfo" + - "\022+\n\004team\030\001 \003(\0132\035.rpc.protocols.TeamSimpl" + - "eInfo\0223\n\014PokemonInfos\030\002 \003(\0132\035.rpc.protoc" + - "ols.TeamSimpleInfo\022\022\n\ntotalForce\030\003 \001(\005\022\020" + - "\n\010remainHp\030\004 \003(\005\"\254\001\n\013TeamOneInfo\022\013\n\003uid\030", - "\001 \001(\005\022\r\n\005level\030\002 \001(\005\022\014\n\004name\030\003 \001(\t\022\014\n\004he" + - "ad\030\004 \001(\005\022\021\n\theadFrame\030\005 \001(\005\022\021\n\tguildName" + - "\030\007 \001(\t\022,\n\004team\030\006 \001(\0132\036.rpc.protocols.Tea" + - "mOneTeamInfo\022\021\n\tisApplyed\030\010 \001(\005\"y\n\017Monst" + - "erRankInfo\022\014\n\004name\030\001 \001(\t\022\r\n\005score\030\002 \001(\005\022" + - "\014\n\004rank\030\003 \001(\005\022\r\n\005level\030\004 \001(\005\022\014\n\004head\030\005 \001" + - "(\005\022\021\n\theadFrame\030\006 \001(\005\022\013\n\003uid\030\007 \001(\005\"2\n\rHe" + - "roBloodInfo\022\016\n\006heroId\030\001 \001(\t\022\021\n\tlostBlood" + - "\030\002 \001(\005\"D\n\013EndlessInfo\022\r\n\005mapId\030\001 \001(\005\022\022\n\n" + - "worldLevel\030\002 \001(\005\022\022\n\nbloodScore\030\003 \001(\005\"2\n\017", - "PlayerBindPhone\022\020\n\010phoneNum\030\001 \001(\t\022\r\n\005sta" + - "te\030\002 \001(\005\"3\n\014EndlessPoint\022\020\n\010location\030\001 \001" + - "(\005\022\021\n\tmonsterId\030\002 \001(\005\"2\n\014StrongerInfo\022\020\n" + - "\010curScore\030\001 \001(\005\022\020\n\010maxScore\030\002 \001(\005\"U\n\017Que" + - "stionOptions\022\017\n\007content\030\001 \001(\t\022\014\n\004type\030\002 " + - "\001(\005\022\017\n\007options\030\003 \003(\t\022\022\n\nanswerType\030\004 \001(\005" + - "\"\212\001\n\017BloodPersonInfo\022\n\n\002id\030\001 \001(\005\022\014\n\004name" + - "\030\002 \001(\t\022\021\n\theadFrame\030\003 \001(\005\022\014\n\004head\030\004 \001(\005\022" + - "\020\n\010serverId\030\005 \001(\005\022\r\n\005level\030\006 \001(\005\022\014\n\004rank" + - "\030\007 \001(\005\022\r\n\005score\030\010 \001(\005\"H\n\026LuckWheelReward", - "PosInfo\022\013\n\003pos\030\001 \001(\005\022\016\n\006luckId\030\002 \001(\005\022\021\n\t" + - "luckTimes\030\003 \001(\005\"_\n\013RefreshTask\022\014\n\004type\030\001" + - " \001(\005\022-\n\005tasks\030\002 \003(\0132\036.rpc.protocols.User" + - "MissionInfo\022\023\n\013refreshTime\030\003 \001(\005\"\221\001\n\021Mai" + - "nLevelRankInfo\022\013\n\003uid\030\001 \001(\005\022\r\n\005level\030\002 \001" + - "(\005\022\014\n\004name\030\003 \001(\t\022\017\n\007fightId\030\004 \001(\005\022\014\n\004hea" + - "d\030\005 \001(\005\022\014\n\004rank\030\006 \001(\005\022\022\n\ntotalForce\030\007 \001(" + - "\005\022\021\n\theadFrame\030\010 \001(\005\"B\n\017ChampionBetInfo\022" + - "\n\n\002id\030\001 \001(\t\022\020\n\010redCoins\030\002 \001(\005\022\021\n\tblueCoi" + - "ns\030\003 \001(\005\"\254\001\n\022ChampionBattleInfo\022*\n\006myInf", - "o\030\001 \001(\0132\032.rpc.protocols.TeamOneInfo\022-\n\te" + - "nemyInfo\030\002 \001(\0132\032.rpc.protocols.TeamOneIn" + - "fo\022\016\n\006result\030\003 \001(\005\022+\n\tfightData\030\004 \001(\0132\030." + - "rpc.protocols.FightData\"\335\001\n\026ChampionBatt" + - "lePairInfo\022.\n\nattackInfo\030\001 \001(\0132\032.rpc.pro" + - "tocols.TeamOneInfo\022+\n\007defInfo\030\002 \001(\0132\032.rp" + - "c.protocols.TeamOneInfo\022\023\n\013fightResult\030\003" + - " \001(\005\022\n\n\002id\030\004 \001(\t\022\022\n\nroundTImes\030\005 \001(\005\022\016\n\006" + - "teamId\030\006 \001(\005\022\020\n\010position\030\007 \001(\005\022\017\n\007isGUes" + - "s\030\010 \001(\005\"q\n\nRedPackage\022\020\n\010userName\030\001 \001(\t\022", - "\r\n\005redId\030\002 \001(\005\022\r\n\005isGet\030\003 \001(\005\022\020\n\010getCoun" + - "t\030\004 \001(\005\022\017\n\007redType\030\005 \001(\005\022\020\n\010sendTime\030\006 \001" + - "(\005\"\211\001\n\014RedOneDetail\022\013\n\003uid\030\001 \001(\005\022\014\n\004head" + - "\030\002 \001(\005\022\021\n\theadFrame\030\003 \001(\005\022\014\n\004name\030\004 \001(\t\022" + - "\014\n\004time\030\005 \001(\005\022\r\n\005count\030\006 \001(\005\022\016\n\006itemId\030\007" + - " \001(\005\022\020\n\010position\030\010 \001(\005\"l\n\030ExpeditionSimp" + - "leBossInfo\022\017\n\007heroTid\030\001 \001(\005\022\014\n\004star\030\002 \001(" + - "\005\022\r\n\005level\030\003 \001(\005\022\020\n\010remainHp\030\004 \001(\001\022\020\n\010po" + - "sition\030\005 \001(\005\"\207\001\n\022ExpeditionTeamInfo\0225\n\004h" + - "ero\030\001 \003(\0132\'.rpc.protocols.ExpeditionSimp", - "leBossInfo\022\024\n\014PokemonInfos\030\002 \003(\005\022\022\n\ntota" + - "lForce\030\003 \001(\005\022\020\n\010teamInfo\030\004 \001(\005\"\234\001\n\022Exped" + - "itionNodeInfo\022\016\n\006sortId\030\001 \001(\005\022\013\n\003lay\030\002 \001" + - "(\005\022\014\n\004type\030\003 \001(\005\0227\n\014bossTeaminfo\030\004 \001(\0132!" + - ".rpc.protocols.ExpeditionTeamInfo\022\r\n\005sta" + - "te\030\005 \001(\005\022\023\n\013holyEquipID\030\006 \003(\005\"<\n\030Expedit" + - "ionSimpleHeroInfo\022\016\n\006heroId\030\001 \001(\t\022\020\n\010rem" + - "ainHp\030\002 \001(\001\"/\n\017ExpeditionEquip\022\n\n\002id\030\001 \001" + - "(\t\022\020\n\010equiptId\030\002 \001(\005\"P\n\rMonthCardInfo\022\n\n" + - "\002id\030\001 \001(\005\022\022\n\nendingTime\030\002 \001(\005\022\r\n\005state\030\003", - " \001(\005\022\020\n\010totleAmt\030\004 \001(\001\"?\n\021CarGrapRecordI" + - "tem\022\014\n\004time\030\001 \001(\005\022\013\n\003uid\030\002 \001(\005\022\017\n\007conten" + - "t\030\003 \001(\t\">\n\rGuildHelpInfo\022\014\n\004type\030\001 \001(\005\022\013" + - "\n\003num\030\002 \001(\005\022\022\n\nhadtakenum\030\003 \001(\005\"x\n\014Guild" + - "HelpLog\022\021\n\thelperuid\030\001 \001(\005\022\021\n\ttargetuid\030" + - "\002 \001(\005\022\022\n\nhelpername\030\003 \001(\t\022\022\n\ntargetname\030" + - "\004 \001(\t\022\014\n\004type\030\005 \001(\005\022\014\n\004time\030\006 \001(\005\"\234\001\n\014Vi" + - "ewHeroInfo\022!\n\004hero\030\001 \001(\0132\023.rpc.protocols" + - ".Hero\022#\n\005equip\030\002 \003(\0132\024.rpc.protocols.Equ" + - "ip\0225\n\016SpecialEffects\030\003 \003(\0132\035.rpc.protoco", - "ls.SpecialEffects\022\r\n\005force\030\004 \001(\005\"4\n\021Ever" + - "yHeroHandBook\022\016\n\006heroId\030\001 \001(\005\022\017\n\007maxStar" + - "\030\002 \001(\005\"=\n\rSituationInfo\022\n\n\002id\030\001 \001(\005\022\020\n\010o" + - "verTime\030\002 \001(\005\022\016\n\006passId\030\003 \001(\005\"N\n\013Journey" + - "Info\022\r\n\005mapId\030\001 \001(\005\022\017\n\007process\030\002 \001(\005\022\020\n\010" + - "redPoint\030\003 \001(\005\022\r\n\005first\030\004 \001(\005\"\213\001\n\022Journe" + - "yMonsterInfo\022\021\n\tmonsterId\030\001 \001(\005\022\024\n\014monst" + - "erIndex\030\002 \001(\005\022\021\n\tmonsterHp\030\003 \001(\003\022\022\n\nrema" + - "inTime\030\004 \001(\005\022\021\n\tattackNum\030\005 \001(\005\022\022\n\nrewar" + - "dShow\030\006 \001(\005\"K\n\020JourneyGoodsInfo\022\017\n\007goods", - "Id\030\001 \001(\005\022\022\n\ngoodsIndex\030\002 \001(\005\022\022\n\nremainTi" + - "me\030\003 \001(\005\"S\n\013JourneyCell\022\016\n\006cellId\030\001 \001(\005\022" + - "\017\n\007pointId\030\002 \001(\005\022\021\n\tcellIndex\030\003 \001(\005\022\020\n\010r" + - "ewardId\030\004 \001(\005\",\n\010SkinInfo\022\016\n\006skinId\030\001 \001(" + - "\005\022\020\n\010overTime\030\002 \001(\005B\002H\001" + "rame\030\010 \001(\005\022\020\n\010serverId\030\t \001(\005\022\023\n\013worshipT" + + "ime\030\n \001(\005\"\027\n\004Team\022\017\n\007heroTid\030\001 \003(\005\"c\n\nAr" + + "enaEnemy\0222\n\npersonInfo\030\001 \001(\0132\036.rpc.proto", + "cols.ArenaPersonInfo\022!\n\004team\030\002 \001(\0132\023.rpc" + + ".protocols.Team\"\205\001\n\tArenaInfo\022\020\n\010failNum" + + "s\030\001 \001(\005\022\023\n\013successNums\030\002 \001(\005\022\r\n\005score\030\003 " + + "\001(\005\022.\n\013arenaEnemys\030\004 \003(\0132\031.rpc.protocols" + + ".ArenaEnemy\022\022\n\nhadTakeBox\030\005 \003(\005\"\'\n\tStore" + + "Item\022\n\n\002id\030\001 \001(\005\022\016\n\006buyNum\030\002 \001(\005\"\201\001\n\tSto" + + "reInfo\022\n\n\002id\030\001 \001(\005\022\027\n\017lastRefreshTime\030\002 " + + "\001(\003\022\021\n\tstartTime\030\004 \001(\003\022\017\n\007endTime\030\005 \001(\003\022" + + "+\n\tstoreItem\030\006 \003(\0132\030.rpc.protocols.Store" + + "Item\"\221\001\n\017ArenaRecordInfo\022\n\n\002id\030\001 \001(\t\0222\n\n", + "attackInfo\030\002 \001(\0132\036.rpc.protocols.ArenaPe" + + "rsonInfo\022\022\n\nattackTime\030\003 \001(\005\022\025\n\rmyScoreC" + + "hange\030\004 \001(\005\022\023\n\013fightResult\030\005 \001(\005\"Z\n\016Func" + + "tionOfTime\022\022\n\nfunctionId\030\001 \001(\005\022\021\n\tstartT" + + "ime\030\002 \001(\005\022\017\n\007endTime\030\003 \001(\005\022\020\n\010interval\030\004" + + " \001(\005\"~\n\025AdventureRankItemInfo\022\r\n\005level\030\001" + + " \001(\005\022\014\n\004name\030\002 \001(\t\022\014\n\004hurt\030\003 \001(\005\022\014\n\004head" + + "\030\004 \001(\005\022\014\n\004rank\030\005 \001(\005\022\021\n\theadFrame\030\006 \001(\005\022" + + "\013\n\003uid\030\007 \001(\005\"\313\001\n\021AdventureBossInfo\022\017\n\007ar" + + "enaId\030\001 \001(\005\022\017\n\007findUid\030\002 \001(\005\022\020\n\010findName", + "\030\003 \001(\t\022\016\n\006bossId\030\004 \001(\t\022\023\n\013bossGroupId\030\005 " + + "\001(\005\022\016\n\006myHurt\030\006 \001(\005\022\021\n\tlevelTime\030\007 \001(\005\022\017" + + "\n\007totalHp\030\010 \001(\005\022\025\n\rbossRemainlHp\030\t \001(\005\022\022" + + "\n\narenaLevel\030\n \001(\005\"v\n\017UserMissionInfo\022\021\n" + + "\tmissionId\030\001 \001(\005\022\020\n\010progress\030\002 \001(\005\022\r\n\005st" + + "ate\030\003 \001(\005\022\014\n\004type\030\004 \001(\005\022\021\n\ttakeTimes\030\005 \001" + + "(\005\022\016\n\006heroId\030\006 \003(\t\"8\n\013VipBaseInfo\022\020\n\010vip" + + "Level\030\001 \001(\005\022\027\n\017hadTakeLevelBox\030\002 \001(\005\"\250\001\n" + + "\006Friend\022\n\n\002id\030\001 \001(\005\022\014\n\004name\030\002 \001(\t\022\n\n\002lv\030" + + "\003 \001(\005\022\023\n\013offLineTime\030\004 \001(\004\022\022\n\nhaveReward", + "\030\005 \001(\005\022\016\n\006isGive\030\006 \001(\005\022\021\n\tisApplyed\030\007 \001(" + + "\005\022\014\n\004head\030\014 \001(\005\022\r\n\005frame\030\r \001(\005\022\017\n\007soulVa" + + "l\030\016 \001(\005\"o\n\rGiftGoodsInfo\022\017\n\007goodsId\030\001 \001(" + + "\005\022\020\n\010buyTimes\030\002 \001(\005\022\021\n\tstartTime\030\003 \001(\005\022\017" + + "\n\007endTime\030\004 \001(\005\022\027\n\017dynamicBuyTimes\030\005 \001(\005" + + "\"7\n\021GoodsTypeDuration\022\021\n\tgoodsType\030\001 \001(\005" + + "\022\017\n\007endTime\030\002 \001(\005\"/\n\016TechnologyInfo\022\016\n\006t" + + "echId\030\001 \001(\005\022\r\n\005levle\030\002 \001(\005\"J\n\020SuddenlyBo" + + "ssInfo\022\022\n\nsuddBossId\030\006 \001(\005\022\017\n\007endTime\030\007 " + + "\001(\005\022\021\n\tfindMapId\030\010 \001(\005\"H\n\010ItemInfo\022\022\n\nte", + "mplateId\030\001 \001(\005\022\017\n\007overlap\030\002 \001(\005\022\027\n\017nextR" + + "efreshTime\030\003 \001(\005\"H\n\010RankInfo\022\014\n\004rank\030\001 \001" + + "(\005\022\016\n\006param1\030\002 \001(\003\022\016\n\006param2\030\003 \001(\005\022\016\n\006pa" + + "ram3\030\004 \001(\005\"\306\001\n\010UserRank\022\013\n\003uid\030\001 \001(\005\022\r\n\005" + + "level\030\002 \001(\005\022\014\n\004head\030\003 \001(\005\022\020\n\010userName\030\004 " + + "\001(\t\022)\n\010rankInfo\030\005 \001(\0132\027.rpc.protocols.Ra" + + "nkInfo\022\021\n\theadFrame\030\006 \001(\005\022\021\n\tguildName\030\007" + + " \001(\t\022\r\n\005force\030\010 \001(\005\022\021\n\tguildSign\030\t \001(\005\022\013" + + "\n\003sex\030\n \001(\005\"\204\001\n\025ActorEffectBufferInfo\022\n\n" + + "\002id\030\001 \001(\005\022\014\n\004type\030\002 \001(\005\022\021\n\tstartTime\030\003 \001", + "(\005\022\017\n\007endTime\030\004 \001(\005\022\016\n\006target\030\005 \001(\005\022\016\n\006c" + + "aster\030\006 \001(\005\022\r\n\005value\030\007 \003(\005\"T\n\016BloodyHero" + + "Info\022\016\n\006heroId\030\001 \001(\t\022\016\n\006heroHp\030\002 \001(\005\022\021\n\t" + + "heroMaxHp\030\003 \001(\005\022\017\n\007heroTid\030\004 \001(\005\"%\n\010Scen" + + "eMsg\022\014\n\004time\030\001 \001(\005\022\013\n\003msg\030\002 \001(\t\"\'\n\nPosMi" + + "neral\022\013\n\003pos\030\001 \001(\005\022\014\n\004nums\030\002 \001(\005\"\247\001\n\010Cre" + + "ature\022\014\n\004path\030\001 \003(\005\022\r\n\005speed\030\002 \001(\005\022\r\n\005ma" + + "xHp\030\003 \001(\005\022\r\n\005curHp\030\004 \001(\005\022\017\n\007mineral\030\005 \001(" + + "\005\022\014\n\004camp\030\006 \001(\005\022/\n\010heroInfo\030\007 \003(\0132\035.rpc." + + "protocols.BloodyHeroInfo\022\020\n\010killNums\030\010 \001", + "(\005\"\202\001\n\nSceneActor\022\n\n\002id\030\001 \001(\005\022\016\n\006curPos\030" + + "\002 \001(\005\022\r\n\005state\030\003 \001(\005\022\014\n\004type\030\004 \001(\005\022)\n\010Cr" + + "eature\030\006 \001(\0132\027.rpc.protocols.Creature\022\020\n" + + "\010userName\030\007 \001(\t\"\367\001\n\tSceneInfo\022\016\n\006roomId\030" + + "\001 \001(\005\022\r\n\005mapId\030\002 \001(\005\022-\n\nSceneActor\030\003 \003(\013" + + "2\031.rpc.protocols.SceneActor\022C\n\025actorEffe" + + "ctBufferInfo\030\004 \003(\0132$.rpc.protocols.Actor" + + "EffectBufferInfo\022\024\n\014barrierPoint\030\005 \003(\005\022-" + + "\n\nposMineral\030\006 \003(\0132\031.rpc.protocols.PosMi" + + "neral\022\022\n\nremainTime\030\007 \001(\005\"F\n\027SceneGetFul", + "lMsgResponse\022+\n\tsceneInfo\030\001 \001(\0132\030.rpc.pr" + + "otocols.SceneInfo\"B\n\013blessReward\022\022\n\nloca" + + "tionId\030\001 \001(\005\022\r\n\005state\030\002 \001(\005\022\020\n\010rewardId\030" + + "\003 \001(\005\"5\n\022fiveResetTowerInfo\022\r\n\005tower\030\001 \001" + + "(\005\022\020\n\010intoType\030\002 \001(\005\";\n\020FamilyContribute" + + "\022\013\n\003win\030\001 \001(\005\022\014\n\004draw\030\002 \001(\005\022\014\n\004fail\030\003 \001(" + + "\005\"\211\002\n\016FamilyBaseInfo\022\n\n\002id\030\001 \001(\005\022\014\n\004name" + + "\030\002 \001(\t\022\017\n\007annouce\030\003 \001(\t\022\r\n\005levle\030\004 \001(\005\022\013" + + "\n\003exp\030\005 \001(\005\022\020\n\010totalNum\030\006 \001(\005\022\016\n\006maxNum\030" + + "\007 \001(\005\022\020\n\010joinType\030\010 \001(\005\022\014\n\004icon\030\t \001(\005\022\021\n", + "\tlevelTime\030\n \001(\005\0224\n\013fightResult\030\013 \001(\0132\037." + + "rpc.protocols.FamilyContribute\022\027\n\017player" + + "IntoLevel\030\014 \001(\005\022\014\n\004fete\030\r \001(\005\")\n\013endless" + + "Hero\022\016\n\006heroId\030\001 \001(\t\022\n\n\002hp\030\002 \001(\005\"2\n\022Endl" + + "essRefreshInfo\022\016\n\006cellId\030\001 \001(\005\022\014\n\004time\030\002" + + " \001(\005\"u\n\014UseForceInfo\022\014\n\004name\030\001 \001(\t\022\014\n\004le" + + "ve\030\002 \001(\005\022\r\n\005force\030\003 \001(\005\022\014\n\004rank\030\004 \001(\005\022\014\n" + + "\004head\030\005 \001(\005\022\021\n\theadFrame\030\006 \001(\005\022\013\n\003uid\030\007 " + + "\001(\005\"H\n\013endlessSign\022\r\n\005mapId\030\001 \001(\005\022\016\n\006cel" + + "lId\030\002 \001(\005\022\014\n\004info\030\003 \001(\t\022\014\n\004type\030\004 \001(\005\"g\n", + "\nExpertInfo\022\014\n\004name\030\001 \001(\t\022\r\n\005score\030\002 \001(\005" + + "\022\014\n\004rank\030\003 \001(\005\022\r\n\005level\030\004 \001(\005\022\014\n\004head\030\005 " + + "\001(\005\022\021\n\theadFrame\030\006 \001(\005\")\n\nSignInInfo\022\014\n\004" + + "days\030\001 \001(\005\022\r\n\005state\030\002 \001(\005\"p\n\016TeamSimpleI" + + "nfo\022\016\n\006heroid\030\001 \001(\t\022\017\n\007heroTid\030\002 \001(\005\022\014\n\004" + + "star\030\003 \001(\005\022\r\n\005level\030\004 \001(\005\022\020\n\010position\030\005 " + + "\001(\005\022\016\n\006skinId\030\006 \001(\005\"\231\001\n\017TeamOneTeamInfo\022" + + "+\n\004team\030\001 \003(\0132\035.rpc.protocols.TeamSimple" + + "Info\0223\n\014PokemonInfos\030\002 \003(\0132\035.rpc.protoco" + + "ls.TeamSimpleInfo\022\022\n\ntotalForce\030\003 \001(\005\022\020\n", + "\010remainHp\030\004 \003(\005\"\254\001\n\013TeamOneInfo\022\013\n\003uid\030\001" + + " \001(\005\022\r\n\005level\030\002 \001(\005\022\014\n\004name\030\003 \001(\t\022\014\n\004hea" + + "d\030\004 \001(\005\022\021\n\theadFrame\030\005 \001(\005\022\021\n\tguildName\030" + + "\007 \001(\t\022,\n\004team\030\006 \001(\0132\036.rpc.protocols.Team" + + "OneTeamInfo\022\021\n\tisApplyed\030\010 \001(\005\"y\n\017Monste" + + "rRankInfo\022\014\n\004name\030\001 \001(\t\022\r\n\005score\030\002 \001(\005\022\014" + + "\n\004rank\030\003 \001(\005\022\r\n\005level\030\004 \001(\005\022\014\n\004head\030\005 \001(" + + "\005\022\021\n\theadFrame\030\006 \001(\005\022\013\n\003uid\030\007 \001(\005\"2\n\rHer" + + "oBloodInfo\022\016\n\006heroId\030\001 \001(\t\022\021\n\tlostBlood\030" + + "\002 \001(\005\"D\n\013EndlessInfo\022\r\n\005mapId\030\001 \001(\005\022\022\n\nw", + "orldLevel\030\002 \001(\005\022\022\n\nbloodScore\030\003 \001(\005\"2\n\017P" + + "layerBindPhone\022\020\n\010phoneNum\030\001 \001(\t\022\r\n\005stat" + + "e\030\002 \001(\005\"3\n\014EndlessPoint\022\020\n\010location\030\001 \001(" + + "\005\022\021\n\tmonsterId\030\002 \001(\005\"2\n\014StrongerInfo\022\020\n\010" + + "curScore\030\001 \001(\005\022\020\n\010maxScore\030\002 \001(\005\"U\n\017Ques" + + "tionOptions\022\017\n\007content\030\001 \001(\t\022\014\n\004type\030\002 \001" + + "(\005\022\017\n\007options\030\003 \003(\t\022\022\n\nanswerType\030\004 \001(\005\"" + + "\212\001\n\017BloodPersonInfo\022\n\n\002id\030\001 \001(\005\022\014\n\004name\030" + + "\002 \001(\t\022\021\n\theadFrame\030\003 \001(\005\022\014\n\004head\030\004 \001(\005\022\020" + + "\n\010serverId\030\005 \001(\005\022\r\n\005level\030\006 \001(\005\022\014\n\004rank\030", + "\007 \001(\005\022\r\n\005score\030\010 \001(\005\"H\n\026LuckWheelRewardP" + + "osInfo\022\013\n\003pos\030\001 \001(\005\022\016\n\006luckId\030\002 \001(\005\022\021\n\tl" + + "uckTimes\030\003 \001(\005\"_\n\013RefreshTask\022\014\n\004type\030\001 " + + "\001(\005\022-\n\005tasks\030\002 \003(\0132\036.rpc.protocols.UserM" + + "issionInfo\022\023\n\013refreshTime\030\003 \001(\005\"\221\001\n\021Main" + + "LevelRankInfo\022\013\n\003uid\030\001 \001(\005\022\r\n\005level\030\002 \001(" + + "\005\022\014\n\004name\030\003 \001(\t\022\017\n\007fightId\030\004 \001(\005\022\014\n\004head" + + "\030\005 \001(\005\022\014\n\004rank\030\006 \001(\005\022\022\n\ntotalForce\030\007 \001(\005" + + "\022\021\n\theadFrame\030\010 \001(\005\"B\n\017ChampionBetInfo\022\n" + + "\n\002id\030\001 \001(\t\022\020\n\010redCoins\030\002 \001(\005\022\021\n\tblueCoin", + "s\030\003 \001(\005\"\254\001\n\022ChampionBattleInfo\022*\n\006myInfo" + + "\030\001 \001(\0132\032.rpc.protocols.TeamOneInfo\022-\n\ten" + + "emyInfo\030\002 \001(\0132\032.rpc.protocols.TeamOneInf" + + "o\022\016\n\006result\030\003 \001(\005\022+\n\tfightData\030\004 \001(\0132\030.r" + + "pc.protocols.FightData\"\335\001\n\026ChampionBattl" + + "ePairInfo\022.\n\nattackInfo\030\001 \001(\0132\032.rpc.prot" + + "ocols.TeamOneInfo\022+\n\007defInfo\030\002 \001(\0132\032.rpc" + + ".protocols.TeamOneInfo\022\023\n\013fightResult\030\003 " + + "\001(\005\022\n\n\002id\030\004 \001(\t\022\022\n\nroundTImes\030\005 \001(\005\022\016\n\006t" + + "eamId\030\006 \001(\005\022\020\n\010position\030\007 \001(\005\022\017\n\007isGUess", + "\030\010 \001(\005\"q\n\nRedPackage\022\020\n\010userName\030\001 \001(\t\022\r" + + "\n\005redId\030\002 \001(\005\022\r\n\005isGet\030\003 \001(\005\022\020\n\010getCount" + + "\030\004 \001(\005\022\017\n\007redType\030\005 \001(\005\022\020\n\010sendTime\030\006 \001(" + + "\005\"\211\001\n\014RedOneDetail\022\013\n\003uid\030\001 \001(\005\022\014\n\004head\030" + + "\002 \001(\005\022\021\n\theadFrame\030\003 \001(\005\022\014\n\004name\030\004 \001(\t\022\014" + + "\n\004time\030\005 \001(\005\022\r\n\005count\030\006 \001(\005\022\016\n\006itemId\030\007 " + + "\001(\005\022\020\n\010position\030\010 \001(\005\"l\n\030ExpeditionSimpl" + + "eBossInfo\022\017\n\007heroTid\030\001 \001(\005\022\014\n\004star\030\002 \001(\005" + + "\022\r\n\005level\030\003 \001(\005\022\020\n\010remainHp\030\004 \001(\001\022\020\n\010pos" + + "ition\030\005 \001(\005\"\207\001\n\022ExpeditionTeamInfo\0225\n\004he", + "ro\030\001 \003(\0132\'.rpc.protocols.ExpeditionSimpl" + + "eBossInfo\022\024\n\014PokemonInfos\030\002 \003(\005\022\022\n\ntotal" + + "Force\030\003 \001(\005\022\020\n\010teamInfo\030\004 \001(\005\"\234\001\n\022Expedi" + + "tionNodeInfo\022\016\n\006sortId\030\001 \001(\005\022\013\n\003lay\030\002 \001(" + + "\005\022\014\n\004type\030\003 \001(\005\0227\n\014bossTeaminfo\030\004 \001(\0132!." + + "rpc.protocols.ExpeditionTeamInfo\022\r\n\005stat" + + "e\030\005 \001(\005\022\023\n\013holyEquipID\030\006 \003(\005\"<\n\030Expediti" + + "onSimpleHeroInfo\022\016\n\006heroId\030\001 \001(\t\022\020\n\010rema" + + "inHp\030\002 \001(\001\"/\n\017ExpeditionEquip\022\n\n\002id\030\001 \001(" + + "\t\022\020\n\010equiptId\030\002 \001(\005\"P\n\rMonthCardInfo\022\n\n\002", + "id\030\001 \001(\005\022\022\n\nendingTime\030\002 \001(\005\022\r\n\005state\030\003 " + + "\001(\005\022\020\n\010totleAmt\030\004 \001(\001\"?\n\021CarGrapRecordIt" + + "em\022\014\n\004time\030\001 \001(\005\022\013\n\003uid\030\002 \001(\005\022\017\n\007content" + + "\030\003 \001(\t\">\n\rGuildHelpInfo\022\014\n\004type\030\001 \001(\005\022\013\n" + + "\003num\030\002 \001(\005\022\022\n\nhadtakenum\030\003 \001(\005\"x\n\014GuildH" + + "elpLog\022\021\n\thelperuid\030\001 \001(\005\022\021\n\ttargetuid\030\002" + + " \001(\005\022\022\n\nhelpername\030\003 \001(\t\022\022\n\ntargetname\030\004" + + " \001(\t\022\014\n\004type\030\005 \001(\005\022\014\n\004time\030\006 \001(\005\"\234\001\n\014Vie" + + "wHeroInfo\022!\n\004hero\030\001 \001(\0132\023.rpc.protocols." + + "Hero\022#\n\005equip\030\002 \003(\0132\024.rpc.protocols.Equi", + "p\0225\n\016SpecialEffects\030\003 \003(\0132\035.rpc.protocol" + + "s.SpecialEffects\022\r\n\005force\030\004 \001(\005\"4\n\021Every" + + "HeroHandBook\022\016\n\006heroId\030\001 \001(\005\022\017\n\007maxStar\030" + + "\002 \001(\005\"=\n\rSituationInfo\022\n\n\002id\030\001 \001(\005\022\020\n\010ov" + + "erTime\030\002 \001(\005\022\016\n\006passId\030\003 \001(\005\"N\n\013JourneyI" + + "nfo\022\r\n\005mapId\030\001 \001(\005\022\017\n\007process\030\002 \001(\005\022\020\n\010r" + + "edPoint\030\003 \001(\005\022\r\n\005first\030\004 \001(\005\"\213\001\n\022Journey" + + "MonsterInfo\022\021\n\tmonsterId\030\001 \001(\005\022\024\n\014monste" + + "rIndex\030\002 \001(\005\022\021\n\tmonsterHp\030\003 \001(\003\022\022\n\nremai" + + "nTime\030\004 \001(\005\022\021\n\tattackNum\030\005 \001(\005\022\022\n\nreward", + "Show\030\006 \001(\005\"K\n\020JourneyGoodsInfo\022\017\n\007goodsI" + + "d\030\001 \001(\005\022\022\n\ngoodsIndex\030\002 \001(\005\022\022\n\nremainTim" + + "e\030\003 \001(\005\"S\n\013JourneyCell\022\016\n\006cellId\030\001 \001(\005\022\017" + + "\n\007pointId\030\002 \001(\005\022\021\n\tcellIndex\030\003 \001(\005\022\020\n\010re" + + "wardId\030\004 \001(\005\",\n\010SkinInfo\022\016\n\006skinId\030\001 \001(\005" + + "\022\020\n\010overTime\030\002 \001(\005B\002H\001" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() { @@ -100495,7 +100690,7 @@ public final class CommonProto { internal_static_rpc_protocols_ArenaPersonInfo_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_rpc_protocols_ArenaPersonInfo_descriptor, - new java.lang.String[] { "Uid", "Level", "Name", "Score", "Head", "Rank", "TotalForce", "HeadFrame", }); + new java.lang.String[] { "Uid", "Level", "Name", "Score", "Head", "Rank", "TotalForce", "HeadFrame", "ServerId", "WorshipTime", }); internal_static_rpc_protocols_Team_descriptor = getDescriptor().getMessageTypes().get(35); internal_static_rpc_protocols_Team_fieldAccessorTable = new diff --git a/globalidserver/src/main/java/com/global/GlobalServerApplication.java b/globalidserver/src/main/java/com/global/GlobalServerApplication.java index 9af0e8258..57add14fd 100644 --- a/globalidserver/src/main/java/com/global/GlobalServerApplication.java +++ b/globalidserver/src/main/java/com/global/GlobalServerApplication.java @@ -8,8 +8,10 @@ import com.global.thrift.pool.GlobalRpcService; import com.global.thrift.pool.RPCServerTask; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.boot.SpringApplication; -import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; /** * Description: @@ -23,6 +25,10 @@ import org.springframework.context.ConfigurableApplicationContext; * Author: zsx * CreateDate: 2020/11/17 17:36 */ +@Configuration +@EnableAutoConfiguration +@ComponentScan +@EnableScheduling public class GlobalServerApplication { private static final Logger LOGGER = LoggerFactory.getLogger(GlobalServerApplication.class); public static CoreSettings bean; @@ -34,7 +40,7 @@ public class GlobalServerApplication { ThreadManager threadManager = ThreadManager.getInstance(); threadManager.init(); - GlobalRpcService.initHandler("com.global.handler"); + GlobalRpcService.initHandler("com.global.handler",GlobalServerApplication.class.getClassLoader()); new RPCServerTask().start(); RedisUtil.getInstence().init(); diff --git a/globalidserver/src/main/java/com/global/config/CoreSettings.java b/globalidserver/src/main/java/com/global/config/CoreSettings.java index edfc6874e..67cb4c2b8 100644 --- a/globalidserver/src/main/java/com/global/config/CoreSettings.java +++ b/globalidserver/src/main/java/com/global/config/CoreSettings.java @@ -16,6 +16,8 @@ public class CoreSettings { private int port; private int id; private int weight; + private String worldip; + private int worldport; public String getIp() { return ip; @@ -49,6 +51,22 @@ public class CoreSettings { this.port = port; } + public String getWorldip() { + return worldip; + } + + public void setWorldip(String worldip) { + this.worldip = worldip; + } + + public int getWorldport() { + return worldport; + } + + public void setWorldport(int worldport) { + this.worldport = worldport; + } + @Override public String toString() { return "CoreSettings{" + @@ -56,6 +74,8 @@ public class CoreSettings { ", port=" + port + ", id=" + id + ", weight=" + weight + + ", worldip='" + worldip + '\'' + + ", worldport=" + worldport + '}'; } } diff --git a/globalidserver/src/main/java/com/global/handler/GetWorldServerRequestHandler.java b/globalidserver/src/main/java/com/global/handler/GetWorldServerRequestHandler.java index 6e2daf3e6..e9f01f6cb 100644 --- a/globalidserver/src/main/java/com/global/handler/GetWorldServerRequestHandler.java +++ b/globalidserver/src/main/java/com/global/handler/GetWorldServerRequestHandler.java @@ -1,26 +1,28 @@ package com.global.handler; import com.global.GlobalServerApplication; +import com.global.config.CoreSettings; import rpc.net.RpcMessage; import com.google.protobuf.GeneratedMessage; import rpc.global.GlobalProto; -import rpc.net._gtGBaseHandler; +import rpc.net.gtGBaseHandler; /** * Description: des * Author: zsx * CreateDate: 2020/11/18 22:23 */ -public class GetWorldServerRequestHandler extends _gtGBaseHandler { +public class GetWorldServerRequestHandler extends gtGBaseHandler { @Override public GeneratedMessage processWithProto(RpcMessage rpcMessage, GlobalProto.GetWorldServerRequest proto) throws Exception { //TODO 分组逻辑 - - + System.out.println("rpcMessage = " + rpcMessage.toString()); //TODO 设置分组 - return GlobalProto.GetWorldServerResponse.newBuilder().setIp(GlobalServerApplication.bean.getIp()).setPort(GlobalServerApplication.bean.getIp()).setGroup(1).build(); + String ip = GlobalServerApplication.bean.getWorldip(); + int port = GlobalServerApplication.bean.getPort(); + return GlobalProto.GetWorldServerResponse.newBuilder().setIp("60.1.1.161").setPort("18080").setGroup(1).build(); } diff --git a/globalidserver/src/main/java/com/global/thrift/pool/GlobalRpcService.java b/globalidserver/src/main/java/com/global/thrift/pool/GlobalRpcService.java index f1d8c662f..c4af4fef0 100644 --- a/globalidserver/src/main/java/com/global/thrift/pool/GlobalRpcService.java +++ b/globalidserver/src/main/java/com/global/thrift/pool/GlobalRpcService.java @@ -8,7 +8,7 @@ import org.apache.thrift.TException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import rpc.net.RpcMessage; -import rpc.net._gtGBaseHandler; +import rpc.net.gtGBaseHandler; import util.ErrorPrintUtil; import java.nio.ByteBuffer; @@ -35,7 +35,7 @@ public class GlobalRpcService extends GlobalProtocolsManager implements RPCgTGRe private InnerResult processMessage(RpcMessage message) throws Exception { - _gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); + gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); if (baseHandler == null) { //检查一下 没有定义handler LOGGER.info("request unknow commond : " + message.getProtpId()); diff --git a/globalidserver/src/main/java/com/world/thrift/idl/RPCgTwRequestIFace.java b/globalidserver/src/main/java/com/world/thrift/idl/RPCgTwRequestIFace.java deleted file mode 100644 index 69c4c5ea4..000000000 --- a/globalidserver/src/main/java/com/world/thrift/idl/RPCgTwRequestIFace.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Autogenerated by Thrift Compiler (0.9.2) - * - * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING - * @generated - */ -package com.world.thrift.idl; - -import org.apache.thrift.scheme.IScheme; -import org.apache.thrift.scheme.SchemeFactory; -import org.apache.thrift.scheme.StandardScheme; - -import org.apache.thrift.scheme.TupleScheme; -import org.apache.thrift.protocol.TTupleProtocol; -import org.apache.thrift.protocol.TProtocolException; -import org.apache.thrift.EncodingUtils; -import org.apache.thrift.TException; -import org.apache.thrift.async.AsyncMethodCallback; -import org.apache.thrift.server.AbstractNonblockingServer.*; -import java.util.List; -import java.util.ArrayList; -import java.util.Map; -import java.util.HashMap; -import java.util.EnumMap; -import java.util.Set; -import java.util.HashSet; -import java.util.EnumSet; -import java.util.Collections; -import java.util.BitSet; -import java.nio.ByteBuffer; -import java.util.Arrays; -import javax.annotation.Generated; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2020-11-19") -public class RPCgTwRequestIFace { - - /** - * Structs can also be exceptions, if they are nasty. diff --git a/globalidserver/src/main/resources/application.properties b/globalidserver/src/main/resources/application.properties index ab97d4bcf..72e6b7196 100644 --- a/globalidserver/src/main/resources/application.properties +++ b/globalidserver/src/main/resources/application.properties @@ -8,10 +8,13 @@ spring.redis.pool.max-idle=8 spring.redis.pool.min-idle=0 #core -services.core.ip=60.1.1. +services.core.ip=60.1.1.161 services.core.port=17080 services.core.area=1000 services.core.id=1 services.core.weight=5 +#\u6539\u7528\u670D\u52A1\u53D1\u73B0 +services.core.worldip=60.1.1.161 +services.core.worldport=18080 logging.config = conf/logback-boot.xml \ No newline at end of file diff --git a/serverlogic/src/main/java/com/ljsd/GameLogicService.java b/serverlogic/src/main/java/com/ljsd/GameLogicService.java index b8f05bb21..e1b2fee57 100644 --- a/serverlogic/src/main/java/com/ljsd/GameLogicService.java +++ b/serverlogic/src/main/java/com/ljsd/GameLogicService.java @@ -78,7 +78,7 @@ public class GameLogicService implements IService { //注册消息处理方法 ProtocolsManager protocolsManager = ProtocolsManager.getInstance(); protocolsManager.initHandler("com.ljsd.jieling.handler"); - GlobalidHelper.initHandler("com.ljsd.jieling.handler"); + GlobalidHelper.initHandler("com.ljsd.jieling.handler",GameApplication.class.getClassLoader()); protocolsManager.initCheck(); // 追加ProtocolsManager消息处理器 注解和非注解 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtG/GetWorldServerResponseHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtG/GetWorldServerResponseHandler.java index c1c059878..d5ae55428 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtG/GetWorldServerResponseHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtG/GetWorldServerResponseHandler.java @@ -4,17 +4,18 @@ import com.google.protobuf.GeneratedMessage; import com.ljsd.jieling.network.server.GlobalidHelper; import rpc.global.GlobalProto; import rpc.net.RpcMessage; -import rpc.net._gtGBaseHandler; +import rpc.net.gtGBaseHandler; /** * Description: 获取分组信息 * Author: zsx * CreateDate: 2020/11/19 10:26 */ -public class GetWorldServerResponseHandler extends _gtGBaseHandler { +public class GetWorldServerResponseHandler extends gtGBaseHandler { @Override public GeneratedMessage processWithProto(RpcMessage rpcMessage, GlobalProto.GetWorldServerResponse proto) throws Exception { + GlobalidHelper.setWorldInfo(new GlobalidHelper.WorldInfo(proto.getIp(),proto.getPort(),proto.getGroup())); return null; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/network/server/GlobalidHelper.java b/serverlogic/src/main/java/com/ljsd/jieling/network/server/GlobalidHelper.java index 20dd40b4b..d3a905f6a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/network/server/GlobalidHelper.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/network/server/GlobalidHelper.java @@ -11,7 +11,7 @@ import org.slf4j.LoggerFactory; import rpc.global.GlobalProto; import rpc.net.GlobalProtocolsManager; import rpc.net.RpcMessage; -import rpc.net._gtGBaseHandler; +import rpc.net.gtGBaseHandler; import rpc.protocols.MessageTypeProto; import rpc.thrift.ServiceKey; import util.StringUtil; @@ -65,7 +65,7 @@ public class GlobalidHelper extends GlobalProtocolsManager { } private static InnerResult processMessage(RpcMessage message) throws Exception { - _gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); + gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); if (baseHandler == null) { //检查一下 没有定义handler LOGGER.info("request unknow commond : " + message.getProtpId()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/network/server/WorldHelper.java b/serverlogic/src/main/java/com/ljsd/jieling/network/server/WorldHelper.java index 286c88620..d1ec642dc 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/network/server/WorldHelper.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/network/server/WorldHelper.java @@ -1,20 +1,16 @@ package com.ljsd.jieling.network.server; -import com.global.thrift.idl.InnerResult; -import com.global.thrift.idl.RPCgTGRequestIFace; import com.google.protobuf.GeneratedMessage; import com.ljsd.GameApplication; -import com.ljsd.jieling.config.json.CoreSettings; import com.ljsd.jieling.thrift.pool.ClientAdapterPo; -import com.ljsd.jieling.util.ConfigurableApplicationContextManager; import com.ljsd.jieling.util.MessageUtil; +import com.world.thrift.idl.InnerResult; +import com.world.thrift.idl.RPCgTwRequestIFace; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import rpc.global.GlobalProto; import rpc.net.GlobalProtocolsManager; import rpc.net.RpcMessage; -import rpc.net._gtGBaseHandler; -import rpc.protocols.MessageTypeProto; +import rpc.net.gtGBaseHandler; import rpc.thrift.ServiceKey; import util.StringUtil; @@ -39,10 +35,10 @@ public class WorldHelper extends GlobalProtocolsManager { return false; } String serviceKey = StringUtil.getServiceKey(ServiceKey.RPC_WORLD, worldInfo.getIp(),worldInfo.getPort()); - ClientAdapterPo rPCClient = null; + ClientAdapterPo rPCClient = null; try { rPCClient = ClientAdapterPo.getClientAdapterPo(serviceKey); - InnerResult innerResult = rPCClient.getClient().messageRequest(GameApplication.serverProperties.getId(),getProtoIdBySimpleName(message.getClass().getSimpleName()) , ByteBuffer.wrap(message.toByteArray())); + InnerResult innerResult = rPCClient.getClient().messageRequest(GameApplication.serverProperties.getId(),uid,getProtoIdBySimpleName(message.getClass().getSimpleName()) , ByteBuffer.wrap(message.toByteArray())); processMessage( new RpcMessage(0,uid, innerResult.getProtpId(),ByteBuffer.wrap(innerResult.getMessage()))); } catch (Exception e) { LOGGER.info("callback=>",e); @@ -60,7 +56,7 @@ public class WorldHelper extends GlobalProtocolsManager { //只做转发 返回值暂时没用 private static InnerResult processMessage(RpcMessage message) throws Exception { - _gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); + gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); if (baseHandler == null) { //检查一下 没有定义handler 世界服回传的消息不拦截则透传 MessageUtil.sendIndicationMessage(message.getUid(),message.getProtpId(),message.getMessage().array()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ClientAdapterPo.java b/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ClientAdapterPo.java index 0e09d233f..052c9ccda 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ClientAdapterPo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ClientAdapterPo.java @@ -4,6 +4,7 @@ package com.ljsd.jieling.thrift.pool; import com.global.thrift.idl.RPCgTGRequestIFace; import com.ljsd.jieling.thrift.idl.RPCMatchRequestIFace; import com.ljsd.jieling.thrift.idl.RPCRequestIFace; +import com.world.thrift.idl.RPCgTwRequestIFace; import org.apache.commons.pool2.impl.GenericKeyedObjectPool; import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TProtocol; @@ -46,8 +47,8 @@ public class ClientAdapterPo{ return new RPCMatchRequestIFace.Client(protocol); } else if(key[0].equals(ServiceKey.RPC_GLOBAL)){ return new RPCgTGRequestIFace.Client(protocol); - }else if(key[0].equals(ServiceKey.RPC_GLOBAL)){ - return new RPCgTGRequestIFace.Client(protocol); + }else if(key[0].equals(ServiceKey.RPC_WORLD)){ + return new RPCgTwRequestIFace.Client(protocol); } return null; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ThriftFactory.java b/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ThriftFactory.java index a7c11a715..f936b1e91 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ThriftFactory.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thrift/pool/ThriftFactory.java @@ -58,6 +58,10 @@ public class ThriftFactory extends BaseKeyedPooledObjectFactory pool = null; diff --git a/worldserver/src/main/java/com/world/WorldServerApplication.java b/worldserver/src/main/java/com/world/WorldServerApplication.java index 4d8e6594f..450feae07 100644 --- a/worldserver/src/main/java/com/world/WorldServerApplication.java +++ b/worldserver/src/main/java/com/world/WorldServerApplication.java @@ -5,14 +5,23 @@ import com.world.config.CoreSettings; import com.world.redis.RedisUtil; import com.world.thread.ThreadManager; import com.world.thrift.idl.pool.RPCServerTask; +import com.world.thrift.idl.pool.WorldRpcService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableScheduling; /** * Description: 提供跨服玩法 * Author: zsx * CreateDate: 2020/11/19 11:48 */ +@Configuration +@EnableAutoConfiguration +@ComponentScan +@EnableScheduling public class WorldServerApplication { private static final Logger LOGGER = LoggerFactory.getLogger(WorldServerApplication.class); public static CoreSettings bean; @@ -23,9 +32,7 @@ public class WorldServerApplication { //线程池管理器 ThreadManager threadManager = ThreadManager.getInstance(); threadManager.init(); - - // .initHandler("com.world.handler"); - + WorldRpcService.initHandler("com.world.handler",WorldServerApplication.class.getClassLoader()); new RPCServerTask().start(); RedisUtil.getInstence().init(); bean = ConfigurableApplicationContextManager.getBean(CoreSettings.class); diff --git a/worldserver/src/main/java/com/world/config/ConfigurableApplicationContextManager.java b/worldserver/src/main/java/com/world/config/ConfigurableApplicationContextManager.java index fc6cf73ef..78fa82ae2 100644 --- a/worldserver/src/main/java/com/world/config/ConfigurableApplicationContextManager.java +++ b/worldserver/src/main/java/com/world/config/ConfigurableApplicationContextManager.java @@ -1,6 +1,6 @@ package com.world.config; -import com.global.WorldServerApplication; +import com.world.WorldServerApplication; import org.springframework.boot.SpringApplication; import org.springframework.context.ConfigurableApplicationContext; diff --git a/worldserver/src/main/java/com/world/handler/GetWorldArenaInfoRequestHandler.java b/worldserver/src/main/java/com/world/handler/GetWorldArenaInfoRequestHandler.java index e756d1ca5..cc36e700d 100644 --- a/worldserver/src/main/java/com/world/handler/GetWorldArenaInfoRequestHandler.java +++ b/worldserver/src/main/java/com/world/handler/GetWorldArenaInfoRequestHandler.java @@ -4,7 +4,7 @@ import com.google.protobuf.GeneratedMessage; import com.world.WorldServerApplication; import rpc.global.GlobalProto; import rpc.net.RpcMessage; -import rpc.net._gtGBaseHandler; +import rpc.net.gtGBaseHandler; import rpc.world.WorldProto; /** @@ -12,7 +12,7 @@ import rpc.world.WorldProto; * Author: zsx * CreateDate: 2020/11/19 10:51 */ -public class GetWorldArenaInfoRequestHandler extends _gtGBaseHandler { +public class GetWorldArenaInfoRequestHandler extends gtGBaseHandler { @Override public GeneratedMessage processWithProto(RpcMessage rpcMessage, WorldProto.GetWorldArenaInfoRequest proto) throws Exception { diff --git a/worldserver/src/main/java/com/world/thrift/idl/pool/WorldRpcService.java b/worldserver/src/main/java/com/world/thrift/idl/pool/WorldRpcService.java index a6f5eae9c..fd3989b5a 100644 --- a/worldserver/src/main/java/com/world/thrift/idl/pool/WorldRpcService.java +++ b/worldserver/src/main/java/com/world/thrift/idl/pool/WorldRpcService.java @@ -7,7 +7,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import rpc.net.GlobalProtocolsManager; import rpc.net.RpcMessage; -import rpc.net._gtGBaseHandler; +import rpc.net.gtGBaseHandler; import util.ErrorPrintUtil; import java.nio.ByteBuffer; @@ -24,6 +24,7 @@ public class WorldRpcService extends GlobalProtocolsManager implements RPCgTwReq @Override public InnerResult messageRequest(int serverId, int uid, int protpId, ByteBuffer message) throws TException { try { + System.out.println("messageRequest serverId = " + serverId); return processMessage(new RpcMessage(serverId, protpId, message)); } catch (Exception e) { LOGGER.error(ErrorPrintUtil.getExceptionStackTraceFileLineAndMethod(e)); @@ -33,7 +34,7 @@ public class WorldRpcService extends GlobalProtocolsManager implements RPCgTwReq private InnerResult processMessage(RpcMessage message) throws Exception { - _gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); + gtGBaseHandler baseHandler = getHandlers().get(message.getProtpId()); if (baseHandler == null) { //检查一下 没有定义handler LOGGER.info("request unknow commond : " + message.getProtpId()); diff --git a/worldserver/src/main/resources/application.properties b/worldserver/src/main/resources/application.properties index 032f31945..715d04546 100644 --- a/worldserver/src/main/resources/application.properties +++ b/worldserver/src/main/resources/application.properties @@ -8,7 +8,7 @@ spring.redis.pool.max-idle=8 spring.redis.pool.min-idle=0 #core -services.core.ip=60.1.1.161. +services.core.ip=60.1.1.161 services.core.port=18080 services.core.area=1000 services.core.id=1