@page "/Users/{baid:int}/Profile"
@inject HttpClient Client
@inject IGameDataService GameDataService
@inject IDialogService DialogService
@inject LoginService LoginService
@inject IJSRuntime Js
Profile
User: @Baid
@if (response is not null)
{
@if (LoginService.LoginRequired && (!LoginService.IsLoggedIn || (LoginService.GetLoggedInUser().Baid != Baid && !LoginService.IsAdmin)))
{
Please log in by clicking on "Users" tab first.
}
else
{
Profile Options
@for (uint i = 0; i < LanguageStrings.Length; i++)
{
var index = i;
@LanguageStrings[index]
}
@if (LoginService.AllowFreeProfileEditing)
{
}
else
{
}
Select a Title
@if (LoginService.AllowFreeProfileEditing)
{
@for (uint i = 0; i < TitlePlateStrings.Length; i++)
{
var index = i;
@TitlePlateStrings[index]
}
}
@foreach (var item in Enum.GetValues())
{
}
@for (uint i = 0; i < DifficultySettingCourseStrings.Length; i++)
{
var index = i;
@DifficultySettingCourseStrings[index]
}
@for (uint i = 0; i < DifficultySettingStarStrings.Length; i++)
{
var index = i;
@DifficultySettingStarStrings[index]
}
@for (uint i = 0; i < DifficultySettingSortStrings.Length; i++)
{
var index = i;
@DifficultySettingSortStrings[index]
}
Costume Options
@if (LoginService.AllowFreeProfileEditing)
{
@for (var i = 0; i < costumeFlagArraySizes[1]; i++)
{
var index = (uint)i;
var costumeTitle = GameDataService.GetHeadTitle(index);
@index - @costumeTitle
}
@for (var i = 0; i < costumeFlagArraySizes[2]; i++)
{
var index = (uint)i;
var costumeTitle = GameDataService.GetBodyTitle(index);
@index - @costumeTitle
}
@for (var i = 0; i < costumeFlagArraySizes[3]; i++)
{
var index = (uint)i;
var costumeTitle = GameDataService.GetFaceTitle(index);
@index - @costumeTitle
}
@for (var i = 0; i < costumeFlagArraySizes[0]; i++)
{
var index = (uint)i;
var costumeTitle = GameDataService.GetKigurumiTitle(index);
@index - @costumeTitle
}
@for (var i = 0; i < costumeFlagArraySizes[4]; i++)
{
var index = (uint)i;
var costumeTitle = GameDataService.GetPuchiTitle(index);
@index - @costumeTitle
}
}
else
{
@foreach (var i in unlockedHeadCostumes)
{
var index = i;
var costumeTitle = GameDataService.GetHeadTitle(index);
@index - @costumeTitle
}
@foreach (var i in unlockedBodyCostumes)
{
var index = i;
var costumeTitle = GameDataService.GetBodyTitle(index);
@index - @costumeTitle
}
@foreach (var i in unlockedFaceCostumes)
{
var index = i;
var costumeTitle = GameDataService.GetFaceTitle(index);
@index - @costumeTitle
}
@foreach (var i in unlockedKigurumiCostumes)
{
var index = i;
var costumeTitle = GameDataService.GetKigurumiTitle(index);
@index - @costumeTitle
}
@foreach (var i in unlockedPuchiCostumes)
{
var index = i;
var costumeTitle = GameDataService.GetPuchiTitle(index);
@index - @costumeTitle
}
}
@for (uint i = 0; i < Constants.COSTUME_COLOR_MAX; i++)
{
var index = i;
@index
}
@for (uint i = 0; i < Constants.COSTUME_COLOR_MAX; i++)
{
var index = i;
@index
}
@for (uint i = 0; i < Constants.COSTUME_COLOR_MAX; i++)
{
var index = i;
@index
}
Song Options
@for (uint i = 0; i < SpeedStrings.Length; i++)
{
var index = i;
@SpeedStrings[index]
}
@foreach (var item in Enum.GetValues())
{
}
@for (uint i = 0; i < ToneStrings.Length; i++)
{
var index = i;
@ToneStrings[index]
}
Notes Position
@* Player Visualizer *@
@if (response.Kigurumi == 0)
{
}
else
{
}
@* Player Nameplate *@
@* Title text *@
@response.Title
@* Name text *@
@* Name textoffset to the right for Dan Rank *@
@response.MyDonName
@response.MyDonName
@if (response.IsDisplayDanOnNamePlate)
{
}
@if (isSavingOptions)
{
Saving...
}
else
{
Save
}
}
}
@code {
private async Task UpdateMyDonName()
{
@if (response is not null) await Js.InvokeVoidAsync("updateMyDonName", response.MyDonName);
}
private async Task UpdateTitle()
{
@if (response is not null) await Js.InvokeVoidAsync("updateTitle", response.Title);
}
}