Comment-out unknown packet handlers/encoders

These are mostly related to the teapot, music game, and custom teams
This commit is contained in:
KingRainbow44 2023-04-01 20:00:08 -04:00
parent 3e6aa79eb8
commit 772532515e
No known key found for this signature in database
GPG Key ID: FC2CB64B00D257BE
14 changed files with 400 additions and 401 deletions

View File

@ -1,14 +1,14 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.server.game.GameSession;
@Opcodes(PacketOpcodes.AddCustomTeamReq)
public class HandlerAddCustomTeamReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
session.getPlayer().getTeamManager().addNewCustomTeam();
}
}
//package emu.grasscutter.server.packet.recv;
//
//import emu.grasscutter.net.packet.Opcodes;
//import emu.grasscutter.net.packet.PacketHandler;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.server.game.GameSession;
//
//@Opcodes(PacketOpcodes.AddCustomTeamReq)
//public class HandlerAddCustomTeamReq extends PacketHandler {
// @Override
// public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
// session.getPlayer().getTeamManager().addNewCustomTeam();
// }
//}

View File

@ -1,26 +1,26 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.Unk2700BEDLIGJANCJClientReq;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketChangeHomeBgmNotify;
import emu.grasscutter.server.packet.send.PacketChangeHomeBgmRsp;
@Opcodes(PacketOpcodes.Unk2700_BEDLIGJANCJ_ClientReq)
public class HandlerChangeHomeBgmReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
var req = Unk2700BEDLIGJANCJClientReq.Unk2700_BEDLIGJANCJ_ClientReq.parseFrom(payload);
int homeBgmId = req.getUnk2700BJHAMKKECEI();
var home = session.getPlayer().getHome();
home.getHomeSceneItem(session.getPlayer().getSceneId()).setHomeBgmId(homeBgmId);
home.save();
session.send(new PacketChangeHomeBgmNotify(homeBgmId));
session.send(new PacketChangeHomeBgmRsp());
}
}
//package emu.grasscutter.server.packet.recv;
//
//import emu.grasscutter.net.packet.Opcodes;
//import emu.grasscutter.net.packet.PacketHandler;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.Unk2700BEDLIGJANCJClientReq;
//import emu.grasscutter.server.game.GameSession;
//import emu.grasscutter.server.packet.send.PacketChangeHomeBgmNotify;
//import emu.grasscutter.server.packet.send.PacketChangeHomeBgmRsp;
//
//@Opcodes(PacketOpcodes.Unk2700_BEDLIGJANCJ_ClientReq)
//public class HandlerChangeHomeBgmReq extends PacketHandler {
// @Override
// public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
// var req = Unk2700BEDLIGJANCJClientReq.Unk2700_BEDLIGJANCJ_ClientReq.parseFrom(payload);
//
// int homeBgmId = req.getUnk2700BJHAMKKECEI();
// var home = session.getPlayer().getHome();
//
// home.getHomeSceneItem(session.getPlayer().getSceneId()).setHomeBgmId(homeBgmId);
// home.save();
//
// session.send(new PacketChangeHomeBgmNotify(homeBgmId));
// session.send(new PacketChangeHomeBgmRsp());
// }
//}

View File

@ -1,19 +1,19 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketHomeUnknown2Rsp;
@Opcodes(PacketOpcodes.Unk2700_ACILPONNGGK_ClientReq)
public class HandlerHomeUnknown2Req extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
/*
* This packet is about the edit mode
*/
session.send(new PacketHomeUnknown2Rsp());
}
}
//package emu.grasscutter.server.packet.recv;
//
//import emu.grasscutter.net.packet.Opcodes;
//import emu.grasscutter.net.packet.PacketHandler;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.server.game.GameSession;
//import emu.grasscutter.server.packet.send.PacketHomeUnknown2Rsp;
//
//@Opcodes(PacketOpcodes.Unk2700_ACILPONNGGK_ClientReq)
//public class HandlerHomeUnknown2Req extends PacketHandler {
//
// @Override
// public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
// /*
// * This packet is about the edit mode
// */
// session.send(new PacketHomeUnknown2Rsp());
// }
//}

View File

