string ToggleConfigMyAvatarUploadButton = "Toggle_MyAvatarUploadButton"; string ToggleConfigMyAvatarLoginButton = "Toggle_MyAvatarLoginButton"; string ToggleConstantMyAvatarUploadButton = "Toggle_Constant_MyAvatarUploadButton"; class MyAvatarView { public MyAvatarView() { // シーンファイルでMyAvatarのuseフラグがオフになっている場合はその旨をGUIで表示する hsCanvasResetToggleDefault("Toggle_Use_MyAvatar"); if(!hsPlayerUseMyAvatar()) { hsCanvasToggleChange("Toggle_Use_MyAvatar"); } } public void DrawPresetNameplateIcon(int id) { if(id >= 0) { hel_setText(ETextParamType_ReplaceMyAvatarIcon, "%d" % id); } } public void showPresetAvatarSelectmark(int AvatarID) { int PresetAvatarCount = hsPlayerGetPresetAvatarCount(); for(int i = 0; i < PresetAvatarCount; i++) { hsCanvasResetToggleDefault("Toggle_PresetAvatarSelectmark%d" % i); } if(AvatarID != -1) { hsCanvasToggleChange("Toggle_PresetAvatarSelectmark%d" % AvatarID); } } public void showMyAvatarSelectmark(int selectedIndex) { if(selectedIndex == -1) { hsCanvasResetToggleDefault("Toggle_Show_MyAvatarSelectmark"); } else { hsCanvasResetToggleDefault("Toggle_Show_MyAvatarSelectmark"); hsCanvasToggleChange("Toggle_Show_MyAvatarSelectmark"); _SetMyAvatarSelectmarkPos(selectedIndex, false, 5, 2, 162, 182, -150, -126); _SetMyAvatarSelectmarkPos(selectedIndex, true, 4, 4, 267, 313, -374, -491); } } void _SetMyAvatarSelectmarkPos(int selectedIndex, bool IsPortrait, int MaxRowCount, int MaxColCount, int XOffset, int YOffset, int PosX, int PosY) { int Col = selectedIndex / MaxRowCount; int Row = selectedIndex - Col * MaxRowCount; hsCanvasSetGUIPos("mainmenu_mypage_avatar_base", IsPortrait, "MyAvatarSelectmark", PosX + Row * XOffset, PosY + Col * YOffset); } public void drawLoginButtonOnMyAvatar() { hsCanvasSetLayerShow("config_myavatar_List", false); hsCanvasResetToggleDefault("Toggle_Show_MyAvatarSelectmark"); hsCanvasSetLayerShow("config_myavatar_account", true); hsCanvasResetToggleDefault(ToggleConfigMyAvatarUploadButton); hsCanvasResetToggleDefault(ToggleConfigMyAvatarLoginButton); hsCanvasToggleChange(ToggleConfigMyAvatarLoginButton); hsCanvasResetToggleDefault(ToggleConstantMyAvatarUploadButton); hsCanvasToggleChange(ToggleConstantMyAvatarUploadButton); } public void drawMyAvatarUploadButton() { hsCanvasSetLayerShow("config_myavatar_List", false); hsCanvasResetToggleDefault("Toggle_Show_MyAvatarSelectmark"); hsCanvasSetLayerShow("config_myavatar_account",true); hsCanvasResetToggleDefault(ToggleConfigMyAvatarUploadButton); hsCanvasResetToggleDefault(ToggleConfigMyAvatarLoginButton); hsCanvasToggleChange(ToggleConfigMyAvatarUploadButton); hsCanvasResetToggleDefault(ToggleConstantMyAvatarUploadButton); hsCanvasToggleChange(ToggleConstantMyAvatarUploadButton); } public void closeAvatarBase() { hsCanvasSetLayerShow("mainmenu_mypage_avatar_base",false); } public void closeConfigMyAvatar() { hsCanvasSetLayerShow("config_myavatar_List", false); hsCanvasResetToggleDefault("Toggle_Show_MyAvatarSelectmark"); hsCanvasSetGUIText("mainmenu_mypage_avatar_base", "page_text", "%d" % 1); hsCanvasSetLayerShow("config_myavatar_account",false); hsCanvasSetLayerShow("config_myavatar_user",false); } public void closeConfigPresetAvatar() { hsCanvasSetLayerShow("config_avatar_List",false); } public void drawConfigAvatarTileList(list MyAvatarList, int PagerIndex) { hsCanvasSetGUIShow("config_avatar", "config_avatar_selectmark", false); hsCanvasSetGUIShow("config_myavatar", "config_vketaccount_login_button", false); hsCanvasSetGUIShow("config_myavatar", "config_my_avatar_upload_button", false); hsCanvasSetGUIText("mainmenu_mypage_avatar_base", "page_text", "%d" % (PagerIndex + 1)); hsCanvasResetToggleDefault(ToggleConfigMyAvatarUploadButton); hsCanvasResetToggleDefault(ToggleConfigMyAvatarLoginButton); hsCanvasResetToggleDefault(ToggleConstantMyAvatarUploadButton); hsCanvasToggleChange(ToggleConstantMyAvatarUploadButton); _ShowMyAvatarList(MyAvatarList); } void _ShowMyAvatarList(list MyAvatarList) { hsCanvasSetLayerShow("config_myavatar_List", true); int MaxPageElemCount = (hsCanvasIsPortrait())? 16 : 10; string layerName = "config_myavatar_List"; for(int i = 0; i < MaxPageElemCount; i++) { int avatarListIndex = i; string SharedName = "%d" % avatarListIndex; string MyAvatarButton = "MyAvatarButton" + SharedName; string MyAvatarName = "MyAvatarName" + SharedName; if(avatarListIndex < MyAvatarList.Count) { hsCanvasResetToggleDefault("Toggle_Show_MyAvatarButton_%d" %i); string thumbnailURL_Obj = MyAvatarList[avatarListIndex].GetThumbnailURI(); if(!thumbnailURL_Obj.IsEmpty()) { if (thumbnailURL_Obj.IndexOf("http") != -1) { string thumbnailURL = thumbnailURL_Obj.SubString(0, thumbnailURL_Obj.IndexOf("?")); hsCanvasSetGUIImage(layerName, MyAvatarButton, thumbnailURL); } else { hsCanvasSetGUIImage(layerName, MyAvatarButton, thumbnailURL_Obj); } } else { hsCanvasSetGUIImage(layerName, MyAvatarButton, "gui2024/noimage.png"); } string avavar_name = MyAvatarList[avatarListIndex].GetName(); if(!avavar_name.IsEmpty()) { hsCanvasSetGUIText(layerName, MyAvatarName, avavar_name); } } else { hsCanvasResetToggleDefault("Toggle_Show_MyAvatarButton_%d" %i); hsCanvasToggleChange("Toggle_Show_MyAvatarButton_%d" %i); } } } public void drawPresetAvatarTileList() { hsCanvasSetLayerShow("config_avatar_List",true); } }