feat(currency_wars): complete systems, settlement Rank SS, damage report, camera and recovery fixes
This commit is contained in:
1 parent
c008243f11
commit
0995055296
78 files changed
+33840
-9525
No files matched your search
@@ -13,10 +13,25 @@ import (
|
||||
// result applies that option reward on passing the threshold or a perfect clear.
|
||||
// Perfect clears additionally earn monster Orbs, which are not handled here.
|
||||
// run must be a detached snapshot which the caller discards on any error.
|
||||
func cwEncounterRewards(c *common.CurrencyWarsCatalog, run *pb.MPIMAEMCEFH, branch *pb.KKBGIPCAGGH, progress, threshold uint32) ([]*pb.KFNCAIHIHCM, error) {
|
||||
func cwEncounterRewards(c *common.CurrencyWarsCatalog, run *pb.MPIMAEMCEFH, branch *pb.KKBGIPCAGGH, progress, threshold uint32, runtime ...*common.CurrencyWarsRuntimeState) ([]*pb.KFNCAIHIHCM, error) {
|
||||
if branch == nil {
|
||||
return nil, fmt.Errorf("CW Encounter selected branch missing")
|
||||
}
|
||||
if len(runtime) == 1 && cwXaodevGenerated(run, runtime[0]) {
|
||||
// xaodev branchDropPreview advertises the node's base gold, already
|
||||
// paid by settlement. It is not an additional threshold reward. The
|
||||
// server-side source marker survives reconnects and is never a wire tag.
|
||||
data, err := common.LoadCurrencyWarsXaodev(c)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
_, node := cwStage(run)
|
||||
drops := branch.GetBOAMLLHPNEC().GetNMGIABHIJJB()
|
||||
if data.Policy.RewardPolicy != "preview_base_gold_already_paid_by_settlement" || node == nil || len(drops) != 1 || drops[0] == nil || drops[0].FKKGLFOHGGA != pb.MJJIFGINJAJ_MJJIFGINJAJ_item_value || drops[0].FNLMKJLKLFH != 0 || drops[0].Num != node.PICMDONCKCO {
|
||||
return nil, fmt.Errorf("CW xaodev Encounter base-gold preview differs")
|
||||
}
|
||||
return nil, nil
|
||||
}
|
||||
if progress < threshold {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user