@ -1,16 +1,16 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.RemoveCustomTeamReqOuterClass.RemoveCustomTeamReq;
import emu.grasscutter.server.game.GameSession;
@Opcodes(PacketOpcodes.RemoveCustomTeamReq)
public class HandlerRemoveCustomTeamReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
RemoveCustomTeamReq req = RemoveCustomTeamReq.parseFrom(payload);
session.getPlayer().getTeamManager().removeCustomTeam(req.getId());
}
}
//package emu.grasscutter.server.packet.recv;
//
//import emu.grasscutter.net.packet.Opcodes;
//import emu.grasscutter.net.packet.PacketHandler;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.RemoveCustomTeamReqOuterClass.RemoveCustomTeamReq;
//import emu.grasscutter.server.game.GameSession;
//
//@Opcodes(PacketOpcodes.RemoveCustomTeamReq)
//public class HandlerRemoveCustomTeamReq extends PacketHandler {
// @Override
// public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
// RemoveCustomTeamReq req = RemoveCustomTeamReq.parseFrom(payload);
// session.getPlayer().getTeamManager().removeCustomTeam(req.getId());
// }
//}

View File

@ -1,97 +1,97 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.database.DatabaseHelper;
import emu.grasscutter.game.activity.musicgame.MusicGameActivityHandler;
import emu.grasscutter.game.activity.musicgame.MusicGameBeatmap;
import emu.grasscutter.game.activity.musicgame.MusicGamePlayerData;
import emu.grasscutter.game.props.ActivityType;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.RetcodeOuterClass;
import emu.grasscutter.net.proto.SaveUgcReqOuterClass;
import emu.grasscutter.net.proto.UgcTypeOuterClass;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketActivityInfoNotify;
import emu.grasscutter.server.packet.send.PacketMusicGameCreateBeatmapRsp;
import emu.grasscutter.utils.Utils;
import java.util.Objects;
import lombok.val;
@Opcodes(PacketOpcodes.SaveUgcReq)
public class HandlerSaveUgcReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
val req = SaveUgcReqOuterClass.SaveUgcReq.parseFrom(payload);
// We only support music game user generated content
if (req.getUgcType() != UgcTypeOuterClass.UgcType.UGC_TYPE_MUSIC_GAME) {
session.send(
new PacketMusicGameCreateBeatmapRsp(
RetcodeOuterClass.Retcode.RET_UGC_DISABLED, req.getUgcType()));
return;
}
val briefInfo = req.getMusicBriefInfo();
val musicGameBeatmap =
MusicGameBeatmap.of()
.musicId(briefInfo.getMusicId())
.musicNoteCount(briefInfo.getNoteCount())
.savePosition(briefInfo.getSaveIdx())
.savePageType(briefInfo.getSavePageType())
.version(briefInfo.getVersion())
.afterNoteList(briefInfo.getAfterNoteListList())
.beforeNoteList(briefInfo.getBeforeNoteListList())
.timeLineEditTime(briefInfo.getTimeLineEditTime())
.publishTime(briefInfo.getPublishTime())
.realTimeEditTime(briefInfo.getRealTimeEditTime())
.maxScore(briefInfo.getMaxScore())
.authorUid(session.getPlayer().getUid())
.beatmap(MusicGameBeatmap.parse(req.getMusicRecord().getMusicTrackListList()))
.createTime(Utils.getCurrentSeconds())
.build();
musicGameBeatmap.save();
val playerData =
session
.getPlayer()
.getActivityManager()
.getPlayerActivityDataByActivityType(ActivityType.NEW_ACTIVITY_MUSIC_GAME);
if (playerData.isEmpty()) {
session.send(
new PacketMusicGameCreateBeatmapRsp(
RetcodeOuterClass.Retcode.RET_UGC_DATA_NOT_FOUND, req.getUgcType()));
return;
}
val handler = (MusicGameActivityHandler) playerData.get().getActivityHandler();
val musicGamePlayerData = handler.getMusicGamePlayerData(playerData.get());
val oldBeatmap =
musicGamePlayerData.getPersonalCustomBeatmapRecord().values().stream()
.map(MusicGamePlayerData.CustomBeatmapRecord::getMusicShareId)
.map(DatabaseHelper::getMusicGameBeatmap)
.filter(Objects::nonNull)
.filter(item -> item.getAuthorUid() == session.getPlayer().getUid())
.filter(item -> item.getMusicId() == req.getMusicBriefInfo().getMusicId())
.filter(item -> item.getSavePosition() == req.getMusicBriefInfo().getSaveIdx())
.findFirst();
// delete old beatmap for player
// the old beatmap is still in database so that others can still play.
oldBeatmap.ifPresent(i -> handler.removePersonalBeatmap(playerData.get(), i));
// link this beatmap to player's personal data
handler.addPersonalBeatmap(playerData.get(), musicGameBeatmap);
session.send(
new PacketActivityInfoNotify(
handler.toProto(
playerData.get(),
session.getPlayer().getActivityManager().getConditionExecutor())));
session.send(
new PacketMusicGameCreateBeatmapRsp(musicGameBeatmap.getMusicShareId(), req.getUgcType()));
}
}
//package emu.grasscutter.server.packet.recv;
//
//import emu.grasscutter.database.DatabaseHelper;
//import emu.grasscutter.game.activity.musicgame.MusicGameActivityHandler;
//import emu.grasscutter.game.activity.musicgame.MusicGameBeatmap;
//import emu.grasscutter.game.activity.musicgame.MusicGamePlayerData;
//import emu.grasscutter.game.props.ActivityType;
//import emu.grasscutter.net.packet.Opcodes;
//import emu.grasscutter.net.packet.PacketHandler;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.RetcodeOuterClass;
//import emu.grasscutter.net.proto.SaveUgcReqOuterClass;
//import emu.grasscutter.net.proto.UgcTypeOuterClass;
//import emu.grasscutter.server.game.GameSession;
//import emu.grasscutter.server.packet.send.PacketActivityInfoNotify;
//import emu.grasscutter.server.packet.send.PacketMusicGameCreateBeatmapRsp;
//import emu.grasscutter.utils.Utils;
//import java.util.Objects;
//import lombok.val;
//
//@Opcodes(PacketOpcodes.SaveUgcReq)
//public class HandlerSaveUgcReq extends PacketHandler {
//
// @Override
// public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
// val req = SaveUgcReqOuterClass.SaveUgcReq.parseFrom(payload);
//
// // We only support music game user generated content
// if (req.getUgcType() != UgcTypeOuterClass.UgcType.UGC_TYPE_MUSIC_GAME) {
// session.send(
// new PacketMusicGameCreateBeatmapRsp(
// RetcodeOuterClass.Retcode.RET_UGC_DISABLED, req.getUgcType()));
// return;
// }
// val briefInfo = req.getMusicBriefInfo();
//
// val musicGameBeatmap =
// MusicGameBeatmap.of()
// .musicId(briefInfo.getMusicId())
// .musicNoteCount(briefInfo.getNoteCount())
// .savePosition(briefInfo.getSaveIdx())
// .savePageType(briefInfo.getSavePageType())
// .version(briefInfo.getVersion())
// .afterNoteList(briefInfo.getAfterNoteListList())
// .beforeNoteList(briefInfo.getBeforeNoteListList())
// .timeLineEditTime(briefInfo.getTimeLineEditTime())
// .publishTime(briefInfo.getPublishTime())
// .realTimeEditTime(briefInfo.getRealTimeEditTime())
// .maxScore(briefInfo.getMaxScore())
// .authorUid(session.getPlayer().getUid())
// .beatmap(MusicGameBeatmap.parse(req.getMusicRecord().getMusicTrackListList()))
// .createTime(Utils.getCurrentSeconds())
// .build();
//
// musicGameBeatmap.save();
//
// val playerData =
// session
// .getPlayer()
// .getActivityManager()
// .getPlayerActivityDataByActivityType(ActivityType.NEW_ACTIVITY_MUSIC_GAME);
// if (playerData.isEmpty()) {
// session.send(
// new PacketMusicGameCreateBeatmapRsp(
// RetcodeOuterClass.Retcode.RET_UGC_DATA_NOT_FOUND, req.getUgcType()));
// return;
// }
//
// val handler = (MusicGameActivityHandler) playerData.get().getActivityHandler();
// val musicGamePlayerData = handler.getMusicGamePlayerData(playerData.get());
//
// val oldBeatmap =
// musicGamePlayerData.getPersonalCustomBeatmapRecord().values().stream()
// .map(MusicGamePlayerData.CustomBeatmapRecord::getMusicShareId)
// .map(DatabaseHelper::getMusicGameBeatmap)
// .filter(Objects::nonNull)
// .filter(item -> item.getAuthorUid() == session.getPlayer().getUid())
// .filter(item -> item.getMusicId() == req.getMusicBriefInfo().getMusicId())
// .filter(item -> item.getSavePosition() == req.getMusicBriefInfo().getSaveIdx())
// .findFirst();
//
// // delete old beatmap for player
// // the old beatmap is still in database so that others can still play.
// oldBeatmap.ifPresent(i -> handler.removePersonalBeatmap(playerData.get(), i));
//
// // link this beatmap to player's personal data
// handler.addPersonalBeatmap(playerData.get(), musicGameBeatmap);
//
// session.send(
// new PacketActivityInfoNotify(
// handler.toProto(
// playerData.get(),
// session.getPlayer().getActivityManager().getConditionExecutor())));
// session.send(
// new PacketMusicGameCreateBeatmapRsp(musicGameBeatmap.getMusicShareId(), req.getUgcType()));
// }
//}

