public int UpdateV3(AvatarState avatarState, ArenaInfo enemyInfo, BattleLog.Result result) { switch (result) { case BattleLog.Result.Win: ArenaRecord.Win++; break; case BattleLog.Result.Lose: ArenaRecord.Lose++; break; case BattleLog.Result.TimeOver: ArenaRecord.Draw++; return(0); default: throw new ArgumentOutOfRangeException(nameof(result), result, null); } var score = ArenaScoreHelper.GetScoreV1(Score, enemyInfo.Score, result); var calculated = Score + score; var current = Score; Score = Math.Max(1000, calculated); DailyChallengeCount--; ArmorId = avatarState.GetArmorId(); Level = avatarState.level; return(Score - current); }
public RankingInfo(AvatarState avatarState) { AvatarAddress = avatarState.address; AgentAddress = avatarState.agentAddress; ArmorId = avatarState.GetArmorId(); Level = avatarState.level; AvatarName = avatarState.NameWithHash; Exp = avatarState.exp; avatarState.worldInformation.TryGetUnlockedWorldByStageClearedBlockIndex(out var detail); StageClearedBlockIndex = detail.StageClearedBlockIndex; UpdatedAt = avatarState.updatedAt; }
public void UpdateV2(AvatarState state, CharacterSheet characterSheet, CostumeStatSheet costumeStatSheet) { ArmorId = state.GetArmorId(); Level = state.level; CombatPoint = CPHelper.GetCPV2(state, characterSheet, costumeStatSheet); }
public void UpdateV1(AvatarState state, CharacterSheet characterSheet) { ArmorId = state.GetArmorId(); Level = state.level; CombatPoint = CPHelper.GetCP(state, characterSheet); }