Merge branch 'main' of https://github.com/0auBSQ/OpenTaiko
175
FDK/src/02.Input/CInputGamepad.cs
Normal file
@ -0,0 +1,175 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Diagnostics;
|
||||
using Silk.NET.Input;
|
||||
|
||||
namespace FDK
|
||||
{
|
||||
public class CInputGamepad : IInputDevice, IDisposable
|
||||
{
|
||||
// コンストラクタ
|
||||
|
||||
public CInputGamepad(IGamepad gamepad)
|
||||
{
|
||||
this.CurrentType = InputDeviceType.Gamepad;
|
||||
this.GUID = gamepad.Index.ToString();
|
||||
this.ID = gamepad.Index;
|
||||
|
||||
this.InputEvents = new List<STInputEvent>(32);
|
||||
|
||||
gamepad.ButtonDown += Joystick_ButtonDown;
|
||||
gamepad.ButtonUp += Joystick_ButtonUp;
|
||||
}
|
||||
|
||||
|
||||
// メソッド
|
||||
|
||||
public void SetID( int nID )
|
||||
{
|
||||
this.ID = nID;
|
||||
}
|
||||
|
||||
#region [ IInputDevice 実装 ]
|
||||
//-----------------
|
||||
public InputDeviceType CurrentType
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
public string GUID
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
public int ID
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
public List<STInputEvent> InputEvents
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
public string strDeviceName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
public void Polling(bool useBufferInput)
|
||||
{
|
||||
InputEvents.Clear();
|
||||
|
||||
for (int i = 0; i < ButtonStates.Length; i++)
|
||||
{
|
||||
if (ButtonStates[i].Item1)
|
||||
{
|
||||
if (ButtonStates[i].Item2 >= 1)
|
||||
{
|
||||
ButtonStates[i].Item2 = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
ButtonStates[i].Item2 = 1;
|
||||
|
||||
InputEvents.Add(
|
||||
new STInputEvent()
|
||||
{
|
||||
nKey = i,
|
||||
Pressed = true,
|
||||
Released = false,
|
||||
nTimeStamp = SampleFramework.Game.TimeMs,
|
||||
nVelocity = 0,
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ButtonStates[i].Item2 <= -1)
|
||||
{
|
||||
ButtonStates[i].Item2 = -2;
|
||||
}
|
||||
else
|
||||
{
|
||||
ButtonStates[i].Item2 = -1;
|
||||
|
||||
InputEvents.Add(
|
||||
new STInputEvent()
|
||||
{
|
||||
nKey = i,
|
||||
Pressed = false,
|
||||
Released = true,
|
||||
nTimeStamp = SampleFramework.Game.TimeMs,
|
||||
nVelocity = 0,
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool KeyPressed(int nButton)
|
||||
{
|
||||
return ButtonStates[nButton].Item2 == 1;
|
||||
}
|
||||
public bool KeyPressing(int nButton)
|
||||
{
|
||||
return ButtonStates[nButton].Item2 >= 1;
|
||||
}
|
||||
public bool KeyReleased(int nButton)
|
||||
{
|
||||
return ButtonStates[nButton].Item2 == -1;
|
||||
}
|
||||
public bool KeyReleasing(int nButton)
|
||||
{
|
||||
return ButtonStates[nButton].Item2 <= -1;
|
||||
}
|
||||
//-----------------
|
||||
#endregion
|
||||
|
||||
#region [ IDisposable 実装 ]
|
||||
//-----------------
|
||||
public void Dispose()
|
||||
{
|
||||
if(!this.IsDisposed)
|
||||
{
|
||||
if (this.InputEvents != null)
|
||||
{
|
||||
this.InputEvents = null;
|
||||
}
|
||||
this.IsDisposed = true;
|
||||
}
|
||||
}
|
||||
//-----------------
|
||||
#endregion
|
||||
|
||||
|
||||
// その他
|
||||
|
||||
#region [ private ]
|
||||
//-----------------
|
||||
private (bool, int)[] ButtonStates = new (bool, int)[15];
|
||||
private bool IsDisposed;
|
||||
|
||||
private void Joystick_ButtonDown(IGamepad joystick, Button button)
|
||||
{
|
||||
if (button.Name != ButtonName.Unknown)
|
||||
{
|
||||
ButtonStates[(int)button.Name].Item1 = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void Joystick_ButtonUp(IGamepad joystick, Button button)
|
||||
{
|
||||
if (button.Name != ButtonName.Unknown)
|
||||
{
|
||||
ButtonStates[(int)button.Name].Item1 = false;
|
||||
}
|
||||
}
|
||||
//-----------------
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -99,6 +99,10 @@ namespace FDK
|
||||
{
|
||||
this.InputDevices.Add(new CInputJoystick(joysticks));
|
||||
}
|
||||
foreach (var gamepad in Context.Gamepads)
|
||||
{
|
||||
this.InputDevices.Add(new CInputGamepad(gamepad));
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
||||
@ -127,6 +131,28 @@ namespace FDK
|
||||
}
|
||||
return null;
|
||||
}
|
||||
public IInputDevice Gamepad(int ID)
|
||||
{
|
||||
foreach (IInputDevice device in this.InputDevices)
|
||||
{
|
||||
if ((device.CurrentType == InputDeviceType.Gamepad) && (device.ID == ID))
|
||||
{
|
||||
return device;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
public IInputDevice Gamepad(string GUID)
|
||||
{
|
||||
foreach (IInputDevice device in this.InputDevices)
|
||||
{
|
||||
if ((device.CurrentType == InputDeviceType.Gamepad) && device.GUID.Equals(GUID))
|
||||
{
|
||||
return device;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
public IInputDevice MidiIn(int ID)
|
||||
{
|
||||
foreach (IInputDevice device in this.InputDevices)
|
||||
|
@ -11,6 +11,7 @@ namespace FDK
|
||||
Keyboard,
|
||||
Mouse,
|
||||
Joystick,
|
||||
Gamepad,
|
||||
MidiIn,
|
||||
Unknown
|
||||
}
|
||||
|
@ -455,10 +455,12 @@ namespace FDK
|
||||
|
||||
Matrix4X4<float> mvp = Matrix4X4<float>.Identity;
|
||||
|
||||
float trueWidth = Math.Abs((float)rc画像内の描画領域.Width);
|
||||
float trueHeight = Math.Abs((float)rc画像内の描画領域.Height);
|
||||
|
||||
Matrix4X4<float> scaling()
|
||||
{
|
||||
Matrix4X4<float> resizeMatrix = Matrix4X4.CreateScale((float)rc画像内の描画領域.Width / GameWindowSize.Width, (float)rc画像内の描画領域.Height / GameWindowSize.Height, 0.0f);
|
||||
Matrix4X4<float> resizeMatrix = Matrix4X4.CreateScale(trueWidth / GameWindowSize.Width, trueHeight / GameWindowSize.Height, 0.0f);
|
||||
Matrix4X4<float> scaleMatrix = Matrix4X4.CreateScale(vc拡大縮小倍率.X, vc拡大縮小倍率.Y, vc拡大縮小倍率.Z);
|
||||
return resizeMatrix * scaleMatrix;
|
||||
}
|
||||
@ -482,8 +484,8 @@ namespace FDK
|
||||
|
||||
Matrix4X4<float> translation = Matrix4X4.CreateTranslation(api_x, api_y, 0.0f);
|
||||
Matrix4X4<float> translation2 = Matrix4X4.CreateTranslation(
|
||||
(rc画像内の描画領域.Width * vc拡大縮小倍率.X / GameWindowSize.Width),
|
||||
(rc画像内の描画領域.Height * vc拡大縮小倍率.Y / GameWindowSize.Height) * -1,
|
||||
(trueWidth * vc拡大縮小倍率.X / GameWindowSize.Width),
|
||||
(trueHeight * vc拡大縮小倍率.Y / GameWindowSize.Height) * -1,
|
||||
0.0f);
|
||||
return translation * translation2;
|
||||
}
|
||||
|
After Width: | Height: | Size: 139 KiB |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 63 KiB |
After Width: | Height: | Size: 867 B |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 4.7 KiB |
@ -323,4 +323,37 @@ SongSelect_Option_ModMults1_Y=17,17
|
||||
|
||||
SongSelect_Option_ModMults2_X=162,1644
|
||||
|
||||
SongSelect_Option_ModMults2_Y=78,78
|
||||
SongSelect_Option_ModMults2_Y=78,78
|
||||
|
||||
|
||||
|
||||
SongSelect_NewHeya_Close_Select=0,0
|
||||
|
||||
|
||||
SongSelect_NewHeya_PlayerPlate_X=0,385,770,1155,1540
|
||||
|
||||
SongSelect_NewHeya_PlayerPlate_Y=100,100,100,100,100
|
||||
|
||||
|
||||
SongSelect_NewHeya_ModeBar_X=0,385,770,1155,1540
|
||||
|
||||
SongSelect_NewHeya_ModeBar_Y=300,300,300,300,300
|
||||
|
||||
SongSelect_NewHeya_ModeBar_Font_Offset=192,50
|
||||
|
||||
|
||||
SongSelect_NewHeya_Box_Count=7
|
||||
|
||||
SongSelect_NewHeya_Box_X=-636,-180,276,732,1188,1644,2100
|
||||
|
||||
SongSelect_NewHeya_Box_Y=410,410,410,410,410,410,410
|
||||
|
||||
SongSelect_NewHeya_Box_Chara_Offset=228,300
|
||||
|
||||
SongSelect_NewHeya_Box_Name_Offset=228,580
|
||||
|
||||
SongSelect_NewHeya_Box_Author_Offset=228,620
|
||||
|
||||
SongSelect_NewHeya_Lock_Offset=0,110
|
||||
|
||||
SongSelect_NewHeya_InfoSection_Offset=228,310
|
After Width: | Height: | Size: 128 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 243 B |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 1016 B |
After Width: | Height: | Size: 368 B |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.3 KiB |
@ -330,4 +330,37 @@ SongSelect_Option_ModMults1_Y=11,11
|
||||
|
||||
SongSelect_Option_ModMults2_X=108,1096
|
||||
|
||||
SongSelect_Option_ModMults2_Y=52,52
|
||||
SongSelect_Option_ModMults2_Y=52,52
|
||||
|
||||
|
||||
|
||||
SongSelect_NewHeya_Close_Select=0, 0
|
||||
|
||||
|
||||
SongSelect_NewHeya_PlayerPlate_X=0, 256, 513, 770, 1026
|
||||
|
||||
SongSelect_NewHeya_PlayerPlate_Y=66, 66, 66, 66, 66
|
||||
|
||||
|
||||
SongSelect_NewHeya_ModeBar_X=0, 256, 513, 770, 1026
|
||||
|
||||
SongSelect_NewHeya_ModeBar_Y=200, 200, 200, 200, 200
|
||||
|
||||
SongSelect_NewHeya_ModeBar_Font_Offset=128,33
|
||||
|
||||
|
||||
SongSelect_NewHeya_Box_Count=7
|
||||
|
||||
SongSelect_NewHeya_Box_X=-424,-120,184,488,792,1096,1400
|
||||
|
||||
SongSelect_NewHeya_Box_Y=273,273,273,273,273,273,273
|
||||
|
||||
SongSelect_NewHeya_Box_Chara_Offset=152,200
|
||||
|
||||
SongSelect_NewHeya_Box_Name_Offset=152,386
|
||||
|
||||
SongSelect_NewHeya_Box_Author_Offset=152,413
|
||||
|
||||
SongSelect_NewHeya_Lock_Offset=0,73
|
||||
|
||||
SongSelect_NewHeya_InfoSection_Offset=152,206
|
@ -1059,6 +1059,7 @@ namespace TJAPlayer3
|
||||
public int nウインドウwidth; // #23510 2010.10.31 yyagi add
|
||||
public int nウインドウheight; // #23510 2010.10.31 yyagi add
|
||||
public Dictionary<int, string> dicJoystick;
|
||||
public Dictionary<int, string> dicGamepad;
|
||||
public Eダークモード eDark;
|
||||
public Eランダムモード[] eRandom;
|
||||
public Eダメージレベル eダメージレベル;
|
||||
@ -1872,6 +1873,7 @@ namespace TJAPlayer3
|
||||
this.nヒット範囲ms.Poor = 108;
|
||||
this.ConfigIniファイル名 = "";
|
||||
this.dicJoystick = new Dictionary<int, string>( 10 );
|
||||
this.dicGamepad = new Dictionary<int, string>( 10 );
|
||||
this.tデフォルトのキーアサインに設定する();
|
||||
#region [ velocityMin ]
|
||||
this.nVelocityMin.LC = 0; // #23857 2011.1.31 yyagi VelocityMin
|
||||
@ -2596,6 +2598,10 @@ namespace TJAPlayer3
|
||||
{
|
||||
sw.WriteLine( "JoystickID={0},{1}", pair.Key, pair.Value );
|
||||
}
|
||||
foreach( KeyValuePair<int, string> pair in this.dicGamepad )
|
||||
{
|
||||
sw.WriteLine( "GamepadID={0},{1}", pair.Key, pair.Value );
|
||||
}
|
||||
#endregion
|
||||
#region [ DrumsKeyAssign ]
|
||||
sw.WriteLine();
|
||||
@ -3794,6 +3800,10 @@ namespace TJAPlayer3
|
||||
{
|
||||
this.tJoystickIDの取得( str4 );
|
||||
}
|
||||
else if( str3.Equals( "GamepadID" ) )
|
||||
{
|
||||
this.tGamepadIDの取得( str4 );
|
||||
}
|
||||
continue;
|
||||
//-----------------------------
|
||||
#endregion
|
||||
@ -4014,6 +4024,22 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
}
|
||||
private void tGamepadIDの取得( string strキー記述 )
|
||||
{
|
||||
string[] strArray = strキー記述.Split( new char[] { ',' } );
|
||||
if( strArray.Length >= 2 )
|
||||
{
|
||||
int result = 0;
|
||||
if( ( int.TryParse( strArray[ 0 ], out result ) && ( result >= 0 ) ) && ( result <= 9 ) )
|
||||
{
|
||||
if( this.dicGamepad.ContainsKey( result ) )
|
||||
{
|
||||
this.dicGamepad.Remove( result );
|
||||
}
|
||||
this.dicGamepad.Add( result, strArray[ 1 ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
private void tキーアサインを全部クリアする()
|
||||
{
|
||||
this.KeyAssign = new CKeyAssign();
|
||||
@ -4057,6 +4083,10 @@ namespace TJAPlayer3
|
||||
sw.Write( 'J' );
|
||||
break;
|
||||
|
||||
case E入力デバイス.Gamepad:
|
||||
sw.Write( 'G' );
|
||||
break;
|
||||
|
||||
case E入力デバイス.マウス:
|
||||
sw.Write( 'N' );
|
||||
break;
|
||||
@ -4081,6 +4111,10 @@ namespace TJAPlayer3
|
||||
case 'J':
|
||||
e入力デバイス = E入力デバイス.ジョイパッド;
|
||||
break;
|
||||
|
||||
case 'G':
|
||||
e入力デバイス = E入力デバイス.Gamepad;
|
||||
break;
|
||||
|
||||
case 'K':
|
||||
e入力デバイス = E入力デバイス.キーボード;
|
||||
|
@ -17,6 +17,7 @@ namespace TJAPlayer3
|
||||
public bool Keyboard;
|
||||
public bool MIDIIN;
|
||||
public bool Joypad;
|
||||
public bool Gamepad;
|
||||
public bool Mouse;
|
||||
public void Clear()
|
||||
{
|
||||
@ -80,6 +81,14 @@ namespace TJAPlayer3
|
||||
}
|
||||
break;
|
||||
|
||||
case E入力デバイス.Gamepad:
|
||||
if( ( ( device.CurrentType == InputDeviceType.Gamepad ) && ( device.ID == stkeyassignArray[ i ].ID ) ) && ( event2.nKey == stkeyassignArray[ i ].コード ) )
|
||||
{
|
||||
list.Add( event2 );
|
||||
this.st検知したデバイス.Gamepad = true;
|
||||
}
|
||||
break;
|
||||
|
||||
case E入力デバイス.マウス:
|
||||
if( ( device.CurrentType == InputDeviceType.Mouse ) && ( event2.nKey == stkeyassignArray[ i ].コード ) )
|
||||
{
|
||||
@ -133,6 +142,18 @@ namespace TJAPlayer3
|
||||
this.st検知したデバイス.Joypad = true;
|
||||
return true;
|
||||
}
|
||||
case E入力デバイス.Gamepad:
|
||||
{
|
||||
if( !this.rConfigIni.dicJoystick.ContainsKey( stkeyassignArray[ i ].ID ) )
|
||||
break;
|
||||
|
||||
IInputDevice device = this.rInput管理.Gamepad( stkeyassignArray[ i ].ID );
|
||||
if( ( device == null ) || !device.KeyPressed( stkeyassignArray[ i ].コード ) )
|
||||
break;
|
||||
|
||||
this.st検知したデバイス.Gamepad = true;
|
||||
return true;
|
||||
}
|
||||
case E入力デバイス.マウス:
|
||||
if( !this.rInput管理.Mouse.KeyPressed( stkeyassignArray[ i ].コード ) )
|
||||
break;
|
||||
@ -191,6 +212,21 @@ namespace TJAPlayer3
|
||||
this.st検知したデバイス.Joypad = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
case E入力デバイス.Gamepad:
|
||||
{
|
||||
if( !this.rConfigIni.dicJoystick.ContainsKey( stkeyassignArray[ i ].ID ) )
|
||||
{
|
||||
break;
|
||||
}
|
||||
IInputDevice device = this.rInput管理.Gamepad( stkeyassignArray[ i ].ID );
|
||||
if( ( device == null ) || !device.KeyPressing( stkeyassignArray[ i ].コード ) )
|
||||
{
|
||||
break;
|
||||
}
|
||||
this.st検知したデバイス.Gamepad = true;
|
||||
return true;
|
||||
}
|
||||
case E入力デバイス.マウス:
|
||||
if( !this.rInput管理.Mouse.KeyPressing( stkeyassignArray[ i ].コード ) )
|
||||
{
|
||||
|
@ -2977,6 +2977,116 @@ namespace TJAPlayer3
|
||||
SongSelect_Option_ModMults2_Y[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Close_Select")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Close_Select[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_PlayerPlate_X")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
SongSelect_NewHeya_PlayerPlate_X[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_PlayerPlate_Y")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
SongSelect_NewHeya_PlayerPlate_Y[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_ModeBar_X")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
SongSelect_NewHeya_ModeBar_X[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_ModeBar_Y")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
SongSelect_NewHeya_ModeBar_Y[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_ModeBar_Font_Offset")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_ModeBar_Font_Offset[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Box_Count")
|
||||
{
|
||||
SongSelect_NewHeya_Box_Count = int.Parse(strParam);
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Box_X")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
SongSelect_NewHeya_Box_X = new int[SongSelect_NewHeya_Box_Count];
|
||||
for (int i = 0; i < SongSelect_NewHeya_Box_Count; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Box_X[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Box_Y")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
SongSelect_NewHeya_Box_Y = new int[SongSelect_NewHeya_Box_Count];
|
||||
for (int i = 0; i < SongSelect_NewHeya_Box_Count; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Box_Y[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Box_Chara_Offset")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Box_Chara_Offset[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Box_Name_Offset")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Box_Name_Offset[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Box_Author_Offset")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Box_Author_Offset[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_Lock_Offset")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_Lock_Offset[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_NewHeya_InfoSection_Offset")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_NewHeya_InfoSection_Offset[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
else if (strCommand == "SongSelect_ForeColor_JPOP")
|
||||
@ -8205,14 +8315,19 @@ namespace TJAPlayer3
|
||||
Characters_Normal_MissedDown_Ptn,
|
||||
Characters_Normal_Cleared_Ptn,
|
||||
Characters_Normal_Maxed_Ptn,
|
||||
Characters_MissIn_Ptn,
|
||||
Characters_MissDownIn_Ptn,
|
||||
Characters_GoGoTime_Ptn,
|
||||
Characters_GoGoTime_Maxed_Ptn,
|
||||
Characters_10Combo_Ptn,
|
||||
Characters_10Combo_Clear_Ptn,
|
||||
Characters_10Combo_Maxed_Ptn,
|
||||
Characters_GoGoStart_Ptn,
|
||||
Characters_GoGoStart_Clear_Ptn,
|
||||
Characters_GoGoStart_Maxed_Ptn,
|
||||
Characters_Become_Cleared_Ptn,
|
||||
Characters_Become_Maxed_Ptn,
|
||||
Characters_SoulOut_Ptn,
|
||||
Characters_Return_Ptn,
|
||||
Characters_Balloon_Breaking_Ptn,
|
||||
Characters_Balloon_Broke_Ptn,
|
||||
@ -8243,31 +8358,41 @@ namespace TJAPlayer3
|
||||
public int[][] Characters_Balloon_5P;
|
||||
public int[][] Characters_Motion_Normal,
|
||||
Characters_Motion_10Combo,
|
||||
Characters_Motion_10Combo_Clear,
|
||||
Characters_Motion_10ComboMax,
|
||||
Characters_Motion_Miss,
|
||||
Characters_Motion_MissDown,
|
||||
Characters_Motion_ClearIn,
|
||||
Characters_Motion_Clear,
|
||||
Characters_Motion_ClearMax,
|
||||
Characters_Motion_MissIn,
|
||||
Characters_Motion_MissDownIn,
|
||||
Characters_Motion_GoGoStart,
|
||||
Characters_Motion_GoGoStart_Clear,
|
||||
Characters_Motion_GoGoStartMax,
|
||||
Characters_Motion_GoGo,
|
||||
Characters_Motion_GoGoMax,
|
||||
Characters_Motion_SoulIn,
|
||||
Characters_Motion_SoulOut,
|
||||
Characters_Motion_Return;
|
||||
public float[] Characters_Beat_Normal,
|
||||
Characters_Beat_10Combo,
|
||||
Characters_Beat_10Combo_Clear,
|
||||
Characters_Beat_10ComboMax,
|
||||
Characters_Beat_Miss,
|
||||
Characters_Beat_MissDown,
|
||||
Characters_Beat_ClearIn,
|
||||
Characters_Beat_Clear,
|
||||
Characters_Beat_ClearMax,
|
||||
Characters_Beat_MissIn,
|
||||
Characters_Beat_MissDownIn,
|
||||
Characters_Beat_GoGoStart,
|
||||
Characters_Beat_GoGoStart_Clear,
|
||||
Characters_Beat_GoGoStartMax,
|
||||
Characters_Beat_GoGo,
|
||||
Characters_Beat_GoGoMax,
|
||||
Characters_Beat_SoulIn,
|
||||
Characters_Beat_SoulOut,
|
||||
Characters_Beat_Return;
|
||||
public int[] Characters_Balloon_Timer;
|
||||
public int[] Characters_Balloon_Delay;
|
||||
@ -8615,6 +8740,26 @@ namespace TJAPlayer3
|
||||
public int[] SongSelect_Option_ModMults2_X = new int[] { 108, 1096 };
|
||||
public int[] SongSelect_Option_ModMults2_Y = new int[] { 52, 52 };
|
||||
|
||||
|
||||
public int[] SongSelect_NewHeya_Close_Select = new int[] { 0, 0 };
|
||||
|
||||
public int[] SongSelect_NewHeya_PlayerPlate_X = new int[] { 0, 256, 513, 770, 1026 };
|
||||
public int[] SongSelect_NewHeya_PlayerPlate_Y = new int[] { 66, 66, 66, 66, 66 };
|
||||
|
||||
public int[] SongSelect_NewHeya_ModeBar_X = new int[] { 0, 256, 513, 770, 1026 };
|
||||
public int[] SongSelect_NewHeya_ModeBar_Y = new int[] { 200, 200, 200, 200, 200 };
|
||||
public int[] SongSelect_NewHeya_ModeBar_Font_Offset = new int[] { 128, 33 };
|
||||
|
||||
|
||||
public int SongSelect_NewHeya_Box_Count = 7;
|
||||
public int[] SongSelect_NewHeya_Box_X = new int[] { -424, -120, 184, 488, 792, 1096, 1400 };
|
||||
public int[] SongSelect_NewHeya_Box_Y = new int[] { 273, 273, 273, 273, 273, 273, 273 };
|
||||
public int[] SongSelect_NewHeya_Box_Chara_Offset = new int[] { 152, 200 };
|
||||
public int[] SongSelect_NewHeya_Box_Name_Offset = new int[] { 152, 386 };
|
||||
public int[] SongSelect_NewHeya_Box_Author_Offset = new int[] { 152, 413 };
|
||||
public int[] SongSelect_NewHeya_Lock_Offset = new int[]{ 0, 73 };
|
||||
public int[] SongSelect_NewHeya_InfoSection_Offset = new int[] { 152, 206 };
|
||||
|
||||
public Color SongSelect_ForeColor_JPOP = ColorTranslator.FromHtml("#FFFFFF");
|
||||
public Color SongSelect_ForeColor_Anime = ColorTranslator.FromHtml("#FFFFFF");
|
||||
public Color SongSelect_ForeColor_VOCALOID = ColorTranslator.FromHtml("#FFFFFF");
|
||||
|
@ -99,25 +99,25 @@ namespace TJAPlayer3
|
||||
LRed2P = 16,
|
||||
RRed2P = 17,
|
||||
LBlue2P = 18,
|
||||
RBlue2P = 19,
|
||||
|
||||
LRed3P = 20,
|
||||
RRed3P = 21,
|
||||
LBlue3P = 22,
|
||||
RBlue3P = 23,
|
||||
|
||||
LRed4P = 24,
|
||||
RRed4P = 25,
|
||||
LBlue4P = 26,
|
||||
RBlue4P = 27,
|
||||
|
||||
LRed5P = 28,
|
||||
RRed5P = 29,
|
||||
LBlue5P = 30,
|
||||
RBlue2P = 19,
|
||||
|
||||
LRed3P = 20,
|
||||
RRed3P = 21,
|
||||
LBlue3P = 22,
|
||||
RBlue3P = 23,
|
||||
|
||||
LRed4P = 24,
|
||||
RRed4P = 25,
|
||||
LBlue4P = 26,
|
||||
RBlue4P = 27,
|
||||
|
||||
LRed5P = 28,
|
||||
RRed5P = 29,
|
||||
LBlue5P = 30,
|
||||
RBlue5P = 31,
|
||||
|
||||
CLAP = 32,
|
||||
CLAP2P = 33,
|
||||
CLAP2P = 33,
|
||||
CLAP3P = 34,
|
||||
CLAP4P = 35,
|
||||
CLAP5P = 36,
|
||||
@ -157,21 +157,21 @@ namespace TJAPlayer3
|
||||
LRed2P = Eパッド.LRed2P,
|
||||
RRed2P = Eパッド.RRed2P,
|
||||
LBlue2P = Eパッド.LBlue2P,
|
||||
RBlue2P = Eパッド.RBlue2P,
|
||||
|
||||
LRed3P = Eパッド.LRed3P,
|
||||
RRed3P = Eパッド.RRed3P,
|
||||
LBlue3P = Eパッド.LBlue3P,
|
||||
RBlue3P = Eパッド.RBlue3P,
|
||||
|
||||
LRed4P = Eパッド.LRed4P,
|
||||
RRed4P = Eパッド.RRed4P,
|
||||
LBlue4P = Eパッド.LBlue4P,
|
||||
RBlue4P = Eパッド.RBlue4P,
|
||||
|
||||
LRed5P = Eパッド.LRed5P,
|
||||
RRed5P = Eパッド.RRed5P,
|
||||
LBlue5P = Eパッド.LBlue5P,
|
||||
RBlue2P = Eパッド.RBlue2P,
|
||||
|
||||
LRed3P = Eパッド.LRed3P,
|
||||
RRed3P = Eパッド.RRed3P,
|
||||
LBlue3P = Eパッド.LBlue3P,
|
||||
RBlue3P = Eパッド.RBlue3P,
|
||||
|
||||
LRed4P = Eパッド.LRed4P,
|
||||
RRed4P = Eパッド.RRed4P,
|
||||
LBlue4P = Eパッド.LBlue4P,
|
||||
RBlue4P = Eパッド.RBlue4P,
|
||||
|
||||
LRed5P = Eパッド.LRed5P,
|
||||
RRed5P = Eパッド.RRed5P,
|
||||
LBlue5P = Eパッド.LBlue5P,
|
||||
RBlue5P = Eパッド.RBlue5P,
|
||||
|
||||
Clap = Eパッド.CLAP,
|
||||
@ -227,18 +227,18 @@ namespace TJAPlayer3
|
||||
HYPERRANDOM
|
||||
}
|
||||
|
||||
public enum EFunMods
|
||||
{
|
||||
NONE,
|
||||
AVALANCHE,
|
||||
MINESWEEPER,
|
||||
TOTAL,
|
||||
public enum EFunMods
|
||||
{
|
||||
NONE,
|
||||
AVALANCHE,
|
||||
MINESWEEPER,
|
||||
TOTAL,
|
||||
}
|
||||
|
||||
public enum EGameType
|
||||
{
|
||||
TAIKO = 0,
|
||||
KONGA = 1,
|
||||
public enum EGameType
|
||||
{
|
||||
TAIKO = 0,
|
||||
KONGA = 1,
|
||||
}
|
||||
|
||||
public enum E楽器パート // ここを修正するときは、セットで次の EKeyConfigPart も修正すること。
|
||||
@ -270,6 +270,7 @@ namespace TJAPlayer3
|
||||
MIDI入力 = 1,
|
||||
ジョイパッド = 2,
|
||||
マウス = 3,
|
||||
Gamepad = 4,
|
||||
不明 = -1
|
||||
}
|
||||
public enum E判定
|
||||
@ -815,13 +816,13 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
|
||||
public enum EReturnValue : int
|
||||
{
|
||||
Continuation,
|
||||
ReturnToTitle,
|
||||
SongChoosen
|
||||
}
|
||||
|
||||
public enum EReturnValue : int
|
||||
{
|
||||
Continuation,
|
||||
ReturnToTitle,
|
||||
SongChoosen
|
||||
}
|
||||
|
||||
#region[Ver.K追加]
|
||||
public enum Eレーンタイプ
|
||||
{
|
||||
|
@ -2757,6 +2757,15 @@ for (int i = 0; i < 3; i++) {
|
||||
}
|
||||
ConfigIni.dicJoystick.Add( key, device.GUID );
|
||||
}
|
||||
else if( ( device.CurrentType == InputDeviceType.Gamepad ) && !ConfigIni.dicGamepad.ContainsValue( device.GUID ) )
|
||||
{
|
||||
int key = 0;
|
||||
while( ConfigIni.dicGamepad.ContainsKey( key ) )
|
||||
{
|
||||
key++;
|
||||
}
|
||||
ConfigIni.dicGamepad.Add( key, device.GUID );
|
||||
}
|
||||
}
|
||||
foreach( IInputDevice device2 in Input管理.InputDevices )
|
||||
{
|
||||
@ -2772,6 +2781,18 @@ for (int i = 0; i < 3; i++) {
|
||||
}
|
||||
continue;
|
||||
}
|
||||
else if( device2.CurrentType == InputDeviceType.Gamepad )
|
||||
{
|
||||
foreach( KeyValuePair<int, string> pair in ConfigIni.dicGamepad )
|
||||
{
|
||||
if( device2.GUID.Equals( pair.Value ) )
|
||||
{
|
||||
( (CInputGamepad) device2 ).SetID( pair.Key );
|
||||
break;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
}
|
||||
Trace.TraceInformation( "DirectInput の初期化を完了しました。" );
|
||||
}
|
||||
|
@ -371,6 +371,19 @@ namespace TJAPlayer3
|
||||
}
|
||||
#endregion
|
||||
|
||||
NewHeya_Close = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}Close.png");
|
||||
NewHeya_Close_Select = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}Close_Select.png");
|
||||
NewHeya_PlayerPlate[0] = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}PlayerPlate_1P.png");
|
||||
NewHeya_PlayerPlate[1] = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}PlayerPlate_2P.png");
|
||||
NewHeya_PlayerPlate[2] = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}PlayerPlate_3P.png");
|
||||
NewHeya_PlayerPlate[3] = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}PlayerPlate_4P.png");
|
||||
NewHeya_PlayerPlate[4] = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}PlayerPlate_5P.png");
|
||||
NewHeya_PlayerPlate_Select = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}PlayerPlate_Select.png");
|
||||
NewHeya_ModeBar = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}ModeBar.png");
|
||||
NewHeya_ModeBar_Select = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}ModeBar_Select.png");
|
||||
NewHeya_Box = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}Box.png");
|
||||
NewHeya_Lock = TxC(SONGSELECT + @$"NewHeya{Path.DirectorySeparatorChar}Lock.png");
|
||||
|
||||
#endregion
|
||||
|
||||
#region 3_段位選択画面
|
||||
@ -1171,14 +1184,19 @@ namespace TJAPlayer3
|
||||
Characters_Normal_MissedDown = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Normal_Cleared = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Normal_Maxed = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_MissIn = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_MissDownIn = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_GoGoTime = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_GoGoTime_Maxed = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_10Combo = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_10Combo_Clear = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_10Combo_Maxed = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_GoGoStart = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_GoGoStart_Clear = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_GoGoStart_Maxed = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Become_Cleared = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Become_Maxed = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_SoulOut = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Return = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Balloon_Breaking = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
Characters_Balloon_Broke = new CTexture[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
@ -1199,14 +1217,19 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Normal_MissedDown_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Normal_Cleared_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_MissIn_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_MissDownIn_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_GoGoTime_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_GoGoTime_Maxed_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_10Combo_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_GoGoStart_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Become_Cleared_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Become_Maxed_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_SoulOut_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Return_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Balloon_Breaking_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Balloon_Broke_Ptn = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
@ -1235,17 +1258,22 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Balloon_5P = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_Normal = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_10Combo = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_10Combo_Clear = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_10ComboMax = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_Miss = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_MissDown = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_ClearIn = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_Clear = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_ClearMax = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_MissIn = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_MissDownIn = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStart = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStart_Clear = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStartMax = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGo = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoMax = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_SoulIn = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_SoulOut = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Motion_Return = new int[TJAPlayer3.Skin.Characters_Ptn][];
|
||||
TJAPlayer3.Skin.Characters_Beat_Normal = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_Miss = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
@ -1253,13 +1281,18 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Beat_Clear = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGo = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_10Combo = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_10Combo_Clear = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_10ComboMax = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_ClearIn = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_ClearMax = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_MissIn = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_MissDownIn = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStart = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStart_Clear = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStartMax = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoMax = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_SoulIn = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_SoulOut = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Beat_Return = new float[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Balloon_Timer = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
TJAPlayer3.Skin.Characters_Balloon_Delay = new int[TJAPlayer3.Skin.Characters_Ptn];
|
||||
@ -1458,6 +1491,12 @@ namespace TJAPlayer3
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn[i]; j++)
|
||||
Characters_Normal_Maxed[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_MissIn_Ptn[i]; j++)
|
||||
Characters_MissIn[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_MissDownIn_Ptn[i]; j++)
|
||||
Characters_MissDownIn[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoTime_Ptn[i]; j++)
|
||||
Characters_GoGoTime[i][j]?.Dispose();
|
||||
|
||||
@ -1467,12 +1506,18 @@ namespace TJAPlayer3
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoStart_Ptn[i]; j++)
|
||||
Characters_GoGoStart[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[i]; j++)
|
||||
Characters_GoGoStart_Clear[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[i]; j++)
|
||||
Characters_GoGoStart_Maxed[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_10Combo_Ptn[i]; j++)
|
||||
Characters_10Combo[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn[i]; j++)
|
||||
Characters_10Combo_Clear[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn[i]; j++)
|
||||
Characters_10Combo_Maxed[i][j]?.Dispose();
|
||||
|
||||
@ -1482,6 +1527,9 @@ namespace TJAPlayer3
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_Become_Maxed_Ptn[i]; j++)
|
||||
Characters_Become_Maxed[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_SoulOut_Ptn[i]; j++)
|
||||
Characters_SoulOut[i][j]?.Dispose();
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_Return_Ptn[i]; j++)
|
||||
Characters_Return[i][j]?.Dispose();
|
||||
|
||||
@ -1515,16 +1563,21 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Normal_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Normal{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Normal_Missed_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Miss{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Normal_MissedDown_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}MissDown{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_MissIn_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}MissIn{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_MissDownIn_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}MissDownIn{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Normal_Cleared_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Clear{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Clear_Max{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_GoGoTime_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}GoGo{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_GoGoTime_Maxed_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}GoGo_Max{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_10Combo_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}10combo{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}10combo_Clear{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}10combo_Max{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_GoGoStart_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}GoGoStart{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}GoGoStart_Clear{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}GoGoStart_Max{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Become_Cleared_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Clearin{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Become_Maxed_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Soulin{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_SoulOut_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}SoulOut{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Return_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Return{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Balloon_Breaking_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Balloon_Breaking{Path.DirectorySeparatorChar}");
|
||||
TJAPlayer3.Skin.Characters_Balloon_Broke_Ptn[i] = TJAPlayer3.t連番画像の枚数を数える(charaPath + @$"{Path.DirectorySeparatorChar}Balloon_Broke{Path.DirectorySeparatorChar}");
|
||||
@ -1544,14 +1597,19 @@ namespace TJAPlayer3
|
||||
Characters_Normal_MissedDown[i] = new CTexture[TJAPlayer3.Skin.Characters_Normal_MissedDown_Ptn[i]];
|
||||
Characters_Normal_Cleared[i] = new CTexture[TJAPlayer3.Skin.Characters_Normal_Cleared_Ptn[i]];
|
||||
Characters_Normal_Maxed[i] = new CTexture[TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn[i]];
|
||||
Characters_MissIn[i] = new CTexture[TJAPlayer3.Skin.Characters_MissIn_Ptn[i]];
|
||||
Characters_MissDownIn[i] = new CTexture[TJAPlayer3.Skin.Characters_MissDownIn_Ptn[i]];
|
||||
Characters_GoGoTime[i] = new CTexture[TJAPlayer3.Skin.Characters_GoGoTime_Ptn[i]];
|
||||
Characters_GoGoTime_Maxed[i] = new CTexture[TJAPlayer3.Skin.Characters_GoGoTime_Maxed_Ptn[i]];
|
||||
Characters_10Combo[i] = new CTexture[TJAPlayer3.Skin.Characters_10Combo_Ptn[i]];
|
||||
Characters_10Combo_Clear[i] = new CTexture[TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn[i]];
|
||||
Characters_10Combo_Maxed[i] = new CTexture[TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn[i]];
|
||||
Characters_GoGoStart[i] = new CTexture[TJAPlayer3.Skin.Characters_GoGoStart_Ptn[i]];
|
||||
Characters_GoGoStart_Clear[i] = new CTexture[TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[i]];
|
||||
Characters_GoGoStart_Maxed[i] = new CTexture[TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[i]];
|
||||
Characters_Become_Cleared[i] = new CTexture[TJAPlayer3.Skin.Characters_Become_Cleared_Ptn[i]];
|
||||
Characters_Become_Maxed[i] = new CTexture[TJAPlayer3.Skin.Characters_Become_Maxed_Ptn[i]];
|
||||
Characters_SoulOut[i] = new CTexture[TJAPlayer3.Skin.Characters_SoulOut_Ptn[i]];
|
||||
Characters_Return[i] = new CTexture[TJAPlayer3.Skin.Characters_Return_Ptn[i]];
|
||||
Characters_Balloon_Breaking[i] = new CTexture[TJAPlayer3.Skin.Characters_Balloon_Breaking_Ptn[i]];
|
||||
Characters_Balloon_Broke[i] = new CTexture[TJAPlayer3.Skin.Characters_Balloon_Broke_Ptn[i]];
|
||||
@ -1612,6 +1670,12 @@ namespace TJAPlayer3
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn[i]; j++)
|
||||
Characters_Normal_Maxed[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}Clear_Max{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_MissIn_Ptn[i]; j++)
|
||||
Characters_MissIn[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}MissIn{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_MissDownIn_Ptn[i]; j++)
|
||||
Characters_MissDownIn[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}MissDownIn{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoTime_Ptn[i]; j++)
|
||||
Characters_GoGoTime[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}GoGo{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
@ -1621,12 +1685,18 @@ namespace TJAPlayer3
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoStart_Ptn[i]; j++)
|
||||
Characters_GoGoStart[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}GoGoStart{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[i]; j++)
|
||||
Characters_GoGoStart_Clear[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}GoGoStart_Clear{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[i]; j++)
|
||||
Characters_GoGoStart_Maxed[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}GoGoStart_Max{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_10Combo_Ptn[i]; j++)
|
||||
Characters_10Combo[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}10combo{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn[i]; j++)
|
||||
Characters_10Combo_Clear[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}10combo_Clear{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn[i]; j++)
|
||||
Characters_10Combo_Maxed[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}10combo_Max{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
@ -1636,6 +1706,9 @@ namespace TJAPlayer3
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_Become_Maxed_Ptn[i]; j++)
|
||||
Characters_Become_Maxed[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}Soulin{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_SoulOut_Ptn[i]; j++)
|
||||
Characters_SoulOut[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}Soulout{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
for (int j = 0; j < TJAPlayer3.Skin.Characters_Return_Ptn[i]; j++)
|
||||
Characters_Return[i][j] = TxCGlobal(CHARACTERS + TJAPlayer3.Skin.Characters_DirName[i] + @$"{Path.DirectorySeparatorChar}Return{Path.DirectorySeparatorChar}" + j.ToString() + @$".png");
|
||||
|
||||
@ -1666,31 +1739,41 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Balloon_5P[i] = new int[] { 0, -168 };
|
||||
TJAPlayer3.Skin.Characters_Motion_Normal[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Normal_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_10Combo[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_10Combo_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_10Combo_Clear[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_10ComboMax[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_Miss[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Normal_Missed_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_MissDown[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Normal_MissedDown_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_ClearIn[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Become_Cleared_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_Clear[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Normal_Cleared_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_ClearMax[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_MissIn[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_MissIn_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_MissDownIn[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_MissDownIn_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStart[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_GoGoStart_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStart_Clear[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStartMax[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGo[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_GoGoTime_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoMax[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_GoGoTime_Maxed_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_SoulIn[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Become_Maxed_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_SoulOut[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_SoulOut_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Motion_Return[i] = CreateNumberedArrayFromInt(TJAPlayer3.Skin.Characters_Return_Ptn[i]);
|
||||
TJAPlayer3.Skin.Characters_Beat_Normal[i] = 1;
|
||||
TJAPlayer3.Skin.Characters_Beat_Miss[i] = 1;
|
||||
TJAPlayer3.Skin.Characters_Beat_MissDown[i] = 1;
|
||||
TJAPlayer3.Skin.Characters_Beat_Clear[i] = 2;
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGo[i] = 2;
|
||||
TJAPlayer3.Skin.Characters_Beat_MissIn[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_MissDownIn[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_10Combo[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_10Combo_Clear[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_10ComboMax[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_ClearIn[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_ClearMax[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStart[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStart_Clear[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStartMax[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoMax[i] = 2;
|
||||
TJAPlayer3.Skin.Characters_Beat_SoulIn[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_SoulOut[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Beat_Return[i] = 1.5f;
|
||||
TJAPlayer3.Skin.Characters_Balloon_Timer[i] = 28;
|
||||
TJAPlayer3.Skin.Characters_Balloon_Delay[i] = 500;
|
||||
@ -1850,6 +1933,11 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Motion_10Combo[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_10Combo_Clear":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_10Combo_Clear[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_10Combo_Max":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_10ComboMax[i] = CConversion.StringToIntArray(strParam);
|
||||
@ -1881,12 +1969,27 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Motion_ClearMax[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_MissIn":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_MissIn[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_MissDownIn":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_MissDownIn[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_GoGoStart":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStart[i] = CConversion.StringToIntArray(strParam);
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStartMax[i] = TJAPlayer3.Skin.Characters_Motion_GoGoStart[i];
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_GoGoStart_Clear":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStart_Clear[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_GoGoStart_Max":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_GoGoStartMax[i] = CConversion.StringToIntArray(strParam);
|
||||
@ -1908,6 +2011,11 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Motion_SoulIn[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_SoulOut":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_SoulOut[i] = CConversion.StringToIntArray(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Motion_Return":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Motion_Return[i] = CConversion.StringToIntArray(strParam);
|
||||
@ -1954,11 +2062,26 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.Characters_Beat_ClearMax[i] = float.Parse(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Beat_MissIn":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Beat_MissIn[i] = float.Parse(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Beat_MissDownIn":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Beat_MissDownIn[i] = float.Parse(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Beat_GoGoStart":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStart[i] = float.Parse(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Beat_GoGoStartClear":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStart_Clear[i] = float.Parse(strParam);
|
||||
break;
|
||||
}
|
||||
case "Game_Chara_Beat_GoGoStartMax":
|
||||
{
|
||||
TJAPlayer3.Skin.Characters_Beat_GoGoStartMax[i] = float.Parse(strParam);
|
||||
@ -2252,6 +2375,15 @@ namespace TJAPlayer3
|
||||
public CTexture[] Difficulty_Back;
|
||||
#endregion
|
||||
|
||||
public CTexture NewHeya_Close;
|
||||
public CTexture NewHeya_Close_Select;
|
||||
public CTexture[] NewHeya_PlayerPlate = new CTexture[5];
|
||||
public CTexture NewHeya_PlayerPlate_Select;
|
||||
public CTexture NewHeya_ModeBar;
|
||||
public CTexture NewHeya_ModeBar_Select;
|
||||
public CTexture NewHeya_Box;
|
||||
public CTexture NewHeya_Lock;
|
||||
|
||||
#endregion
|
||||
|
||||
#region 3_段位選択画面
|
||||
@ -2626,14 +2758,19 @@ Result_Mountain = new CTexture[4]*/;
|
||||
Characters_Normal_MissedDown,
|
||||
Characters_Normal_Cleared,
|
||||
Characters_Normal_Maxed,
|
||||
Characters_MissIn,
|
||||
Characters_MissDownIn,
|
||||
Characters_GoGoTime,
|
||||
Characters_GoGoTime_Maxed,
|
||||
Characters_10Combo,
|
||||
Characters_10Combo_Clear,
|
||||
Characters_10Combo_Maxed,
|
||||
Characters_GoGoStart,
|
||||
Characters_GoGoStart_Clear,
|
||||
Characters_GoGoStart_Maxed,
|
||||
Characters_Become_Cleared,
|
||||
Characters_Become_Maxed,
|
||||
Characters_SoulOut,
|
||||
Characters_Return,
|
||||
Characters_Balloon_Breaking,
|
||||
Characters_Balloon_Broke,
|
||||
|
@ -122,7 +122,7 @@ namespace TJAPlayer3
|
||||
this.bキー入力待ち = false;
|
||||
TJAPlayer3.Input管理.Polling( false );
|
||||
}
|
||||
else if( ( this.tキーチェックとアサイン_Keyboard() || this.tキーチェックとアサイン_MidiIn() ) || ( this.tキーチェックとアサイン_Joypad() || this.tキーチェックとアサイン_Mouse() ) )
|
||||
else if( ( this.tキーチェックとアサイン_Keyboard() || this.tキーチェックとアサイン_MidiIn() ) || ( this.tキーチェックとアサイン_Joypad() || tキーチェックとアサイン_Gamepad() || this.tキーチェックとアサイン_Mouse() ) )
|
||||
{
|
||||
this.bキー入力待ち = false;
|
||||
TJAPlayer3.Input管理.Polling( false );
|
||||
@ -177,6 +177,10 @@ namespace TJAPlayer3
|
||||
this.tアサインコードの描画_Joypad( i + 1, x + num5, y, stkeyassignArray[ i ].ID, stkeyassignArray[ i ].コード, this.n現在の選択行 == i );
|
||||
break;
|
||||
|
||||
case E入力デバイス.Gamepad:
|
||||
this.tアサインコードの描画_Gamepad( i + 1, x + num5, y, stkeyassignArray[ i ].ID, stkeyassignArray[ i ].コード, this.n現在の選択行 == i );
|
||||
break;
|
||||
|
||||
case E入力デバイス.マウス:
|
||||
this.tアサインコードの描画_Mouse( i + 1, x + num5, y, stkeyassignArray[ i ].ID, stkeyassignArray[ i ].コード, this.n現在の選択行 == i );
|
||||
break;
|
||||
@ -290,6 +294,23 @@ namespace TJAPlayer3
|
||||
}
|
||||
TJAPlayer3.stageコンフィグ.actFont.t文字列描画( x, y, string.Format( "{0,2}. Joypad #{1} ", line, nID ) + str, b強調, 0.75f );
|
||||
}
|
||||
private void tアサインコードの描画_Gamepad( int line, int x, int y, int nID, int nCode, bool b強調 )
|
||||
{
|
||||
string str = "";
|
||||
if ((8 <= nCode) && (nCode < 8 + 128)) // other buttons (128 types)
|
||||
{
|
||||
str = string.Format("Button{0}", nCode - 7);
|
||||
}
|
||||
else if ((8 + 128 <= nCode) && (nCode < 8 + 128 + 8)) // POV HAT ( 8 types; 45 degrees per HATs)
|
||||
{
|
||||
str = string.Format("POV {0}", (nCode - 8 - 128) * 45);
|
||||
}
|
||||
else
|
||||
{
|
||||
str = string.Format( "Code{0}", nCode );
|
||||
}
|
||||
TJAPlayer3.stageコンフィグ.actFont.t文字列描画( x, y, string.Format( "{0,2}. Gamepad #{1} ", line, nID ) + str, b強調, 0.75f );
|
||||
}
|
||||
private void tアサインコードの描画_Keyboard( int line, int x, int y, int nID, int nCode, bool b強調 )
|
||||
{
|
||||
string str = null;
|
||||
@ -315,6 +336,29 @@ namespace TJAPlayer3
|
||||
{
|
||||
TJAPlayer3.stageコンフィグ.actFont.t文字列描画( x, y, string.Format( "{0,2}. Mouse Button{1}", line, nCode ), b強調, 0.75f );
|
||||
}
|
||||
|
||||
private bool tキーチェックとアサイン_Gamepad()
|
||||
{
|
||||
foreach( IInputDevice device in TJAPlayer3.Input管理.InputDevices )
|
||||
{
|
||||
if( device.CurrentType == InputDeviceType.Gamepad )
|
||||
{
|
||||
for (int i = 0; i < 15; i++) // +8 for Axis, +8 for HAT
|
||||
{
|
||||
if (device.KeyPressed(i))
|
||||
{
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
TJAPlayer3.ConfigIni.t指定した入力が既にアサイン済みである場合はそれを全削除する( E入力デバイス.Gamepad, device.ID, i, this.pad);
|
||||
TJAPlayer3.ConfigIni.KeyAssign[ (int) this.part ][ (int) this.pad ][ this.n現在の選択行 ].入力デバイス = E入力デバイス.Gamepad;
|
||||
TJAPlayer3.ConfigIni.KeyAssign[ (int) this.part ][ (int) this.pad ][ this.n現在の選択行 ].ID = device.ID;
|
||||
TJAPlayer3.ConfigIni.KeyAssign[ (int) this.part ][ (int) this.pad ][ this.n現在の選択行 ].コード = i;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
private bool tキーチェックとアサイン_Joypad()
|
||||
{
|
||||
foreach( IInputDevice device in TJAPlayer3.Input管理.InputDevices )
|
||||
|
@ -223,8 +223,6 @@ namespace TJAPlayer3
|
||||
//CDTXMania.tテクスチャの解放( ref this.tx下部パネル );
|
||||
//CDTXMania.tテクスチャの解放( ref this.txMenuカーソル );
|
||||
|
||||
TJAPlayer3.t安全にDisposeする(ref TJAPlayer3.Tx.Config_Cursor);
|
||||
|
||||
TJAPlayer3.tテクスチャの解放( ref this.tx説明文パネル );
|
||||
base.ReleaseManagedResource();
|
||||
}
|
||||
|
@ -207,6 +207,7 @@ namespace TJAPlayer3
|
||||
base.ChildActivities.Add(this.act難易度選択画面 = new CActSelect難易度選択画面());
|
||||
base.ChildActivities.Add(this.actPlayOption = new CActPlayOption());
|
||||
base.ChildActivities.Add(this.actExExtraTransAnime = new CActSelectExExtraTransAnime());
|
||||
base.ChildActivities.Add(this.actNewHeya = new CActNewHeya());
|
||||
base.ChildActivities.Add(this.PuchiChara = new PuchiChara());
|
||||
|
||||
|
||||
@ -866,7 +867,7 @@ namespace TJAPlayer3
|
||||
this.act曲リスト.tMenuContextDisable();
|
||||
}
|
||||
}
|
||||
else if (!this.actSortSongs.bIsActivePopupMenu && !this.actQuickConfig.bIsActivePopupMenu && !this.act難易度選択画面.bIsDifficltSelect)
|
||||
else if (!this.actSortSongs.bIsActivePopupMenu && !this.actQuickConfig.bIsActivePopupMenu && !this.act難易度選択画面.bIsDifficltSelect && !actNewHeya.IsOpend)
|
||||
{
|
||||
#region [ ESC ]
|
||||
if ((TJAPlayer3.Pad.b押されたDGB(Eパッド.Cancel) || TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.Escape)) && (this.act曲リスト.r現在選択中の曲 != null))// && ( ) ) )
|
||||
@ -970,18 +971,24 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
/*
|
||||
#region [ F8 ランダム選曲 ]
|
||||
if (TJAPlayer3.Input管理.Keyboard.bキーが押された((int)SlimDXKeys.Key.F8))
|
||||
if (TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.F8))
|
||||
{
|
||||
/*
|
||||
if (TJAPlayer3.Skin.sound曲決定音.b読み込み成功)
|
||||
TJAPlayer3.Skin.sound曲決定音.t再生する();
|
||||
else
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
this.t曲をランダム選択する();
|
||||
*/
|
||||
}
|
||||
#endregion
|
||||
#region [ F9 ]
|
||||
if (TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.F9))
|
||||
{
|
||||
actNewHeya.Open();
|
||||
}
|
||||
#endregion
|
||||
*/
|
||||
|
||||
if (this.act曲リスト.r現在選択中の曲 != null)
|
||||
{
|
||||
@ -1284,6 +1291,8 @@ namespace TJAPlayer3
|
||||
if (act難易度選択画面.bOption[3]) actPlayOption.On進行描画(3);
|
||||
if (act難易度選択画面.bOption[4]) actPlayOption.On進行描画(4);
|
||||
|
||||
if (actNewHeya.IsOpend) actNewHeya.Draw();
|
||||
|
||||
switch (base.eフェーズID)
|
||||
{
|
||||
case CStage.Eフェーズ.共通_フェードイン:
|
||||
@ -1398,6 +1407,7 @@ namespace TJAPlayer3
|
||||
public CActSelect難易度選択画面 act難易度選択画面;
|
||||
public CActPlayOption actPlayOption;
|
||||
public CActSelectExExtraTransAnime actExExtraTransAnime;
|
||||
public CActNewHeya actNewHeya;
|
||||
|
||||
public CActSortSongs actSortSongs;
|
||||
private CActSelectQuickConfig actQuickConfig;
|
||||
@ -1411,7 +1421,7 @@ namespace TJAPlayer3
|
||||
//private CCounter ctDonchan_Select;
|
||||
//public CCounter[] ctDonchan_Jump = new CCounter[2];
|
||||
|
||||
private PuchiChara PuchiChara;
|
||||
public PuchiChara PuchiChara;
|
||||
|
||||
private int nGenreBack;
|
||||
private int nOldGenreBack;
|
||||
|
@ -1955,11 +1955,34 @@ namespace TJAPlayer3
|
||||
|
||||
if ( eJudgeResult == E判定.Poor || eJudgeResult == E判定.Miss || eJudgeResult == E判定.Bad )
|
||||
{
|
||||
int Character = this.actChara.iCurrentCharacter[nPlayer];
|
||||
|
||||
// ランナー(みすったやつ)
|
||||
this.actRunner.Start(nPlayer, true, pChip);
|
||||
if (!HGaugeMethods.UNSAFE_IsRainbow(nPlayer) && this.bIsAlreadyMaxed[nPlayer] == true)
|
||||
{
|
||||
this.bIsAlreadyMaxed[nPlayer] = false;
|
||||
if(TJAPlayer3.Skin.Characters_SoulOut_Ptn[Character] != 0 && actChara.CharaAction_Balloon_Delay[nPlayer].IsEnded)
|
||||
{
|
||||
this.actChara.ChangeAnime(nPlayer, CAct演奏Drumsキャラクター.Anime.SoulOut, true);
|
||||
}
|
||||
}
|
||||
else if (!bIsGOGOTIME[nPlayer])
|
||||
{
|
||||
if (Chara_MissCount[nPlayer] == 1 - 1)
|
||||
{
|
||||
if(TJAPlayer3.Skin.Characters_MissIn_Ptn[Character] != 0 && actChara.CharaAction_Balloon_Delay[nPlayer].IsEnded)
|
||||
{
|
||||
this.actChara.ChangeAnime(nPlayer, CAct演奏Drumsキャラクター.Anime.MissIn, true);
|
||||
}
|
||||
}
|
||||
else if (Chara_MissCount[nPlayer] == 6 - 1)
|
||||
{
|
||||
if(TJAPlayer3.Skin.Characters_MissDownIn_Ptn[Character] != 0 && actChara.CharaAction_Balloon_Delay[nPlayer].IsEnded)
|
||||
{
|
||||
this.actChara.ChangeAnime(nPlayer, CAct演奏Drumsキャラクター.Anime.MissDownIn, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!cleared && this.bIsAlreadyCleared[nPlayer] == true)
|
||||
{
|
||||
@ -3931,7 +3954,7 @@ namespace TJAPlayer3
|
||||
{
|
||||
if (TJAPlayer3.Skin.Characters_GoGoStart_Ptn[Character] != 0 && actChara.CharaAction_Balloon_Delay[nPlayer].IsEnded)
|
||||
{
|
||||
if (!HGaugeMethods.UNSAFE_IsRainbow(nPlayer))
|
||||
if (!HGaugeMethods.UNSAFE_IsRainbow(nPlayer) && (!HGaugeMethods.UNSAFE_FastNormaCheck(nPlayer) || TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[Character] == 0))
|
||||
{
|
||||
// 魂ゲージMAXではない
|
||||
// ゴーゴースタート_ノーマル
|
||||
@ -3939,6 +3962,13 @@ namespace TJAPlayer3
|
||||
//this.actChara.マイどん_アクション_10コンボ();
|
||||
}
|
||||
}
|
||||
if (TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[Character] != 0 && actChara.CharaAction_Balloon_Delay[nPlayer].IsEnded)
|
||||
{
|
||||
if (!HGaugeMethods.UNSAFE_IsRainbow(nPlayer) && HGaugeMethods.UNSAFE_FastNormaCheck(nPlayer))
|
||||
{
|
||||
this.actChara.ChangeAnime(nPlayer, CAct演奏Drumsキャラクター.Anime.GoGoStart_Clear, true);
|
||||
}
|
||||
}
|
||||
if (TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[Character] != 0 && actChara.CharaAction_Balloon_Delay[nPlayer].IsEnded)
|
||||
{
|
||||
if (HGaugeMethods.UNSAFE_IsRainbow(nPlayer))
|
||||
|
@ -171,8 +171,8 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
nNowCharaFrame[i] = (int)nNowCharaCounter[i];
|
||||
bool endAnime = nNowCharaFrame[i] > nCharaFrameCount[i];
|
||||
nNowCharaFrame[i] = Math.Min(nNowCharaFrame[i], nCharaFrameCount[i]);
|
||||
bool endAnime = nNowCharaFrame[i] >= nCharaFrameCount[i];
|
||||
|
||||
if (eNowAnime[i] != Anime.None)
|
||||
{
|
||||
@ -243,6 +243,32 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.MissIn:
|
||||
{
|
||||
updateNormal();
|
||||
if (TJAPlayer3.Tx.Characters_MissIn[Character] != null && TJAPlayer3.Skin.Characters_MissIn_Ptn[Character] != 0)
|
||||
{
|
||||
nowChara = TJAPlayer3.Tx.Characters_MissIn[Character][TJAPlayer3.Skin.Characters_Motion_MissIn[Character][nNowCharaFrame[i]]];
|
||||
}
|
||||
if (endAnime)
|
||||
{
|
||||
ReturnDefaultAnime(i, true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.MissDownIn:
|
||||
{
|
||||
updateNormal();
|
||||
if (TJAPlayer3.Tx.Characters_MissDownIn[Character] != null && TJAPlayer3.Skin.Characters_MissDownIn_Ptn[Character] != 0)
|
||||
{
|
||||
nowChara = TJAPlayer3.Tx.Characters_MissDownIn[Character][TJAPlayer3.Skin.Characters_Motion_MissDownIn[Character][nNowCharaFrame[i]]];
|
||||
}
|
||||
if (endAnime)
|
||||
{
|
||||
ReturnDefaultAnime(i, true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.GoGoTime:
|
||||
{
|
||||
updateNormal();
|
||||
@ -280,6 +306,19 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.Combo10_Clear:
|
||||
{
|
||||
updateNormal();
|
||||
if (TJAPlayer3.Tx.Characters_10Combo_Clear[Character] != null && TJAPlayer3.Skin.Characters_10Combo_Clear_Ptn[Character] != 0)
|
||||
{
|
||||
nowChara = TJAPlayer3.Tx.Characters_10Combo_Clear[Character][TJAPlayer3.Skin.Characters_Motion_10Combo_Clear[Character][nNowCharaFrame[i]]];
|
||||
}
|
||||
if (endAnime)
|
||||
{
|
||||
ReturnDefaultAnime(i, true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.Combo10_Max:
|
||||
{
|
||||
updateNormal();
|
||||
@ -306,6 +345,19 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.GoGoStart_Clear:
|
||||
{
|
||||
updateNormal();
|
||||
if (TJAPlayer3.Tx.Characters_GoGoStart_Clear[Character] != null && TJAPlayer3.Skin.Characters_GoGoStart_Clear_Ptn[Character] != 0)
|
||||
{
|
||||
nowChara = TJAPlayer3.Tx.Characters_GoGoStart_Clear[Character][TJAPlayer3.Skin.Characters_Motion_GoGoStart_Clear[Character][nNowCharaFrame[i]]];
|
||||
}
|
||||
if (endAnime)
|
||||
{
|
||||
ReturnDefaultAnime(i, true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.GoGoStart_Max:
|
||||
{
|
||||
updateNormal();
|
||||
@ -345,6 +397,19 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.SoulOut:
|
||||
{
|
||||
updateNormal();
|
||||
if (TJAPlayer3.Tx.Characters_SoulOut[Character] != null && TJAPlayer3.Skin.Characters_SoulOut_Ptn[Character] != 0)
|
||||
{
|
||||
nowChara = TJAPlayer3.Tx.Characters_SoulOut[Character][TJAPlayer3.Skin.Characters_Motion_SoulOut[Character][nNowCharaFrame[i]]];
|
||||
}
|
||||
if (endAnime)
|
||||
{
|
||||
ReturnDefaultAnime(i, true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case Anime.Return:
|
||||
{
|
||||
updateNormal();
|
||||
@ -653,14 +718,19 @@ namespace TJAPlayer3
|
||||
MissDown,
|
||||
Cleared,
|
||||
Maxed,
|
||||
MissIn,
|
||||
MissDownIn,
|
||||
GoGoTime,
|
||||
GoGoTime_Maxed,
|
||||
Combo10,
|
||||
Combo10_Clear,
|
||||
Combo10_Max,
|
||||
GoGoStart,
|
||||
GoGoStart_Clear,
|
||||
GoGoStart_Max,
|
||||
Become_Cleared,
|
||||
Become_Maxed,
|
||||
SoulOut,
|
||||
Return,
|
||||
Balloon_Breaking,
|
||||
Balloon_Broke,
|
||||
@ -684,59 +754,79 @@ namespace TJAPlayer3
|
||||
case Anime.None:
|
||||
break;
|
||||
case Anime.Normal:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Normal_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_Normal[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_Normal[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Miss:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Normal_Missed_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_Miss[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_Miss[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.MissDown:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Normal_MissedDown_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_MissDown[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_MissDown[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Cleared:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Normal_Cleared_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_Clear[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_Clear[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Maxed:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Normal_Maxed_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_ClearMax[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_ClearMax[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.MissIn:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_MissIn[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_MissIn[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.MissDownIn:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_MissDownIn[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_MissDownIn[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.GoGoTime:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_GoGoTime_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_GoGo[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_GoGo[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.GoGoTime_Maxed:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_GoGoTime_Maxed_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_GoGoMax[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_GoGoMax[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Combo10:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_10Combo_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_10Combo[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_10Combo[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Combo10_Clear:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_10Combo_Clear[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_10Combo_Clear[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Combo10_Max:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_10Combo_Maxed_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_10ComboMax[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_10ComboMax[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.GoGoStart:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_GoGoStart_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_GoGoStart[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_GoGoStart[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.GoGoStart_Clear:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_GoGoStart_Clear[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_GoGoStart_Clear[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.GoGoStart_Max:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_GoGoStart_Maxed_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_GoGoStartMax[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_GoGoStartMax[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Become_Cleared:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Become_Cleared_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_ClearIn[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_ClearIn[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Become_Maxed:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Become_Maxed_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_SoulIn[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_SoulIn[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.SoulOut:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_SoulOut[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_SoulOut[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Return:
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Return_Ptn[iCurrentCharacter[player]] - 1;
|
||||
nCharaFrameCount[player] = TJAPlayer3.Skin.Characters_Motion_Return[iCurrentCharacter[player]].Length - 1;
|
||||
nCharaBeat[player] = TJAPlayer3.Skin.Characters_Beat_Return[iCurrentCharacter[player]];
|
||||
break;
|
||||
case Anime.Balloon_Breaking:
|
||||
|
777
OpenTaiko/src/Stages/CActNewHeya.cs
Normal file
@ -0,0 +1,777 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using FDK;
|
||||
|
||||
namespace TJAPlayer3
|
||||
{
|
||||
class CActNewHeya : CActivity
|
||||
{
|
||||
public bool IsOpend { get; private set; }
|
||||
private CCachedFontRenderer MenuFont;
|
||||
|
||||
private CActSelect曲リスト.TitleTextureKey[] MenuTitleKeys = new CActSelect曲リスト.TitleTextureKey[5];
|
||||
private CActSelect曲リスト.TitleTextureKey[] ttkPuchiCharaNames;
|
||||
private CActSelect曲リスト.TitleTextureKey[] ttkPuchiCharaAuthors;
|
||||
private CActSelect曲リスト.TitleTextureKey[] ttkCharacterNames;
|
||||
private CActSelect曲リスト.TitleTextureKey[] ttkCharacterAuthors;
|
||||
private CActSelect曲リスト.TitleTextureKey ttkInfoSection;
|
||||
private CActSelect曲リスト.TitleTextureKey[] ttkDanTitles;
|
||||
private CActSelect曲リスト.TitleTextureKey[] ttkTitles;
|
||||
private string[] titlesKeys;
|
||||
|
||||
public CCounter InFade;
|
||||
|
||||
public CCounter CharaBoxAnime;
|
||||
|
||||
private int CurrentIndex;
|
||||
|
||||
private int CurrentMaxIndex;
|
||||
|
||||
private int CurrentPlayer;
|
||||
|
||||
private enum SelectableInfo
|
||||
{
|
||||
PlayerSelect,
|
||||
ModeSelect,
|
||||
Select
|
||||
}
|
||||
|
||||
private enum ModeType
|
||||
{
|
||||
None = -1,
|
||||
PuchiChara,
|
||||
Chara,
|
||||
DanTitle,
|
||||
SubTitle
|
||||
}
|
||||
|
||||
private SelectableInfo CurrentState;
|
||||
|
||||
private ModeType CurrentMode = ModeType.None;
|
||||
|
||||
private void SetState(SelectableInfo selectableInfo)
|
||||
{
|
||||
CurrentState = selectableInfo;
|
||||
switch(selectableInfo)
|
||||
{
|
||||
case SelectableInfo.PlayerSelect:
|
||||
CurrentIndex = 1;
|
||||
CurrentMaxIndex = TJAPlayer3.ConfigIni.nPlayerCount + 1;
|
||||
break;
|
||||
case SelectableInfo.ModeSelect:
|
||||
CurrentIndex = 1;
|
||||
CurrentMaxIndex = 5;
|
||||
break;
|
||||
case SelectableInfo.Select:
|
||||
CurrentMode = (ModeType)(CurrentIndex - 1);
|
||||
switch(CurrentMode)
|
||||
{
|
||||
case ModeType.Chara:
|
||||
CurrentMaxIndex = TJAPlayer3.Skin.Characters_Ptn;
|
||||
break;
|
||||
case ModeType.PuchiChara:
|
||||
CurrentMaxIndex = TJAPlayer3.Skin.Puchichara_Ptn;
|
||||
break;
|
||||
case ModeType.DanTitle:
|
||||
{
|
||||
int amount = 1;
|
||||
if (TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles != null)
|
||||
amount += TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles.Count;
|
||||
|
||||
this.ttkDanTitles = new CActSelect曲リスト.TitleTextureKey[amount];
|
||||
|
||||
// Silver Shinjin (default rank) always avaliable by default
|
||||
this.ttkDanTitles[0] = new CActSelect曲リスト.TitleTextureKey("新人", this.MenuFont, Color.White, Color.Black, 1000);
|
||||
|
||||
int idx = 1;
|
||||
if (TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles != null)
|
||||
{
|
||||
foreach (var item in TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles)
|
||||
{
|
||||
if (item.Value.isGold == true)
|
||||
this.ttkDanTitles[idx] = new CActSelect曲リスト.TitleTextureKey(item.Key, this.MenuFont, Color.Gold, Color.Black, 1000);
|
||||
else
|
||||
this.ttkDanTitles[idx] = new CActSelect曲リスト.TitleTextureKey(item.Key, this.MenuFont, Color.White, Color.Black, 1000);
|
||||
idx++;
|
||||
}
|
||||
}
|
||||
|
||||
CurrentMaxIndex = amount;
|
||||
}
|
||||
break;
|
||||
case ModeType.SubTitle:
|
||||
{
|
||||
int amount = 1;
|
||||
if (TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles != null)
|
||||
amount += TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles.Count;
|
||||
|
||||
this.ttkTitles = new CActSelect曲リスト.TitleTextureKey[amount];
|
||||
this.titlesKeys = new string[amount];
|
||||
|
||||
// Wood shojinsha (default title) always avaliable by default
|
||||
this.ttkTitles[0] = new CActSelect曲リスト.TitleTextureKey("初心者", this.MenuFont, Color.Black, Color.Transparent, 1000);
|
||||
this.titlesKeys[0] = "初心者";
|
||||
|
||||
int idx = 1;
|
||||
if (TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles != null)
|
||||
{
|
||||
foreach (var item in TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles)
|
||||
{
|
||||
this.ttkTitles[idx] = new CActSelect曲リスト.TitleTextureKey(item.Value.cld.GetString(item.Key), this.MenuFont, Color.Black, Color.Transparent, 1000);
|
||||
this.titlesKeys[idx] = item.Key;
|
||||
idx++;
|
||||
}
|
||||
}
|
||||
|
||||
CurrentMaxIndex = amount;
|
||||
}
|
||||
break;
|
||||
}
|
||||
CurrentIndex = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void ChangeIndex(int change)
|
||||
{
|
||||
CurrentIndex += change;
|
||||
|
||||
if (CurrentIndex < 0) CurrentIndex = CurrentMaxIndex - 1;
|
||||
else if (CurrentIndex >= CurrentMaxIndex) CurrentIndex = 0;
|
||||
if (CurrentState == SelectableInfo.Select)
|
||||
{
|
||||
switch(CurrentMode)
|
||||
{
|
||||
case ModeType.PuchiChara:
|
||||
tUpdateUnlockableTextPuchi();
|
||||
break;
|
||||
case ModeType.Chara:
|
||||
tUpdateUnlockableTextChara();
|
||||
break;
|
||||
case ModeType.DanTitle:
|
||||
break;
|
||||
case ModeType.SubTitle:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void Open()
|
||||
{
|
||||
InFade = new CCounter(0, 255, 1.0, TJAPlayer3.Timer);
|
||||
IsOpend = true;
|
||||
CurrentMode = ModeType.None;
|
||||
|
||||
SetState(SelectableInfo.PlayerSelect);
|
||||
}
|
||||
|
||||
public void Close()
|
||||
{
|
||||
IsOpend = false;
|
||||
}
|
||||
|
||||
public override void Activate()
|
||||
{
|
||||
InFade = new CCounter();
|
||||
CharaBoxAnime = new CCounter();
|
||||
|
||||
for(int i = 0; i < 5; i++)
|
||||
{
|
||||
MenuTitleKeys[i] = new CActSelect曲リスト.TitleTextureKey(CLangManager.LangInstance.GetString(1030 + i), MenuFont, Color.White, Color.Black, 9999);
|
||||
}
|
||||
|
||||
ttkPuchiCharaNames = new CActSelect曲リスト.TitleTextureKey[TJAPlayer3.Skin.Puchichara_Ptn];
|
||||
ttkPuchiCharaAuthors = new CActSelect曲リスト.TitleTextureKey[TJAPlayer3.Skin.Puchichara_Ptn];
|
||||
|
||||
for (int i = 0; i < TJAPlayer3.Skin.Puchichara_Ptn; i++)
|
||||
{
|
||||
var textColor = HRarity.tRarityToColor(TJAPlayer3.Tx.Puchichara[i].metadata.Rarity);
|
||||
ttkPuchiCharaNames[i] = new CActSelect曲リスト.TitleTextureKey(TJAPlayer3.Tx.Puchichara[i].metadata.Name, this.MenuFont, textColor, Color.Black, 1000);
|
||||
ttkPuchiCharaAuthors[i] = new CActSelect曲リスト.TitleTextureKey(TJAPlayer3.Tx.Puchichara[i].metadata.Author, this.MenuFont, Color.White, Color.Black, 1000);
|
||||
}
|
||||
|
||||
|
||||
ttkCharacterAuthors = new CActSelect曲リスト.TitleTextureKey[TJAPlayer3.Skin.Characters_Ptn];
|
||||
ttkCharacterNames = new CActSelect曲リスト.TitleTextureKey[TJAPlayer3.Skin.Characters_Ptn];
|
||||
|
||||
for (int i = 0; i < TJAPlayer3.Skin.Characters_Ptn; i++)
|
||||
{
|
||||
var textColor = HRarity.tRarityToColor(TJAPlayer3.Tx.Characters[i].metadata.Rarity);
|
||||
ttkCharacterNames[i] = new CActSelect曲リスト.TitleTextureKey(TJAPlayer3.Tx.Characters[i].metadata.Name, this.MenuFont, textColor, Color.Black, 1000);
|
||||
ttkCharacterAuthors[i] = new CActSelect曲リスト.TitleTextureKey(TJAPlayer3.Tx.Characters[i].metadata.Author, this.MenuFont, Color.White, Color.Black, 1000);
|
||||
}
|
||||
|
||||
|
||||
base.Activate();
|
||||
}
|
||||
|
||||
public override void DeActivate()
|
||||
{
|
||||
|
||||
base.DeActivate();
|
||||
}
|
||||
|
||||
public override void CreateManagedResource()
|
||||
{
|
||||
if (!string.IsNullOrEmpty(TJAPlayer3.ConfigIni.FontName))
|
||||
this.MenuFont = new CCachedFontRenderer(TJAPlayer3.ConfigIni.FontName, TJAPlayer3.Skin.Heya_Font_Scale);
|
||||
else
|
||||
this.MenuFont = new CCachedFontRenderer(CFontRenderer.DefaultFontName, TJAPlayer3.Skin.Heya_Font_Scale);
|
||||
|
||||
base.CreateManagedResource();
|
||||
}
|
||||
|
||||
public override void ReleaseManagedResource()
|
||||
{
|
||||
MenuFont.Dispose();
|
||||
|
||||
base.ReleaseManagedResource();
|
||||
}
|
||||
|
||||
public override int Draw()
|
||||
{
|
||||
if ((TJAPlayer3.Pad.b押されたDGB(Eパッド.Decide)) || ((TJAPlayer3.ConfigIni.bEnterがキー割り当てのどこにも使用されていない && TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.Return))))
|
||||
{
|
||||
switch(CurrentState)
|
||||
{
|
||||
case SelectableInfo.PlayerSelect:
|
||||
{
|
||||
switch(CurrentIndex)
|
||||
{
|
||||
case 0:
|
||||
Close();
|
||||
TJAPlayer3.Skin.sound取消音.t再生する();
|
||||
break;
|
||||
default:
|
||||
{
|
||||
CurrentPlayer = TJAPlayer3.GetActualPlayer(CurrentIndex - 1);
|
||||
SetState(SelectableInfo.ModeSelect);
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SelectableInfo.ModeSelect:
|
||||
{
|
||||
switch(CurrentIndex)
|
||||
{
|
||||
case 0:
|
||||
SetState(SelectableInfo.PlayerSelect);
|
||||
TJAPlayer3.Skin.sound取消音.t再生する();
|
||||
break;
|
||||
default:
|
||||
{
|
||||
SetState(SelectableInfo.Select);
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SelectableInfo.Select:
|
||||
{
|
||||
switch(CurrentMode)
|
||||
{
|
||||
case ModeType.PuchiChara:
|
||||
{
|
||||
var ess = this.tSelectPuchi();
|
||||
|
||||
if (ess == ESelectStatus.SELECTED)
|
||||
{
|
||||
//PuchiChara.tGetPuchiCharaIndexByName(p);
|
||||
//TJAPlayer3.NamePlateConfig.data.PuchiChara[iPlayer] = TJAPlayer3.Skin.Puchicharas_Name[iPuchiCharaCurrent];// iPuchiCharaCurrent;
|
||||
//TJAPlayer3.NamePlateConfig.tApplyHeyaChanges();
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.PuchiChara = TJAPlayer3.Skin.Puchicharas_Name[CurrentIndex];// iPuchiCharaCurrent;
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tApplyHeyaChanges();
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
TJAPlayer3.Tx.Puchichara[CurrentIndex].welcome.t再生する();
|
||||
|
||||
SetState(SelectableInfo.PlayerSelect);
|
||||
}
|
||||
else if (ess == ESelectStatus.SUCCESS)
|
||||
{
|
||||
//TJAPlayer3.NamePlateConfig.data.UnlockedPuchicharas[iPlayer].Add(TJAPlayer3.Skin.Puchicharas_Name[iPuchiCharaCurrent]);
|
||||
//TJAPlayer3.NamePlateConfig.tSpendCoins(TJAPlayer3.Tx.Puchichara[iPuchiCharaCurrent].unlock.Values[0], iPlayer);
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedPuchicharas.Add(TJAPlayer3.Skin.Puchicharas_Name[CurrentIndex]);
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tSpendCoins(TJAPlayer3.Tx.Puchichara[CurrentIndex].unlock.Values[0]);
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
}
|
||||
else
|
||||
{
|
||||
TJAPlayer3.Skin.soundError.t再生する();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ModeType.Chara:
|
||||
{
|
||||
var ess = this.tSelectChara();
|
||||
|
||||
if (ess == ESelectStatus.SELECTED)
|
||||
{
|
||||
//TJAPlayer3.Tx.Loading?.t2D描画(18, 7);
|
||||
|
||||
// Reload character, a bit time expensive but with a O(N) memory complexity instead of O(N * M)
|
||||
TJAPlayer3.Tx.ReloadCharacter(TJAPlayer3.SaveFileInstances[CurrentPlayer].data.Character, CurrentIndex, CurrentPlayer);
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.Character = CurrentIndex;
|
||||
|
||||
// Update the character
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tUpdateCharacterName(TJAPlayer3.Skin.Characters_DirName[CurrentIndex]);
|
||||
|
||||
// Welcome voice using Sanka
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
TJAPlayer3.Skin.voiceTitleSanka[CurrentPlayer]?.t再生する();
|
||||
|
||||
CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.NORMAL);
|
||||
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tApplyHeyaChanges();
|
||||
|
||||
SetState(SelectableInfo.PlayerSelect);
|
||||
CurrentMode = ModeType.None;
|
||||
}
|
||||
else if (ess == ESelectStatus.SUCCESS)
|
||||
{
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedCharacters.Add(TJAPlayer3.Skin.Characters_DirName[CurrentIndex]);
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tSpendCoins(TJAPlayer3.Tx.Characters[CurrentIndex].unlock.Values[0]);
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
}
|
||||
else
|
||||
{
|
||||
TJAPlayer3.Skin.soundError.t再生する();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ModeType.DanTitle:
|
||||
{
|
||||
bool iG = false;
|
||||
int cs = 0;
|
||||
|
||||
if (CurrentIndex > 0)
|
||||
{
|
||||
iG = TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles[this.ttkDanTitles[CurrentIndex].str文字].isGold;
|
||||
cs = TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles[this.ttkDanTitles[CurrentIndex].str文字].clearStatus;
|
||||
}
|
||||
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.Dan = this.ttkDanTitles[CurrentIndex].str文字;
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanGold = iG;
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanType = cs;
|
||||
|
||||
TJAPlayer3.NamePlate.tNamePlateRefreshTitles(CurrentPlayer);
|
||||
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tApplyHeyaChanges();
|
||||
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
SetState(SelectableInfo.PlayerSelect);
|
||||
}
|
||||
break;
|
||||
case ModeType.SubTitle:
|
||||
{
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.Title = this.ttkTitles[CurrentIndex].str文字;
|
||||
|
||||
if (TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles != null
|
||||
&& TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles.ContainsKey(this.titlesKeys[CurrentIndex]))
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.TitleType = TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles[this.titlesKeys[CurrentIndex]].iType;
|
||||
else if (CurrentIndex == 0)
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.TitleType = 0;
|
||||
else
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.TitleType = -1;
|
||||
|
||||
TJAPlayer3.NamePlate.tNamePlateRefreshTitles(CurrentPlayer);
|
||||
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].tApplyHeyaChanges();
|
||||
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
SetState(SelectableInfo.PlayerSelect);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if ((TJAPlayer3.Pad.b押されたDGB(Eパッド.Cancel) || TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.Escape)))
|
||||
{
|
||||
Close();
|
||||
TJAPlayer3.Skin.sound取消音.t再生する();
|
||||
}
|
||||
else if (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LeftChange)
|
||||
|| TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.LeftArrow))
|
||||
{
|
||||
ChangeIndex(-1);
|
||||
TJAPlayer3.Skin.sound変更音.t再生する();
|
||||
}
|
||||
else if (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RightChange)
|
||||
|| TJAPlayer3.Input管理.Keyboard.KeyPressed((int)SlimDXKeys.Key.RightArrow))
|
||||
{
|
||||
ChangeIndex(1);
|
||||
TJAPlayer3.Skin.sound変更音.t再生する();
|
||||
}
|
||||
|
||||
InFade.Tick();
|
||||
|
||||
if (TJAPlayer3.Tx.Tile_Black != null)
|
||||
{
|
||||
TJAPlayer3.Tx.Tile_Black.Opacity = InFade.CurrentValue / 2;
|
||||
for (int i = 0; i <= (SampleFramework.GameWindowSize.Width / TJAPlayer3.Tx.Tile_Black.szテクスチャサイズ.Width); i++) // #23510 2010.10.31 yyagi: change "clientSize.Width" to "640" to fix FIFO drawing size
|
||||
{
|
||||
for (int j = 0; j <= (SampleFramework.GameWindowSize.Height / TJAPlayer3.Tx.Tile_Black.szテクスチャサイズ.Height); j++) // #23510 2010.10.31 yyagi: change "clientSize.Height" to "480" to fix FIFO drawing size
|
||||
{
|
||||
TJAPlayer3.Tx.Tile_Black.t2D描画( i * TJAPlayer3.Tx.Tile_Black.szテクスチャサイズ.Width, j * TJAPlayer3.Tx.Tile_Black.szテクスチャサイズ.Height);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
switch (CurrentState)
|
||||
{
|
||||
case SelectableInfo.PlayerSelect:
|
||||
if (CurrentIndex == 0)
|
||||
{
|
||||
TJAPlayer3.Tx.NewHeya_Close_Select.t2D描画(TJAPlayer3.Skin.SongSelect_NewHeya_Close_Select[0], TJAPlayer3.Skin.SongSelect_NewHeya_Close_Select[1]);
|
||||
}
|
||||
else
|
||||
{
|
||||
TJAPlayer3.Tx.NewHeya_PlayerPlate_Select.t2D描画(TJAPlayer3.Skin.SongSelect_NewHeya_PlayerPlate_X[CurrentIndex - 1], TJAPlayer3.Skin.SongSelect_NewHeya_PlayerPlate_Y[CurrentIndex - 1]);
|
||||
}
|
||||
break;
|
||||
case SelectableInfo.ModeSelect:
|
||||
{
|
||||
TJAPlayer3.Tx.NewHeya_ModeBar_Select.t2D描画(TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_X[CurrentIndex], TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_Y[CurrentIndex]);
|
||||
}
|
||||
break;
|
||||
case SelectableInfo.Select:
|
||||
{
|
||||
switch(CurrentMode)
|
||||
{
|
||||
case ModeType.Chara:
|
||||
for(int i = 1; i < TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count - 1; i++)
|
||||
{
|
||||
int x = TJAPlayer3.Skin.SongSelect_NewHeya_Box_X[i];
|
||||
int y = TJAPlayer3.Skin.SongSelect_NewHeya_Box_Y[i];
|
||||
int index = i - (TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count / 2) + CurrentIndex;
|
||||
while (index < 0)
|
||||
{
|
||||
index += CurrentMaxIndex;
|
||||
}
|
||||
while (index >= CurrentMaxIndex)
|
||||
{
|
||||
index -= CurrentMaxIndex;
|
||||
}
|
||||
TJAPlayer3.Tx.NewHeya_Box.t2D描画(x, y);
|
||||
|
||||
|
||||
float charaRatioX = 1.0f;
|
||||
float charaRatioY = 1.0f;
|
||||
if (TJAPlayer3.Skin.Characters_Resolution[index] != null)
|
||||
{
|
||||
charaRatioX = TJAPlayer3.Skin.Resolution[0] / (float)TJAPlayer3.Skin.Characters_Resolution[index][0];
|
||||
charaRatioY = TJAPlayer3.Skin.Resolution[1] / (float)TJAPlayer3.Skin.Characters_Resolution[index][1];
|
||||
}
|
||||
|
||||
if (TJAPlayer3.Tx.Characters_Heya_Preview[index] != null)
|
||||
{
|
||||
TJAPlayer3.Tx.Characters_Heya_Preview[index].vc拡大縮小倍率.X = charaRatioX;
|
||||
TJAPlayer3.Tx.Characters_Heya_Preview[index].vc拡大縮小倍率.Y = charaRatioY;
|
||||
}
|
||||
|
||||
TJAPlayer3.Tx.Characters_Heya_Preview[index]?.t2D拡大率考慮中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[1]);
|
||||
TJAPlayer3.Tx.Characters_Heya_Preview[index]?.tUpdateColor4(CConversion.ColorToColor4(Color.White));
|
||||
|
||||
if (ttkCharacterNames[index] != null)
|
||||
{
|
||||
CTexture tmpTex = TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(ttkCharacterNames[index]);
|
||||
|
||||
tmpTex.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Name_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Name_Offset[1]);
|
||||
}
|
||||
|
||||
if (ttkCharacterAuthors[index] != null)
|
||||
{
|
||||
CTexture tmpTex = TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(ttkCharacterAuthors[index]);
|
||||
|
||||
tmpTex.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Author_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Author_Offset[1]);
|
||||
}
|
||||
|
||||
if (TJAPlayer3.Tx.Characters[index].unlock != null
|
||||
&& !TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedCharacters.Contains(TJAPlayer3.Skin.Characters_DirName[index]))
|
||||
{
|
||||
TJAPlayer3.Tx.NewHeya_Lock?.t2D描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Lock_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_Lock_Offset[1]);
|
||||
|
||||
if (this.ttkInfoSection != null)
|
||||
TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(this.ttkInfoSection)
|
||||
.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_InfoSection_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_InfoSection_Offset[1]);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ModeType.PuchiChara:
|
||||
for(int i = 1; i < TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count - 1; i++)
|
||||
{
|
||||
int x = TJAPlayer3.Skin.SongSelect_NewHeya_Box_X[i];
|
||||
int y = TJAPlayer3.Skin.SongSelect_NewHeya_Box_Y[i];
|
||||
int index = i - (TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count / 2) + CurrentIndex;
|
||||
while (index < 0)
|
||||
{
|
||||
index += CurrentMaxIndex;
|
||||
}
|
||||
while (index >= CurrentMaxIndex)
|
||||
{
|
||||
index -= CurrentMaxIndex;
|
||||
}
|
||||
TJAPlayer3.Tx.NewHeya_Box.t2D描画(x, y);
|
||||
|
||||
int puriColumn = index % 5;
|
||||
int puriRow = index / 5;
|
||||
|
||||
if (TJAPlayer3.Tx.Puchichara[index].tx != null)
|
||||
{
|
||||
float puchiScale = TJAPlayer3.Skin.Resolution[1] / 1080.0f;
|
||||
|
||||
TJAPlayer3.Tx.Puchichara[index].tx.vc拡大縮小倍率.X = puchiScale;
|
||||
TJAPlayer3.Tx.Puchichara[index].tx.vc拡大縮小倍率.Y = puchiScale;
|
||||
}
|
||||
|
||||
TJAPlayer3.Tx.Puchichara[index].tx?.t2D拡大率考慮中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[0],
|
||||
y + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[1] + (int)(TJAPlayer3.stage選曲.PuchiChara.sineY),
|
||||
new Rectangle((TJAPlayer3.stage選曲.PuchiChara.Counter.CurrentValue + 2 * puriColumn) * TJAPlayer3.Skin.Game_PuchiChara[0],
|
||||
puriRow * TJAPlayer3.Skin.Game_PuchiChara[1],
|
||||
TJAPlayer3.Skin.Game_PuchiChara[0],
|
||||
TJAPlayer3.Skin.Game_PuchiChara[1]));
|
||||
|
||||
TJAPlayer3.Tx.Puchichara[index].tx?.tUpdateColor4(CConversion.ColorToColor4(Color.White));
|
||||
|
||||
|
||||
if (ttkCharacterNames[index] != null)
|
||||
{
|
||||
CTexture tmpTex = TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(ttkPuchiCharaNames[index]);
|
||||
|
||||
tmpTex.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Name_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Name_Offset[1]);
|
||||
}
|
||||
|
||||
if (ttkCharacterAuthors[index] != null)
|
||||
{
|
||||
CTexture tmpTex = TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(ttkPuchiCharaAuthors[index]);
|
||||
|
||||
tmpTex.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Author_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_Box_Author_Offset[1]);
|
||||
}
|
||||
|
||||
if (TJAPlayer3.Tx.Characters[index].unlock != null
|
||||
&& !TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedPuchicharas.Contains(TJAPlayer3.Skin.Puchicharas_Name[index]))
|
||||
TJAPlayer3.Tx.NewHeya_Lock?.t2D描画(x + TJAPlayer3.Skin.SongSelect_NewHeya_InfoSection_Offset[0], y + TJAPlayer3.Skin.SongSelect_NewHeya_InfoSection_Offset[1]);
|
||||
}
|
||||
break;
|
||||
case ModeType.SubTitle:
|
||||
for(int i = 1; i < TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count - 1; i++)
|
||||
{
|
||||
int x = TJAPlayer3.Skin.SongSelect_NewHeya_Box_X[i];
|
||||
int y = TJAPlayer3.Skin.SongSelect_NewHeya_Box_Y[i];
|
||||
int index = i - (TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count / 2) + CurrentIndex;
|
||||
while (index < 0)
|
||||
{
|
||||
index += CurrentMaxIndex;
|
||||
}
|
||||
while (index >= CurrentMaxIndex)
|
||||
{
|
||||
index -= CurrentMaxIndex;
|
||||
}
|
||||
CTexture tmpTex = TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(this.ttkTitles[index]);
|
||||
|
||||
if (i != 0)
|
||||
{
|
||||
tmpTex.color4 = CConversion.ColorToColor4(Color.DarkGray);
|
||||
}
|
||||
else
|
||||
{
|
||||
tmpTex.color4 = CConversion.ColorToColor4(Color.White);
|
||||
}
|
||||
|
||||
TJAPlayer3.Tx.NewHeya_Box.t2D描画(x, y);
|
||||
|
||||
x += TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[0];
|
||||
y += TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[1];
|
||||
|
||||
int iType = -1;
|
||||
|
||||
if (TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles != null &&
|
||||
TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles.ContainsKey(this.titlesKeys[index]))
|
||||
iType = TJAPlayer3.SaveFileInstances[CurrentPlayer].data.NamePlateTitles[this.titlesKeys[index]].iType;
|
||||
else if (index == 0)
|
||||
iType = 0;
|
||||
|
||||
if (iType >= 0 && iType < TJAPlayer3.Skin.Config_NamePlate_Ptn_Title)
|
||||
{
|
||||
TJAPlayer3.Tx.NamePlate_Title[iType][TJAPlayer3.NamePlate.ctAnimatedNamePlateTitle.CurrentValue % TJAPlayer3.Skin.Config_NamePlate_Ptn_Title_Boxes[iType]].t2D拡大率考慮上中央基準描画(
|
||||
x,
|
||||
y);
|
||||
}
|
||||
|
||||
tmpTex.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.Heya_Side_Menu_Font_Offset[0], y + TJAPlayer3.Skin.Heya_Side_Menu_Font_Offset[1]);
|
||||
|
||||
}
|
||||
break;
|
||||
case ModeType.DanTitle:
|
||||
for(int i = 1; i < TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count - 1; i++)
|
||||
{
|
||||
int x = TJAPlayer3.Skin.SongSelect_NewHeya_Box_X[i];
|
||||
int y = TJAPlayer3.Skin.SongSelect_NewHeya_Box_Y[i];
|
||||
int index = i - (TJAPlayer3.Skin.SongSelect_NewHeya_Box_Count / 2) + CurrentIndex;
|
||||
while (index < 0)
|
||||
{
|
||||
index += CurrentMaxIndex;
|
||||
}
|
||||
while (index >= CurrentMaxIndex)
|
||||
{
|
||||
index -= CurrentMaxIndex;
|
||||
}
|
||||
CTexture tmpTex = TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(this.ttkDanTitles[index]);
|
||||
|
||||
if (i != 0)
|
||||
{
|
||||
tmpTex.color4 = CConversion.ColorToColor4(Color.DarkGray);
|
||||
TJAPlayer3.Tx.NamePlateBase.color4 = CConversion.ColorToColor4(Color.DarkGray);
|
||||
}
|
||||
else
|
||||
{
|
||||
tmpTex.color4 = CConversion.ColorToColor4(Color.White);
|
||||
TJAPlayer3.Tx.NamePlateBase.color4 = CConversion.ColorToColor4(Color.White);
|
||||
}
|
||||
|
||||
TJAPlayer3.Tx.NewHeya_Box.t2D描画(x, y);
|
||||
|
||||
x += TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[0];
|
||||
y += TJAPlayer3.Skin.SongSelect_NewHeya_Box_Chara_Offset[1];
|
||||
|
||||
int danGrade = 0;
|
||||
if (index > 0)
|
||||
{
|
||||
danGrade = TJAPlayer3.SaveFileInstances[CurrentPlayer].data.DanTitles[this.ttkDanTitles[index].str文字].clearStatus;
|
||||
}
|
||||
|
||||
TJAPlayer3.NamePlate.tNamePlateDisplayNamePlateBase(
|
||||
x - TJAPlayer3.Tx.NamePlateBase.szテクスチャサイズ.Width / 2,
|
||||
y - TJAPlayer3.Tx.NamePlateBase.szテクスチャサイズ.Height / 24,
|
||||
(8 + danGrade));
|
||||
TJAPlayer3.Tx.NamePlateBase.color4 = CConversion.ColorToColor4(Color.White);
|
||||
|
||||
tmpTex.t2D拡大率考慮上中央基準描画(x + TJAPlayer3.Skin.Heya_Side_Menu_Font_Offset[0], y + TJAPlayer3.Skin.Heya_Side_Menu_Font_Offset[1]);
|
||||
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
TJAPlayer3.Tx.NewHeya_Close.t2D描画(0, 0);
|
||||
|
||||
for(int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
|
||||
{
|
||||
TJAPlayer3.Tx.NewHeya_PlayerPlate[TJAPlayer3.GetActualPlayer(i)].t2D描画(TJAPlayer3.Skin.SongSelect_NewHeya_PlayerPlate_X[i], TJAPlayer3.Skin.SongSelect_NewHeya_PlayerPlate_Y[i]);
|
||||
}
|
||||
|
||||
for(int i = 0; i < 5; i++)
|
||||
{
|
||||
TJAPlayer3.Tx.NewHeya_ModeBar.t2D描画(TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_X[i], TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_Y[i]);
|
||||
int title_x = TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_X[i] + TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_Font_Offset[0];
|
||||
int title_y = TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_Y[i] + TJAPlayer3.Skin.SongSelect_NewHeya_ModeBar_Font_Offset[1];
|
||||
TJAPlayer3.stage選曲.act曲リスト.ResolveTitleTexture(MenuTitleKeys[i], false).t2D拡大率考慮中央基準描画(title_x, title_y);
|
||||
}
|
||||
|
||||
return base.Draw();
|
||||
}
|
||||
|
||||
/*
|
||||
* FAILED : Selection/Purchase failed (failed condition)
|
||||
* SUCCESS : Purchase succeed (without selection)
|
||||
* SELECTED : Selection succeed
|
||||
*/
|
||||
private enum ESelectStatus
|
||||
{
|
||||
FAILED,
|
||||
SUCCESS,
|
||||
SELECTED
|
||||
};
|
||||
|
||||
private ESelectStatus tSelectPuchi()
|
||||
{
|
||||
// Add "If unlocked" to select directly
|
||||
|
||||
if (TJAPlayer3.Tx.Puchichara[CurrentIndex].unlock != null
|
||||
&& !TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedPuchicharas.Contains(TJAPlayer3.Skin.Puchicharas_Name[CurrentIndex]))
|
||||
{
|
||||
(bool, string) response = TJAPlayer3.Tx.Puchichara[CurrentIndex].unlock.tConditionMetWrapper(TJAPlayer3.SaveFile);
|
||||
//tConditionMet(
|
||||
//new int[] { TJAPlayer3.SaveFileInstances[TJAPlayer3.SaveFile].data.Medals });
|
||||
|
||||
Color responseColor = (response.Item1) ? Color.Lime : Color.Red;
|
||||
|
||||
// Send coins here for the unlock, considering that only coin-paid puchicharas can be unlocked directly from the Heya menu
|
||||
|
||||
this.ttkInfoSection = new CActSelect曲リスト.TitleTextureKey(response.Item2, this.MenuFont, responseColor, Color.Black, 1000);
|
||||
|
||||
return (response.Item1) ? ESelectStatus.SUCCESS : ESelectStatus.FAILED;
|
||||
}
|
||||
|
||||
this.ttkInfoSection = null;
|
||||
return ESelectStatus.SELECTED;
|
||||
}
|
||||
|
||||
private void tUpdateUnlockableTextPuchi()
|
||||
{
|
||||
#region [Check unlockable]
|
||||
|
||||
if (TJAPlayer3.Tx.Puchichara[CurrentIndex].unlock != null
|
||||
&& !TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedPuchicharas.Contains(TJAPlayer3.Skin.Puchicharas_Name[CurrentIndex]))
|
||||
{
|
||||
this.ttkInfoSection = new CActSelect曲リスト.TitleTextureKey(TJAPlayer3.Tx.Puchichara[CurrentIndex].unlock.tConditionMessage()
|
||||
, this.MenuFont, Color.White, Color.Black, 1000);
|
||||
}
|
||||
else
|
||||
this.ttkInfoSection = null;
|
||||
|
||||
#endregion
|
||||
}
|
||||
private void tUpdateUnlockableTextChara()
|
||||
{
|
||||
#region [Check unlockable]
|
||||
|
||||
if (TJAPlayer3.Tx.Characters[CurrentIndex].unlock != null
|
||||
&& !TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedCharacters.Contains(TJAPlayer3.Skin.Characters_DirName[CurrentIndex]))
|
||||
{
|
||||
this.ttkInfoSection = new CActSelect曲リスト.TitleTextureKey(TJAPlayer3.Tx.Characters[CurrentIndex].unlock.tConditionMessage()
|
||||
, this.MenuFont, Color.White, Color.Black, 1000);
|
||||
}
|
||||
else
|
||||
this.ttkInfoSection = null;
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
private ESelectStatus tSelectChara()
|
||||
{
|
||||
// Add "If unlocked" to select directly
|
||||
|
||||
if (TJAPlayer3.Tx.Characters[CurrentIndex].unlock != null
|
||||
&& !TJAPlayer3.SaveFileInstances[CurrentPlayer].data.UnlockedCharacters.Contains(TJAPlayer3.Skin.Characters_DirName[CurrentIndex]))
|
||||
{
|
||||
(bool, string) response = TJAPlayer3.Tx.Characters[CurrentIndex].unlock.tConditionMetWrapper(TJAPlayer3.SaveFile);
|
||||
//TJAPlayer3.Tx.Characters[iCharacterCurrent].unlock.tConditionMet(
|
||||
//new int[] { TJAPlayer3.SaveFileInstances[TJAPlayer3.SaveFile].data.Medals });
|
||||
|
||||
Color responseColor = (response.Item1) ? Color.Lime : Color.Red;
|
||||
|
||||
// Send coins here for the unlock, considering that only coin-paid puchicharas can be unlocked directly from the Heya menu
|
||||
|
||||
this.ttkInfoSection = new CActSelect曲リスト.TitleTextureKey(response.Item2, this.MenuFont, responseColor, Color.Black, 1000);
|
||||
|
||||
return (response.Item1) ? ESelectStatus.SUCCESS : ESelectStatus.FAILED;
|
||||
}
|
||||
|
||||
this.ttkInfoSection = null;
|
||||
return ESelectStatus.SELECTED;
|
||||
}
|
||||
}
|
||||
}
|