View File

@ -1,20 +1,20 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.AddCustomTeamRspOuterClass.AddCustomTeamRsp;
import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode;
public class PacketAddCustomTeamRsp extends BasePacket {
public PacketAddCustomTeamRsp(Retcode retcode) {
super(PacketOpcodes.AddCustomTeamRsp);
AddCustomTeamRsp proto = AddCustomTeamRsp.newBuilder().setRetcode(retcode.getNumber()).build();
this.setData(proto);
}
public PacketAddCustomTeamRsp() {
this(Retcode.RET_SUCC);
}
}
//package emu.grasscutter.server.packet.send;
//
//import emu.grasscutter.net.packet.BasePacket;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.AddCustomTeamRspOuterClass.AddCustomTeamRsp;
//import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode;
//
//public class PacketAddCustomTeamRsp extends BasePacket {
// public PacketAddCustomTeamRsp(Retcode retcode) {
// super(PacketOpcodes.AddCustomTeamRsp);
//
// AddCustomTeamRsp proto = AddCustomTeamRsp.newBuilder().setRetcode(retcode.getNumber()).build();
//
// this.setData(proto);
// }
//
// public PacketAddCustomTeamRsp() {
// this(Retcode.RET_SUCC);
// }
//}

View File

@ -1,62 +1,61 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.BeginCameraSceneLookNotifyOuterClass.BeginCameraSceneLookNotify;
import emu.grasscutter.utils.Position;
import java.util.ArrayList;
import java.util.Collection;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.val;
public class PacketBeginCameraSceneLookNotify extends BasePacket {
public PacketBeginCameraSceneLookNotify(CameraSceneLookNotify parameters) {
super(PacketOpcodes.BeginCameraSceneLookNotify);
val builder =
BeginCameraSceneLookNotify.newBuilder()
.setLookPos(parameters.lookPos.toProto())
.setFollowPos(parameters.followPos.toProto())
.setDuration(parameters.duration)
.setIsAllowInput(parameters.isAllowInput)
.setIsSetFollowPos(parameters.setFollowPos)
.setIsSetScreenXy(parameters.isScreenXY)
.setIsRecoverKeepCurrent(parameters.recoverKeepCurrent)
.setIsChangePlayMode(parameters.isChangePlayMode)
.setScreenY(parameters.screenY)
.setScreenX(parameters.screenX)
.setIsForce(parameters.isForce)
.setIsForce(parameters.isForceWalk)
.setEntityId(parameters.entityId)
.addAllOtherParams(parameters.otherParams);
this.setData(builder);
}
// TODO check default values
// todo find missing field usages:
// enum Unk2700_HIAKNNCKHJB (Unk2700_LNCHDDOOECD)
// Unk3000_MNLLCJMPMNH (uint32)
// Unk2700_DHAHEKOGHBJ (float)
// Unk3000_IEFIKMHCKDH (uint32)
// Unk3000_OGCLMFFADBD (float)
@Data
@NoArgsConstructor
public static class CameraSceneLookNotify {
Position lookPos = new Position();
Position followPos = new Position();
float duration = 0.0f;
boolean isAllowInput = true;
boolean setFollowPos = false;
boolean isScreenXY = false;
boolean recoverKeepCurrent = true;
boolean isForceWalk = false;
boolean isForce = false;
boolean isChangePlayMode = false;
float screenY = 0.0f;
float screenX = 0.0f;
int entityId = 0;
Collection<String> otherParams = new ArrayList<>(0);
}
}
//package emu.grasscutter.server.packet.send;
//
//import emu.grasscutter.net.packet.BasePacket;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.BeginCameraSceneLookNotifyOuterClass.BeginCameraSceneLookNotify;
//import emu.grasscutter.utils.Position;
//import java.util.ArrayList;
//import java.util.Collection;
//import lombok.Data;
//import lombok.NoArgsConstructor;
//
//public class PacketBeginCameraSceneLookNotify extends BasePacket {
//
// public PacketBeginCameraSceneLookNotify(CameraSceneLookNotify parameters) {
// super(PacketOpcodes.BeginCameraSceneLookNotify);
// var builder =
// BeginCameraSceneLookNotify.newBuilder()
// .setLookPos(parameters.lookPos.toProto())
// .setFollowPos(parameters.followPos.toProto())
// .setDuration(parameters.duration)
// .setIsAllowInput(parameters.isAllowInput)
// .setIsSetFollowPos(parameters.setFollowPos)
// .setIsSetScreenXy(parameters.isScreenXY)
// .setIsRecoverKeepCurrent(parameters.recoverKeepCurrent)
// .setIsChangePlayMode(parameters.isChangePlayMode)
// .setScreenY(parameters.screenY)
// .setScreenX(parameters.screenX)
// .setIsForce(parameters.isForce)
// .setIsForce(parameters.isForceWalk)
// .setEntityId(parameters.entityId)
// .addAllOtherParams(parameters.otherParams);
// this.setData(builder);
// }
//
// // TODO check default values
// // todo find missing field usages:
// // enum Unk2700_HIAKNNCKHJB (Unk2700_LNCHDDOOECD)
// // Unk3000_MNLLCJMPMNH (uint32)
// // Unk2700_DHAHEKOGHBJ (float)
// // Unk3000_IEFIKMHCKDH (uint32)
// // Unk3000_OGCLMFFADBD (float)
//
// @Data
// @NoArgsConstructor
// public static class CameraSceneLookNotify {
// Position lookPos = new Position();
// Position followPos = new Position();
// float duration = 0.0f;
// boolean isAllowInput = true;
// boolean setFollowPos = false;
// boolean isScreenXY = false;
// boolean recoverKeepCurrent = true;
// boolean isForceWalk = false;
// boolean isForce = false;
// boolean isChangePlayMode = false;
// float screenY = 0.0f;
// float screenX = 0.0f;
// int entityId = 0;
// Collection<String> otherParams = new ArrayList<>(0);
// }
//}

