This repository has been archived on 2026-10-31. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files

69 lines
2.9 KiB
Go

package routers
import (
"context"
"sync"
)
var _ = sync.Mutex{}
var _ = context.Background
//
// Gacha draws for build 4229938 (GachaManager.DoDrawGacha -> AskDrawGacha(poolId, drawCount,
// isAutoExchange)).
// The reply only carries the refreshed per-pool counters (and this server leaves them untouched, so
// the client keeps its own view); the actual result - what the player won - is pushed through
// SyncGachaDrawInfo, which is what the client animates. A non-zero err makes the client show a
// server error and drop the draw, so the reply must always be an OK.
// Odds follow GachaPoolTierRuleConfig: RuleType 1 pools ramp the grand-prize chance from
// BaseProbability by ProbabilityIncrement per draw past RampStartDraw and hand out a guaranteed
// grand prize at PityThreshold; these pools also pick the prize row itself by relative weight within
// the "grand" or "ordinary" group. RuleType 0 pools have no pity ramp and simply pick by weight.
// Duplicate grand prizes are converted to the row's duplicateReturn drop, which is also how the
// client labels the result (IsConverted).
//
func GameRouter_Gacha_AskDrawGacha(ctx context.Context, conn any, msg any) any {
// Router implementation for GameRouter_Gacha_AskDrawGacha
var zero any; return zero
}
//
// True when this draw is a grand prize: the hard pity first, then the ramp of RuleType 1 pools.
// RuleType 0 pools carry no ramp, so their grand prize is whatever the row weights produce.
//
func GameRouter_Gacha_RollGrandPrize4229938(ctx context.Context, rule any, drawsSinceGrand uint32) bool {
// Router implementation for GameRouter_Gacha_RollGrandPrize4229938
return true
}
//
// Relative-weight pick inside the requested group. true picks only
// grand-prize rows, false only ordinary ones, null any selectable row (weight > 0).
//
func GameRouter_Gacha_PickGachaContent4229938(ctx context.Context, contents []any, grandOnly any) any {
// Router implementation for GameRouter_Gacha_PickGachaContent4229938
var zero any; return zero
}
// A prize row grants its reward through a drop, so "already owned" is decided by the template the
// drop hands out (the first entry of its guaranteed/ranged/weighted list).
func GameRouter_Gacha_TryPrizeTemplateId4229938(ctx context.Context, dropId uint32, templateId uint32) bool {
// Router implementation for GameRouter_Gacha_TryPrizeTemplateId4229938
return true
}
func GameRouter_Gacha_IsItemOwned4229938(ctx context.Context, state any, templateId uint32) bool {
// Router implementation for GameRouter_Gacha_IsItemOwned4229938
return true
}
//
// Answers AskDrawGacha with the shape the client reads (its generated reader expects the gacha
// info object), falling back to a bare OK when the catalog has no default for it.
//
func GameRouter_Gacha_ReplyDrawGacha4229938Async(ctx context.Context, conn any, msg any) any {
// Router implementation for GameRouter_Gacha_ReplyDrawGacha4229938Async
var zero any; return zero
}