Update GaCy-GO

This commit is contained in:
CAtlas0784 committed 2026-10-28 18:54:43 +07:00
1 parent da8a32f60d
commit 0cbe460e49
345 files changed
+98202 -77559

No files matched your search

+18 -4
View File
@@ -42,7 +42,7 @@ func currencyWarsEntranceScene(scene *common.LevelOutputConfig, entrance common.
func init() {
// Bind to this revision's command table. Save a complete initial preset
// before returning success so the immediately following GetData sees it.
handle("GridFightStartGamePlay", func(s *Session, req *goproto.GridFightStartGamePlayCsReq, rsp *goproto.GridFightStartGamePlayScRsp) error {
cwHandle("GridFightStartGamePlay", func(s *Session, req *goproto.GridFightStartGamePlayCsReq, rsp *goproto.GridFightStartGamePlayScRsp) error {
mode := "standard"
if req.IsOverlock {
mode = "overclock"
@@ -99,7 +99,7 @@ func init() {
PacketLog(fmt.Sprintf("CW_START_GAMEPLAY started mode=%s division=%d season=%d run=%d revision=%d source=captured_initial_preset", mode, req.DivisionId, req.LJNGPCKPJLF, run.UniqueId, s.currencyWarsRevision))
return nil
})
handle("GridFightResumeGamePlay", func(s *Session, req *goproto.GridFightResumeGamePlayCsReq, rsp *goproto.GridFightResumeGamePlayScRsp) error {
cwHandle("GridFightResumeGamePlay", func(s *Session, req *goproto.GridFightResumeGamePlayCsReq, rsp *goproto.GridFightResumeGamePlayScRsp) error {
rsp.Retcode = uint32(goproto.Retcode_RET_GRID_FIGHT_NOT_IN_GAMEPLAY)
catalog, err := common.LoadCurrencyWarsCatalog()
if err != nil {
@@ -122,6 +122,20 @@ func init() {
}
// Reconcile triplets left by the former buy handler on an explicit
// Resume action. Snapshot readers remain read-only.
if data.DHFOFLFCLAH.GetFMIGOKIDKJL().GetBAKAKODKECM() != nil {
if _, active := CURRENT_BATTLE.Load(s.Token); !active {
changed, e := cwAlignEncounterCamp(catalog, data.DHFOFLFCLAH)
if e != nil {
PacketLog("CW_RESUME Encounter rejected: " + e.Error())
return nil
}
if changed {
if e = s.saveCurrencyWarsData(data, catalog); e != nil {
return nil
}
}
}
}
if data.DHFOFLFCLAH.FMIGOKIDKJL == nil {
if _, active := CURRENT_BATTLE.Load(s.Token); !active {
groups, e := cwMergeRoles(catalog, data.DHFOFLFCLAH, 0)
@@ -144,7 +158,7 @@ func init() {
return nil
})
// Leaving the UI keeps the active run for Resume, matching the reference.
handle("GridFightQuitLeaveGamePlay", func(s *Session, _ *goproto.GridFightQuitLeaveGamePlayCsReq, _ *goproto.GridFightQuitLeaveGamePlayScRsp) error {
cwHandle("GridFightQuitLeaveGamePlay", func(s *Session, _ *goproto.GridFightQuitLeaveGamePlayCsReq, _ *goproto.GridFightQuitLeaveGamePlayScRsp) error {
s.currencyWarsOpen = false
return nil
})
@@ -164,7 +178,7 @@ func init() {
})
// Bootstrap only. Keep the danger-family guard for every unsupported CW
// operation; it must never receive a successful empty gameplay response.
handle("GridFightGetData", func(s *Session, req *goproto.GridFightGetDataCsReq, rsp *goproto.GridFightGetDataScRsp) error {
cwHandle("GridFightGetData", func(s *Session, req *goproto.GridFightGetDataCsReq, rsp *goproto.GridFightGetDataScRsp) error {
catalog, err := common.LoadCurrencyWarsCatalog()
if err != nil {
return err