View File

@ -1,18 +1,18 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.Unk2700FJEHHCPCBLGServerNotify;
public class PacketChangeHomeBgmNotify extends BasePacket {
public PacketChangeHomeBgmNotify(int homeBgmId) {
super(PacketOpcodes.Unk2700_FJEHHCPCBLG_ServerNotify);
var notify =
Unk2700FJEHHCPCBLGServerNotify.Unk2700_FJEHHCPCBLG_ServerNotify.newBuilder()
.setUnk2700BJHAMKKECEI(homeBgmId)
.build();
this.setData(notify);
}
}
//package emu.grasscutter.server.packet.send;
//
//import emu.grasscutter.net.packet.BasePacket;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.Unk2700FJEHHCPCBLGServerNotify;
//
//public class PacketChangeHomeBgmNotify extends BasePacket {
// public PacketChangeHomeBgmNotify(int homeBgmId) {
// super(PacketOpcodes.Unk2700_FJEHHCPCBLG_ServerNotify);
//
// var notify =
// Unk2700FJEHHCPCBLGServerNotify.Unk2700_FJEHHCPCBLG_ServerNotify.newBuilder()
// .setUnk2700BJHAMKKECEI(homeBgmId)
// .build();
//
// this.setData(notify);
// }
//}

View File

@ -1,18 +1,18 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.Unk2700OGHMHELMBNNServerRsp;
public class PacketChangeHomeBgmRsp extends BasePacket {
public PacketChangeHomeBgmRsp() {
super(PacketOpcodes.Unk2700_OGHMHELMBNN_ServerRsp);
var rsp =
Unk2700OGHMHELMBNNServerRsp.Unk2700_OGHMHELMBNN_ServerRsp.newBuilder()
.setRetcode(0)
.build();
this.setData(rsp);
}
}
//package emu.grasscutter.server.packet.send;
//
//import emu.grasscutter.net.packet.BasePacket;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.Unk2700OGHMHELMBNNServerRsp;
//
//public class PacketChangeHomeBgmRsp extends BasePacket {
// public PacketChangeHomeBgmRsp() {
// super(PacketOpcodes.Unk2700_OGHMHELMBNN_ServerRsp);
//
// var rsp =
// Unk2700OGHMHELMBNNServerRsp.Unk2700_OGHMHELMBNN_ServerRsp.newBuilder()
// .setRetcode(0)
// .build();
//
// this.setData(rsp);
// }
//}

