mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-03-29 12:02:46 +02:00
Update gc to 3.3 (#1981)
* replace the deprecated api * update proto * delete music game * fixed codes * fix costume switch * fix mail bug * Bump version number. * Re-add max boss chest number Co-authored-by: GanyusLeftHorn <1244229+GanyusLeftHorn@users.noreply.github.com>
This commit is contained in:
@@ -5,7 +5,7 @@ import emu.grasscutter.game.activity.GameActivity;
|
||||
import emu.grasscutter.game.activity.PlayerActivityData;
|
||||
import emu.grasscutter.game.props.ActivityType;
|
||||
import emu.grasscutter.net.proto.ActivityInfoOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicBriefInfoOuterClass;
|
||||
import emu.grasscutter.net.proto.UgcMusicBriefInfoOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicGameActivityDetailInfoOuterClass;
|
||||
import emu.grasscutter.utils.JsonUtils;
|
||||
|
||||
@@ -29,15 +29,15 @@ public class MusicGameActivityHandler extends ActivityHandler {
|
||||
.putAllMusicGameRecordMap(
|
||||
musicGamePlayerData.getMusicGameRecord().values().stream()
|
||||
.collect(Collectors.toMap(MusicGamePlayerData.MusicGameRecord::getMusicId, MusicGamePlayerData.MusicGameRecord::toProto)))
|
||||
.addAllPersonCustomBeatmap(musicGamePlayerData.getPersonalCustomBeatmapRecord().values().stream()
|
||||
.map(MusicGamePlayerData.CustomBeatmapRecord::toPersonalBriefProto)
|
||||
.map(MusicBriefInfoOuterClass.MusicBriefInfo.Builder::build)
|
||||
.toList())
|
||||
|
||||
.addAllOthersCustomBeatmap(musicGamePlayerData.getOthersCustomBeatmapRecord().values().stream()
|
||||
.map(MusicGamePlayerData.CustomBeatmapRecord::toOthersBriefProto)
|
||||
.map(MusicBriefInfoOuterClass.MusicBriefInfo.Builder::build)
|
||||
.toList())
|
||||
// .addAllPersonCustomBeatmap(musicGamePlayerData.getPersonalCustomBeatmapRecord().values().stream()
|
||||
// .map(MusicGamePlayerData.CustomBeatmapRecord::toPersonalBriefProto)
|
||||
// .map(UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.Builder::build)
|
||||
// .toList())
|
||||
//
|
||||
// .addAllOthersCustomBeatmap(musicGamePlayerData.getOthersCustomBeatmapRecord().values().stream()
|
||||
// .map(MusicGamePlayerData.CustomBeatmapRecord::toOthersBriefProto)
|
||||
// .map(UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.Builder::build)
|
||||
// .toList())
|
||||
.build());
|
||||
}
|
||||
|
||||
|
||||
@@ -3,10 +3,10 @@ package emu.grasscutter.game.activity.musicgame;
|
||||
import dev.morphia.annotations.Entity;
|
||||
import dev.morphia.annotations.Id;
|
||||
import emu.grasscutter.database.DatabaseHelper;
|
||||
import emu.grasscutter.net.proto.MusicBeatmapListOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicBeatmapNoteOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicBeatmapOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicBriefInfoOuterClass;
|
||||
import emu.grasscutter.net.proto.UgcMusicRecordOuterClass;
|
||||
import emu.grasscutter.net.proto.UgcMusicNoteOuterClass;
|
||||
import emu.grasscutter.net.proto.UgcMusicTrackOuterClass;
|
||||
import emu.grasscutter.net.proto.UgcMusicBriefInfoOuterClass;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
@@ -43,40 +43,39 @@ public class MusicGameBeatmap {
|
||||
DatabaseHelper.saveMusicGameBeatmap(this);
|
||||
}
|
||||
|
||||
public static List<List<BeatmapNote>> parse(List<MusicBeatmapListOuterClass.MusicBeatmapList> beatmapItemListList) {
|
||||
public static List<List<BeatmapNote>> parse(List<UgcMusicTrackOuterClass.UgcMusicTrack> beatmapItemListList) {
|
||||
return beatmapItemListList.stream()
|
||||
.map(item -> item.getBeatmapNoteListList().stream()
|
||||
.map(item -> item.getMusicNoteListList().stream()
|
||||
.map(BeatmapNote::parse)
|
||||
.toList())
|
||||
.toList();
|
||||
}
|
||||
|
||||
public MusicBeatmapOuterClass.MusicBeatmap toProto(){
|
||||
return MusicBeatmapOuterClass.MusicBeatmap.newBuilder()
|
||||
public UgcMusicRecordOuterClass.UgcMusicRecord toProto(){
|
||||
return UgcMusicRecordOuterClass.UgcMusicRecord.newBuilder()
|
||||
.setMusicId(musicId)
|
||||
.addAllBeatmapItemList(beatmap.stream()
|
||||
.addAllMusicTrackList(beatmap.stream()
|
||||
.map(this::musicBeatmapListToProto)
|
||||
.toList())
|
||||
.build();
|
||||
}
|
||||
|
||||
public MusicBriefInfoOuterClass.MusicBriefInfo.Builder toBriefProto(){
|
||||
public UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.Builder toBriefProto(){
|
||||
var player = DatabaseHelper.getPlayerByUid(authorUid);
|
||||
|
||||
return MusicBriefInfoOuterClass.MusicBriefInfo.newBuilder()
|
||||
return UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.newBuilder()
|
||||
.setMusicId(musicId)
|
||||
.setMusicNoteCount(musicNoteCount)
|
||||
.setMusicShareId(musicShareId)
|
||||
// .setMusicNoteCount(musicNoteCount)
|
||||
.setUgcGuid(musicShareId)
|
||||
.setMaxScore(maxScore)
|
||||
.setShareTime(createTime)
|
||||
.setAuthorNickname(player.getNickname())
|
||||
.setVersion(1)
|
||||
;
|
||||
// .setShareTime(createTime)
|
||||
.setCreatorNickname(player.getNickname())
|
||||
.setVersion(1);
|
||||
}
|
||||
|
||||
private MusicBeatmapListOuterClass.MusicBeatmapList musicBeatmapListToProto(List<BeatmapNote> beatmapNoteList){
|
||||
return MusicBeatmapListOuterClass.MusicBeatmapList.newBuilder()
|
||||
.addAllBeatmapNoteList(beatmapNoteList.stream()
|
||||
private UgcMusicTrackOuterClass.UgcMusicTrack musicBeatmapListToProto(List<BeatmapNote> beatmapNoteList){
|
||||
return UgcMusicTrackOuterClass.UgcMusicTrack.newBuilder()
|
||||
.addAllMusicNoteList(beatmapNoteList.stream()
|
||||
.map(BeatmapNote::toProto)
|
||||
.toList())
|
||||
.build();
|
||||
@@ -90,15 +89,15 @@ public class MusicGameBeatmap {
|
||||
int startTime;
|
||||
int endTime;
|
||||
|
||||
public static BeatmapNote parse(MusicBeatmapNoteOuterClass.MusicBeatmapNote note){
|
||||
public static BeatmapNote parse(UgcMusicNoteOuterClass.UgcMusicNote note){
|
||||
return BeatmapNote.of()
|
||||
.startTime(note.getStartTime())
|
||||
.endTime(note.getEndTime())
|
||||
.build();
|
||||
}
|
||||
|
||||
public MusicBeatmapNoteOuterClass.MusicBeatmapNote toProto(){
|
||||
return MusicBeatmapNoteOuterClass.MusicBeatmapNote.newBuilder()
|
||||
public UgcMusicNoteOuterClass.UgcMusicNote toProto(){
|
||||
return UgcMusicNoteOuterClass.UgcMusicNote.newBuilder()
|
||||
.setStartTime(startTime)
|
||||
.setEndTime(endTime)
|
||||
.build();
|
||||
|
||||
@@ -2,7 +2,7 @@ package emu.grasscutter.game.activity.musicgame;
|
||||
|
||||
import emu.grasscutter.data.GameData;
|
||||
import emu.grasscutter.data.excels.MusicGameBasicData;
|
||||
import emu.grasscutter.net.proto.MusicBriefInfoOuterClass;
|
||||
import emu.grasscutter.net.proto.UgcMusicBriefInfoOuterClass;
|
||||
import emu.grasscutter.net.proto.MusicGameRecordOuterClass;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Builder;
|
||||
@@ -61,25 +61,25 @@ public class MusicGamePlayerData {
|
||||
int score;
|
||||
boolean settle;
|
||||
|
||||
public MusicBriefInfoOuterClass.MusicBriefInfo.Builder toPersonalBriefProto() {
|
||||
public UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.Builder toPersonalBriefProto() {
|
||||
var musicGameBeatmap = MusicGameBeatmap.getByShareId(musicShareId);
|
||||
|
||||
return MusicBriefInfoOuterClass.MusicBriefInfo.newBuilder()
|
||||
.setCanShare(true)
|
||||
.setCreateTime(musicGameBeatmap.getCreateTime())
|
||||
return UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.newBuilder()
|
||||
// .setCanShare(true)
|
||||
// .setCreateTime(musicGameBeatmap.getCreateTime())
|
||||
.setMusicId(musicGameBeatmap.getMusicId())
|
||||
.setMaxScore(musicGameBeatmap.getMaxScore())
|
||||
.setPosition(musicGameBeatmap.getSavePosition())
|
||||
.setMusicNoteCount(musicGameBeatmap.getMusicNoteCount())
|
||||
.setMusicShareId(musicShareId);
|
||||
// .setPosition(musicGameBeatmap.getSavePosition())
|
||||
// .setMusicNoteCount(musicGameBeatmap.getMusicNoteCount())
|
||||
.setUgcGuid(musicShareId);
|
||||
}
|
||||
|
||||
public MusicBriefInfoOuterClass.MusicBriefInfo.Builder toOthersBriefProto() {
|
||||
public UgcMusicBriefInfoOuterClass.UgcMusicBriefInfo.Builder toOthersBriefProto() {
|
||||
var musicGameBeatmap = MusicGameBeatmap.getByShareId(musicShareId);
|
||||
|
||||
return musicGameBeatmap.toBriefProto()
|
||||
.setScore(score)
|
||||
.setSettle(settle)
|
||||
// .setScore(score)
|
||||
// .setSettle(settle)
|
||||
;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user