public static (AgentState, AvatarState) GetAgentStateWithAvatarState( IReadOnlyDictionary <string, string> sheets, TableSheets tableSheets, Address rankingMapAddress) { var agentAddress = new PrivateKey().ToAddress(); var agentState = new AgentState(agentAddress); var avatarAddress = agentAddress.Derive("avatar"); var avatarState = new AvatarState( avatarAddress, agentAddress, 0, tableSheets.GetAvatarSheets(), new GameConfigState(sheets[nameof(GameConfigSheet)]), rankingMapAddress) { worldInformation = new WorldInformation( 0, tableSheets.WorldSheet, Math.Max( tableSheets.StageSheet.First?.Id ?? 1, GameConfig.RequireClearedStageLevel.ActionsInRankingBoard)), }; agentState.avatarAddresses.Add(0, avatarAddress); return(agentState, avatarState); }