View File

@ -1,29 +1,29 @@
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.CustomTeamListNotifyOuterClass.CustomTeamListNotify;
public class PacketCustomTeamListNotify extends BasePacket {
public PacketCustomTeamListNotify(Player player) {
super(PacketOpcodes.CustomTeamListNotify);
CustomTeamListNotify.Builder proto = CustomTeamListNotify.newBuilder();
// Add the id list for custom teams.
for (int id : player.getTeamManager().getTeams().keySet()) {
if (id > 4) {
proto.addCustomTeamIds(id);
}
}
// Add the avatar lists for all the teams the player has.
player
.getTeamManager()
.getTeams()
.forEach((id, teamInfo) -> proto.putAvatarTeamMap(id, teamInfo.toProto(player)));
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.CustomTeamListNotifyOuterClass.CustomTeamListNotify;
//
//public class PacketCustomTeamListNotify extends BasePacket {
// public PacketCustomTeamListNotify(Player player) {
// super(PacketOpcodes.CustomTeamListNotify);
//
// CustomTeamListNotify.Builder proto = CustomTeamListNotify.newBuilder();
//
// // Add the id list for custom teams.
// for (int id : player.getTeamManager().getTeams().keySet()) {
// if (id > 4) {
// proto.addCustomTeamIds(id);
// }
// }
//
// // Add the avatar lists for all the teams the player has.
// player
// .getTeamManager()
// .getTeams()
// .forEach((id, teamInfo) -> proto.putAvatarTeamMap(id, teamInfo.toProto(player)));
//
// this.setData(proto);
// }
//}

View File

@ -1,18 +1,18 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.HomeUnknown1NotifyOuterClass;
public class PacketHomeUnknown1Notify extends BasePacket {
public PacketHomeUnknown1Notify(boolean isEnterEditMode) {
super(PacketOpcodes.Unk2700_JDMPECKFGIG_ServerNotify);
var proto = HomeUnknown1NotifyOuterClass.HomeUnknown1Notify.newBuilder();
proto.setIsEnterEditMode(isEnterEditMode);
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.HomeUnknown1NotifyOuterClass;
//
//public class PacketHomeUnknown1Notify extends BasePacket {
//
// public PacketHomeUnknown1Notify(boolean isEnterEditMode) {
// super(PacketOpcodes.Unk2700_JDMPECKFGIG_ServerNotify);
//
// var proto = HomeUnknown1NotifyOuterClass.HomeUnknown1Notify.newBuilder();
//
// proto.setIsEnterEditMode(isEnterEditMode);
//
// this.setData(proto);
// }
//}

View File

@ -1,21 +1,21 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.RemoveCustomTeamRspOuterClass.RemoveCustomTeamRsp;
import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode;
public class PacketRemoveCustomTeamRsp extends BasePacket {
public PacketRemoveCustomTeamRsp(Retcode retcode, int id) {
super(PacketOpcodes.RemoveCustomTeamRsp);
RemoveCustomTeamRsp proto =
RemoveCustomTeamRsp.newBuilder().setRetcode(retcode.getNumber()).setId(id).build();
this.setData(proto);
}
public PacketRemoveCustomTeamRsp(int id) {
this(Retcode.RET_SUCC, id);
}
}
//package emu.grasscutter.server.packet.send;
//
//import emu.grasscutter.net.packet.BasePacket;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.RemoveCustomTeamRspOuterClass.RemoveCustomTeamRsp;
//import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode;
//
//public class PacketRemoveCustomTeamRsp extends BasePacket {
// public PacketRemoveCustomTeamRsp(Retcode retcode, int id) {
// super(PacketOpcodes.RemoveCustomTeamRsp);
//
// RemoveCustomTeamRsp proto =
// RemoveCustomTeamRsp.newBuilder().setRetcode(retcode.getNumber()).setId(id).build();
//
// this.setData(proto);
// }
//
// public PacketRemoveCustomTeamRsp(int id) {
// this(Retcode.RET_SUCC, id);
// }
//}

View File

@ -1,18 +1,18 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.Unk2700MEBFPBDNPGOServerNotify;
public class PacketUnlockHomeBgmNotify extends BasePacket {
public PacketUnlockHomeBgmNotify(int homeBgmId) {
super(PacketOpcodes.Unk2700_MEBFPBDNPGO_ServerNotify);
var notify =
Unk2700MEBFPBDNPGOServerNotify.Unk2700_MEBFPBDNPGO_ServerNotify.newBuilder()
.addUnk2700ELJPLMIHNIP(homeBgmId)
.build();
this.setData(notify);
}
}
//package emu.grasscutter.server.packet.send;
//
//import emu.grasscutter.net.packet.BasePacket;
//import emu.grasscutter.net.packet.PacketOpcodes;
//import emu.grasscutter.net.proto.Unk2700MEBFPBDNPGOServerNotify;
//
//public class PacketUnlockHomeBgmNotify extends BasePacket {
// public PacketUnlockHomeBgmNotify(int homeBgmId) {
// super(PacketOpcodes.Unk2700_MEBFPBDNPGO_ServerNotify);
//
// var notify =
// Unk2700MEBFPBDNPGOServerNotify.Unk2700_MEBFPBDNPGO_ServerNotify.newBuilder()
// .addUnk2700ELJPLMIHNIP(homeBgmId)
// .build();
//
// this.setData(notify);
// }
//}

View File

@ -1,25 +1,25 @@
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.Unk2700LOHBMOKOPLHServerNotify;
public class PacketUnlockedHomeBgmNotify extends BasePacket {
public PacketUnlockedHomeBgmNotify(Player player) {
super(PacketOpcodes.Unk2700_LOHBMOKOPLH_ServerNotify);
if (player.getRealmList() == null) {
return;
}
var unlocked = player.getHome().getUnlockedHomeBgmList();
var notify =
Unk2700LOHBMOKOPLHServerNotify.Unk2700_LOHBMOKOPLH_ServerNotify.newBuilder()
.addAllUnk2700KMEKMNONMGE(unlocked)
.build();
this.setData(notify);
}
}
//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.Unk2700LOHBMOKOPLHServerNotify;
//
//public class PacketUnlockedHomeBgmNotify extends BasePacket {
// public PacketUnlockedHomeBgmNotify(Player player) {
// super(PacketOpcodes.Unk2700_LOHBMOKOPLH_ServerNotify);
//
// if (player.getRealmList() == null) {
// return;
// }
//
// var unlocked = player.getHome().getUnlockedHomeBgmList();
//
// var notify =
// Unk2700LOHBMOKOPLHServerNotify.Unk2700_LOHBMOKOPLH_ServerNotify.newBuilder()
// .addAllUnk2700KMEKMNONMGE(unlocked)
// .build();
//
// this.setData(notify);
// }
//}