content: //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.MusicGameCreateBeatmapReqOuterClass;
  //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;
  //
  //@Opcodes(PacketOpcodes.MusicGameCreateBeatmapReq)
  //public class HandlerMusicGameCreateBeatmapReq extends PacketHandler {
  //
  //	@Override
  //	public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
  //		var req = MusicGameCreateBeatmapReqOuterClass.MusicGameCreateBeatmapReq.parseFrom(payload);
  //
  //        var musicGameBeatmap = MusicGameBeatmap.of()
  //            .musicId(req.getMusicBriefInfo().getMusicId())
  //            .musicNoteCount(req.getMusicBriefInfo().getMusicNoteCount())
  //            .savePosition(req.getMusicBriefInfo().getPosition())
  //            .maxScore(req.getMusicBriefInfo().getMaxScore())
  //            .authorUid(session.getPlayer().getUid())
  //            .beatmap(MusicGameBeatmap.parse(req.getMusicRecord().getBeatmapItemListList()))
  //            .createTime(Utils.getCurrentSeconds())
  //            .build();
  //
  //        musicGameBeatmap.save();
  //
  //        var playerData = session.getPlayer().getActivityManager().getPlayerActivityDataByActivityType(ActivityType.NEW_ACTIVITY_MUSIC_GAME);
  //        if(playerData.isEmpty()){
  //            return;
  //        }
  //
  //        var handler = (MusicGameActivityHandler) playerData.get().getActivityHandler();
  //        var musicGamePlayerData = handler.getMusicGamePlayerData(playerData.get());
  //
  //        var 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().getPosition())
  //            .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.send(new PacketMusicGameCreateBeatmapRsp(musicGameBeatmap.getMusicShareId(), req.getUnknownEnum1()));
  //	}
  //
  //}
  