mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-23 04:15:49 +01:00
Continue updating/refactoring classes
Most code is matched from `Grasscutter-Quests`.
This commit is contained in:
@@ -1,18 +1,18 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.ChangeGameTimeRspOuterClass.ChangeGameTimeRsp;
|
||||
|
||||
public class PacketChangeGameTimeRsp extends BasePacket {
|
||||
|
||||
public PacketChangeGameTimeRsp(Player player) {
|
||||
super(PacketOpcodes.ChangeGameTimeRsp);
|
||||
|
||||
ChangeGameTimeRsp proto =
|
||||
ChangeGameTimeRsp.newBuilder().setCurGameTime(player.getScene().getTime()).build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.ChangeGameTimeRspOuterClass.ChangeGameTimeRsp;
|
||||
|
||||
public class PacketChangeGameTimeRsp extends BasePacket {
|
||||
|
||||
public PacketChangeGameTimeRsp(Player player) {
|
||||
super(PacketOpcodes.ChangeGameTimeRsp);
|
||||
|
||||
ChangeGameTimeRsp proto =
|
||||
ChangeGameTimeRsp.newBuilder().setCurGameTime(player.getWorld().getGameTime()).build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,64 +1,13 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.dungeons.challenge.WorldChallenge;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.DungeonSettleNotifyOuterClass.DungeonSettleNotify;
|
||||
import emu.grasscutter.net.proto.ItemParamOuterClass;
|
||||
import emu.grasscutter.net.proto.TowerLevelEndNotifyOuterClass.TowerLevelEndNotify;
|
||||
|
||||
public class PacketDungeonSettleNotify extends BasePacket {
|
||||
|
||||
public PacketDungeonSettleNotify(WorldChallenge challenge) {
|
||||
super(PacketOpcodes.DungeonSettleNotify);
|
||||
|
||||
DungeonSettleNotify proto =
|
||||
DungeonSettleNotify.newBuilder()
|
||||
.setDungeonId(challenge.getScene().getDungeonData().getId())
|
||||
.setIsSuccess(challenge.isSuccess())
|
||||
.setCloseTime(challenge.getScene().getAutoCloseTime())
|
||||
.setResult(challenge.isSuccess() ? 1 : 0)
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketDungeonSettleNotify(
|
||||
WorldChallenge challenge, boolean canJump, boolean hasNextLevel, int nextFloorId) {
|
||||
super(PacketOpcodes.DungeonSettleNotify);
|
||||
|
||||
var continueStatus =
|
||||
TowerLevelEndNotify.ContinueStateType.CONTINUE_STATE_TYPE_CAN_NOT_CONTINUE_VALUE;
|
||||
if (challenge.isSuccess() && canJump) {
|
||||
continueStatus =
|
||||
hasNextLevel
|
||||
? TowerLevelEndNotify.ContinueStateType.CONTINUE_STATE_TYPE_CAN_ENTER_NEXT_LEVEL_VALUE
|
||||
: TowerLevelEndNotify.ContinueStateType
|
||||
.CONTINUE_STATE_TYPE_CAN_ENTER_NEXT_FLOOR_VALUE;
|
||||
}
|
||||
|
||||
var towerLevelEndNotify =
|
||||
TowerLevelEndNotify.newBuilder()
|
||||
.setIsSuccess(challenge.isSuccess())
|
||||
.setContinueState(continueStatus)
|
||||
.addFinishedStarCondList(1)
|
||||
.addFinishedStarCondList(2)
|
||||
.addFinishedStarCondList(3)
|
||||
.addRewardItemList(
|
||||
ItemParamOuterClass.ItemParam.newBuilder().setItemId(201).setCount(1000).build());
|
||||
if (nextFloorId > 0 && canJump) {
|
||||
towerLevelEndNotify.setNextFloorId(nextFloorId);
|
||||
}
|
||||
|
||||
DungeonSettleNotify proto =
|
||||
DungeonSettleNotify.newBuilder()
|
||||
.setDungeonId(challenge.getScene().getDungeonData().getId())
|
||||
.setIsSuccess(challenge.isSuccess())
|
||||
.setCloseTime(challenge.getScene().getAutoCloseTime())
|
||||
.setResult(challenge.isSuccess() ? 1 : 0)
|
||||
.setTowerLevelEndNotify(towerLevelEndNotify.build())
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.dungeons.dungeon_results.BaseDungeonResult;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
|
||||
public class PacketDungeonSettleNotify extends BasePacket {
|
||||
public PacketDungeonSettleNotify(BaseDungeonResult result) {
|
||||
super(PacketOpcodes.DungeonSettleNotify);
|
||||
|
||||
this.setData(result.getProto());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,33 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.game.props.FightProperty;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.EntityFightPropUpdateNotifyOuterClass.EntityFightPropUpdateNotify;
|
||||
|
||||
public class PacketEntityFightPropUpdateNotify extends BasePacket {
|
||||
|
||||
public PacketEntityFightPropUpdateNotify(GameEntity entity, FightProperty prop) {
|
||||
super(PacketOpcodes.EntityFightPropUpdateNotify);
|
||||
|
||||
EntityFightPropUpdateNotify proto =
|
||||
EntityFightPropUpdateNotify.newBuilder()
|
||||
.setEntityId(entity.getId())
|
||||
.putFightPropMap(prop.getId(), entity.getFightProperty(prop))
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.game.props.FightProperty;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.EntityFightPropUpdateNotifyOuterClass.EntityFightPropUpdateNotify;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
public class PacketEntityFightPropUpdateNotify extends BasePacket {
|
||||
public PacketEntityFightPropUpdateNotify(GameEntity entity, FightProperty prop) {
|
||||
super(PacketOpcodes.EntityFightPropUpdateNotify);
|
||||
|
||||
EntityFightPropUpdateNotify proto =
|
||||
EntityFightPropUpdateNotify.newBuilder()
|
||||
.setEntityId(entity.getId())
|
||||
.putFightPropMap(prop.getId(), entity.getFightProperty(prop))
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketEntityFightPropUpdateNotify(GameEntity entity, Collection<FightProperty> props) {
|
||||
super(PacketOpcodes.EntityFightPropUpdateNotify);
|
||||
|
||||
var protoBuilder = EntityFightPropUpdateNotify.newBuilder()
|
||||
.setEntityId(entity.getId());
|
||||
props.forEach(p -> protoBuilder.putFightPropMap(p.getId(), entity.getFightProperty(p)));
|
||||
|
||||
this.setData(protoBuilder);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.game.quest.GameMainQuest;
|
||||
import emu.grasscutter.game.quest.enums.ParentQuestState;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.FinishedParentQuestNotifyOuterClass.FinishedParentQuestNotify;
|
||||
|
||||
public class PacketFinishedParentQuestNotify extends BasePacket {
|
||||
|
||||
public PacketFinishedParentQuestNotify(Player player) {
|
||||
super(PacketOpcodes.FinishedParentQuestNotify, true);
|
||||
|
||||
FinishedParentQuestNotify.Builder proto = FinishedParentQuestNotify.newBuilder();
|
||||
|
||||
for (GameMainQuest mainQuest : player.getQuestManager().getMainQuests().values()) {
|
||||
// Canceled Quests do not appear in this packet
|
||||
if (mainQuest.getState() != ParentQuestState.PARENT_QUEST_STATE_CANCELED) {
|
||||
proto.addParentQuestList(mainQuest.toProto());
|
||||
}
|
||||
}
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.game.quest.GameMainQuest;
|
||||
import emu.grasscutter.game.quest.enums.ParentQuestState;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.FinishedParentQuestNotifyOuterClass.FinishedParentQuestNotify;
|
||||
|
||||
public class PacketFinishedParentQuestNotify extends BasePacket {
|
||||
|
||||
public PacketFinishedParentQuestNotify(Player player) {
|
||||
super(PacketOpcodes.FinishedParentQuestNotify, true);
|
||||
|
||||
FinishedParentQuestNotify.Builder proto = FinishedParentQuestNotify.newBuilder();
|
||||
|
||||
for (GameMainQuest mainQuest : player.getQuestManager().getMainQuests().values()) {
|
||||
//Canceled Quests do not appear in this packet
|
||||
if (mainQuest.getState() != ParentQuestState.PARENT_QUEST_STATE_CANCELED) {
|
||||
proto.addParentQuestList(mainQuest.toProto(false));
|
||||
}
|
||||
}
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,31 +1,33 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.quest.GameMainQuest;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.FinishedParentQuestUpdateNotifyOuterClass.FinishedParentQuestUpdateNotify;
|
||||
import java.util.List;
|
||||
|
||||
public class PacketFinishedParentQuestUpdateNotify extends BasePacket {
|
||||
|
||||
public PacketFinishedParentQuestUpdateNotify(GameMainQuest quest) {
|
||||
super(PacketOpcodes.FinishedParentQuestUpdateNotify);
|
||||
|
||||
FinishedParentQuestUpdateNotify proto =
|
||||
FinishedParentQuestUpdateNotify.newBuilder().addParentQuestList(quest.toProto()).build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketFinishedParentQuestUpdateNotify(List<GameMainQuest> quests) {
|
||||
super(PacketOpcodes.FinishedParentQuestUpdateNotify);
|
||||
|
||||
var proto = FinishedParentQuestUpdateNotify.newBuilder();
|
||||
|
||||
for (GameMainQuest mainQuest : quests) {
|
||||
proto.addParentQuestList(mainQuest.toProto());
|
||||
}
|
||||
proto.build();
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.quest.GameMainQuest;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.FinishedParentQuestUpdateNotifyOuterClass.FinishedParentQuestUpdateNotify;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PacketFinishedParentQuestUpdateNotify extends BasePacket {
|
||||
|
||||
public PacketFinishedParentQuestUpdateNotify(GameMainQuest quest) {
|
||||
super(PacketOpcodes.FinishedParentQuestUpdateNotify);
|
||||
|
||||
FinishedParentQuestUpdateNotify proto = FinishedParentQuestUpdateNotify.newBuilder()
|
||||
.addParentQuestList(quest.toProto(true))
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketFinishedParentQuestUpdateNotify(List<GameMainQuest> quests) {
|
||||
super(PacketOpcodes.FinishedParentQuestUpdateNotify);
|
||||
|
||||
var proto = FinishedParentQuestUpdateNotify.newBuilder();
|
||||
|
||||
for (GameMainQuest mainQuest : quests) {
|
||||
proto.addParentQuestList(mainQuest.toProto(true));
|
||||
}
|
||||
proto.build();
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
|
||||
public class PacketHomeUnknown2Rsp extends BasePacket {
|
||||
|
||||
public PacketHomeUnknown2Rsp() {
|
||||
super(PacketOpcodes.Unk2700_KIIOGMKFNNP_ServerRsp);
|
||||
}
|
||||
}
|
||||
//package emu.grasscutter.server.packet.send;
|
||||
//
|
||||
//import emu.grasscutter.net.packet.BasePacket;
|
||||
//import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
//
|
||||
//public class PacketHomeUnknown2Rsp extends BasePacket {
|
||||
//
|
||||
// public PacketHomeUnknown2Rsp() {
|
||||
// super(PacketOpcodes.Unk2700_KIIOGMKFNNP_ServerRsp);
|
||||
// }
|
||||
//}
|
||||
|
||||
@@ -1,18 +1,32 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.MusicGameSettleRspOuterClass;
|
||||
|
||||
public class PacketMusicGameSettleRsp extends BasePacket {
|
||||
|
||||
public PacketMusicGameSettleRsp(int musicBasicId, long musicShareId, boolean isNewRecord) {
|
||||
super(PacketOpcodes.MusicGameSettleRsp);
|
||||
|
||||
var proto = MusicGameSettleRspOuterClass.MusicGameSettleRsp.newBuilder();
|
||||
|
||||
proto.setMusicBasicId(musicBasicId).setUgcGuid(musicShareId).setIsNewRecord(isNewRecord);
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.MusicGameSettleReqOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicGameSettleRspOuterClass;
|
||||
import emu.grasscutter.net.proto.RetcodeOuterClass;
|
||||
|
||||
public class PacketMusicGameSettleRsp extends BasePacket {
|
||||
|
||||
public PacketMusicGameSettleRsp(int musicBasicId, long musicShareId, boolean isNewRecord) {
|
||||
super(PacketOpcodes.MusicGameSettleRsp);
|
||||
|
||||
var proto = MusicGameSettleRspOuterClass.MusicGameSettleRsp.newBuilder();
|
||||
|
||||
proto.setMusicBasicId(musicBasicId).setUgcGuid(musicShareId).setIsNewRecord(isNewRecord);
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketMusicGameSettleRsp(RetcodeOuterClass.Retcode errorCode, MusicGameSettleReqOuterClass.MusicGameSettleReq req) {
|
||||
super(PacketOpcodes.MusicGameSettleRsp);
|
||||
|
||||
var proto = MusicGameSettleRspOuterClass.MusicGameSettleRsp.newBuilder()
|
||||
.setRetcode(errorCode.getNumber())
|
||||
.setMusicBasicId(req.getMusicBasicId())
|
||||
.setUgcGuid(req.getUgcGuid());
|
||||
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,20 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.entity.platform.EntityPlatform;
|
||||
import emu.grasscutter.game.world.Scene;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.PlatformStartRouteNotifyOuterClass;
|
||||
|
||||
public class PacketPlatformStartRouteNotify extends BasePacket {
|
||||
public PacketPlatformStartRouteNotify(EntityPlatform entity, Scene scene) {
|
||||
super(PacketOpcodes.PlatformStartRouteNotify);
|
||||
|
||||
var notify =
|
||||
PlatformStartRouteNotifyOuterClass.PlatformStartRouteNotify.newBuilder()
|
||||
.setEntityId(entity.getId())
|
||||
.setSceneTime(scene.getSceneTime())
|
||||
.setPlatform(entity.onStartRoute())
|
||||
.build();
|
||||
|
||||
this.setData(notify);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.entity.EntityGadget;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.PlatformStartRouteNotifyOuterClass.PlatformStartRouteNotify;
|
||||
import lombok.val;
|
||||
|
||||
public class PacketPlatformStartRouteNotify extends BasePacket {
|
||||
public PacketPlatformStartRouteNotify(EntityGadget gadgetEntity) {
|
||||
super(PacketOpcodes.PlatformStartRouteNotify);
|
||||
|
||||
val notify = PlatformStartRouteNotify.newBuilder()
|
||||
.setEntityId(gadgetEntity.getId())
|
||||
.setSceneTime(gadgetEntity.getScene().getSceneTime())
|
||||
.setPlatform(gadgetEntity.getPlatformInfo());
|
||||
|
||||
this.setData(notify);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,20 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.entity.platform.EntityPlatform;
|
||||
import emu.grasscutter.game.world.Scene;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.PlatformStopRouteNotifyOuterClass;
|
||||
|
||||
public class PacketPlatformStopRouteNotify extends BasePacket {
|
||||
public PacketPlatformStopRouteNotify(EntityPlatform entity, Scene scene) {
|
||||
super(PacketOpcodes.PlatformStopRouteNotify);
|
||||
|
||||
var notify =
|
||||
PlatformStopRouteNotifyOuterClass.PlatformStopRouteNotify.newBuilder()
|
||||
.setPlatform(entity.onStopRoute())
|
||||
.setSceneTime(scene.getSceneTime())
|
||||
.setEntityId(entity.getId())
|
||||
.build();
|
||||
|
||||
this.setData(notify);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.entity.EntityGadget;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.PlatformStopRouteNotifyOuterClass;
|
||||
|
||||
public class PacketPlatformStopRouteNotify extends BasePacket {
|
||||
public PacketPlatformStopRouteNotify(EntityGadget gadgetEntity) {
|
||||
super(PacketOpcodes.PlatformStopRouteNotify);
|
||||
|
||||
var notify = PlatformStopRouteNotifyOuterClass.PlatformStopRouteNotify.newBuilder()
|
||||
.setPlatform(gadgetEntity.getPlatformInfo())
|
||||
.setSceneTime(gadgetEntity.getScene().getSceneTime())
|
||||
.setEntityId(gadgetEntity.getId())
|
||||
.build();
|
||||
|
||||
this.setData(notify);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.PlayerGameTimeNotifyOuterClass.PlayerGameTimeNotify;
|
||||
|
||||
public class PacketPlayerGameTimeNotify extends BasePacket {
|
||||
|
||||
public PacketPlayerGameTimeNotify(Player player) {
|
||||
super(PacketOpcodes.PlayerGameTimeNotify);
|
||||
|
||||
PlayerGameTimeNotify proto =
|
||||
PlayerGameTimeNotify.newBuilder()
|
||||
.setGameTime(player.getScene().getTime())
|
||||
.setUid(player.getUid())
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.PlayerGameTimeNotifyOuterClass.PlayerGameTimeNotify;
|
||||
|
||||
public class PacketPlayerGameTimeNotify extends BasePacket {
|
||||
|
||||
public PacketPlayerGameTimeNotify(Player player) {
|
||||
super(PacketOpcodes.PlayerGameTimeNotify);
|
||||
|
||||
PlayerGameTimeNotify proto =
|
||||
PlayerGameTimeNotify.newBuilder()
|
||||
.setGameTime(player.getWorld().getGameTime())
|
||||
.setUid(player.getUid())
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user