1
0
mirror of synced 2025-02-17 11:08:33 +01:00

rename namespace from TJAPlayer3 to OpenTaiko and the TJAPlayer3 class to OpenTaiko

might require a song hard reload in some cases
This commit is contained in:
0auBSQ 2024-08-04 09:49:18 +09:00
parent 95f9802bb2
commit eac405196a
220 changed files with 8107 additions and 8108 deletions

View File

@ -1,7 +1,7 @@
using System.Diagnostics; using System.Diagnostics;
using System.Text; using System.Text;
namespace TJAPlayer3 { namespace OpenTaiko {
public class CJudgeTextEncoding { public class CJudgeTextEncoding {
/// <summary> /// <summary>
/// Hnc8様のReadJEncを使用して文字コードの判別をする。 /// Hnc8様のReadJEncを使用して文字コードの判別をする。

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
class Animator : IAnimatable { class Animator : IAnimatable {
public Animator(int startValue, int endValue, int tickInterval, bool isLoop) { public Animator(int startValue, int endValue, int tickInterval, bool isLoop) {
Type = CounterType.Normal; Type = CounterType.Normal;
@ -22,7 +22,7 @@ namespace TJAPlayer3.Animations {
if (Counter == null) throw new NullReferenceException(); if (Counter == null) throw new NullReferenceException();
switch (Type) { switch (Type) {
case CounterType.Normal: case CounterType.Normal:
Counter.Start((int)StartValue, (int)EndValue, (int)TickInterval, TJAPlayer3.Timer); Counter.Start((int)StartValue, (int)EndValue, (int)TickInterval, OpenTaiko.Timer);
break; break;
case CounterType.Double: case CounterType.Double:
Counter.Start((double)StartValue, (double)EndValue, (double)TickInterval, SoundManager.PlayTimer); Counter.Start((double)StartValue, (double)EndValue, (double)TickInterval, SoundManager.PlayTimer);

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// イーズインを行うクラス。 /// イーズインを行うクラス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// イーズイン・アウトを行うクラス。 /// イーズイン・アウトを行うクラス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// イーズアウトを行うクラス。 /// イーズアウトを行うクラス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// フェードインを行うクラス。 /// フェードインを行うクラス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// フェードアウトを行うクラス。 /// フェードアウトを行うクラス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// アニメーション インターフェイス。 /// アニメーション インターフェイス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.Animations { namespace OpenTaiko.Animations {
/// <summary> /// <summary>
/// リニア移動を行うクラス。 /// リニア移動を行うクラス。
/// </summary> /// </summary>

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
class CMenuCharacter { class CMenuCharacter {
private static CCounter[] ctCharacterNormal = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() }; private static CCounter[] ctCharacterNormal = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() };
private static CCounter[] ctCharacterSelect = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() }; private static CCounter[] ctCharacterSelect = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() };
@ -22,37 +22,37 @@ namespace TJAPlayer3 {
private static bool _usesSubstituteTexture(int player, ECharacterAnimation eca) { private static bool _usesSubstituteTexture(int player, ECharacterAnimation eca) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
if (_charaId >= 0 && _charaId < TJAPlayer3.Skin.Characters_Ptn) { if (_charaId >= 0 && _charaId < OpenTaiko.Skin.Characters_Ptn) {
switch (eca) { switch (eca) {
case (ECharacterAnimation.NORMAL): { case (ECharacterAnimation.NORMAL): {
if (TJAPlayer3.Tx.Characters_Menu_Loop[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Loop[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterAnimation.START): { case (ECharacterAnimation.START): {
if (TJAPlayer3.Tx.Characters_Menu_Start[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Start[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterAnimation.SELECT): { case (ECharacterAnimation.SELECT): {
if (TJAPlayer3.Tx.Characters_Menu_Select[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Select[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterAnimation.WAIT): { case (ECharacterAnimation.WAIT): {
if (TJAPlayer3.Tx.Characters_Menu_Wait[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Wait[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterAnimation.ENTRY): { case (ECharacterAnimation.ENTRY): {
if (TJAPlayer3.Tx.Characters_Title_Entry[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Title_Entry[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterAnimation.ENTRY_NORMAL): { case (ECharacterAnimation.ENTRY_NORMAL): {
if (TJAPlayer3.Tx.Characters_Title_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Title_Normal[_charaId].Length > 0)
return false; return false;
break; break;
} }
@ -63,52 +63,52 @@ namespace TJAPlayer3 {
} }
public static CTexture[] _getReferenceArray(int player, ECharacterAnimation eca) { public static CTexture[] _getReferenceArray(int player, ECharacterAnimation eca) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
if (_charaId >= 0 && _charaId < TJAPlayer3.Skin.Characters_Ptn) { if (_charaId >= 0 && _charaId < OpenTaiko.Skin.Characters_Ptn) {
switch (eca) { switch (eca) {
case (ECharacterAnimation.NORMAL): { case (ECharacterAnimation.NORMAL): {
if (TJAPlayer3.Tx.Characters_Menu_Loop[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Loop[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Menu_Loop[_charaId]; return OpenTaiko.Tx.Characters_Menu_Loop[_charaId];
if (TJAPlayer3.Tx.Characters_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Normal[_charaId]; return OpenTaiko.Tx.Characters_Normal[_charaId];
break; break;
} }
case (ECharacterAnimation.START): { case (ECharacterAnimation.START): {
if (TJAPlayer3.Tx.Characters_Menu_Start[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Start[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Menu_Start[_charaId]; return OpenTaiko.Tx.Characters_Menu_Start[_charaId];
if (TJAPlayer3.Tx.Characters_10Combo[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_10Combo[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_10Combo[_charaId]; return OpenTaiko.Tx.Characters_10Combo[_charaId];
break; break;
} }
case (ECharacterAnimation.SELECT): { case (ECharacterAnimation.SELECT): {
if (TJAPlayer3.Tx.Characters_Menu_Select[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Select[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Menu_Select[_charaId]; return OpenTaiko.Tx.Characters_Menu_Select[_charaId];
if (TJAPlayer3.Tx.Characters_10Combo[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_10Combo[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_10Combo[_charaId]; return OpenTaiko.Tx.Characters_10Combo[_charaId];
break; break;
} }
case (ECharacterAnimation.WAIT): { case (ECharacterAnimation.WAIT): {
if (TJAPlayer3.Tx.Characters_Menu_Wait[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Wait[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Menu_Wait[_charaId]; return OpenTaiko.Tx.Characters_Menu_Wait[_charaId];
if (TJAPlayer3.Tx.Characters_Menu_Loop[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Menu_Loop[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Menu_Loop[_charaId]; return OpenTaiko.Tx.Characters_Menu_Loop[_charaId];
if (TJAPlayer3.Tx.Characters_GoGoTime[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_GoGoTime[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_GoGoTime[_charaId]; return OpenTaiko.Tx.Characters_GoGoTime[_charaId];
break; break;
} }
case (ECharacterAnimation.ENTRY): { case (ECharacterAnimation.ENTRY): {
if (TJAPlayer3.Tx.Characters_Title_Entry[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Title_Entry[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Title_Entry[_charaId]; return OpenTaiko.Tx.Characters_Title_Entry[_charaId];
if (TJAPlayer3.Tx.Characters_10Combo[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_10Combo[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_10Combo[_charaId]; return OpenTaiko.Tx.Characters_10Combo[_charaId];
break; break;
} }
case (ECharacterAnimation.ENTRY_NORMAL): { case (ECharacterAnimation.ENTRY_NORMAL): {
if (TJAPlayer3.Tx.Characters_Title_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Title_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Title_Normal[_charaId]; return OpenTaiko.Tx.Characters_Title_Normal[_charaId];
if (TJAPlayer3.Tx.Characters_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Normal[_charaId]; return OpenTaiko.Tx.Characters_Normal[_charaId];
break; break;
} }
} }
@ -143,26 +143,26 @@ namespace TJAPlayer3 {
} }
public static int _getReferenceAnimationDuration(int player, ECharacterAnimation eca) { public static int _getReferenceAnimationDuration(int player, ECharacterAnimation eca) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
switch (eca) { switch (eca) {
case (ECharacterAnimation.NORMAL): { case (ECharacterAnimation.NORMAL): {
return TJAPlayer3.Skin.Characters_Menu_Loop_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Menu_Loop_AnimationDuration[_charaId];
} }
case (ECharacterAnimation.START): { case (ECharacterAnimation.START): {
return TJAPlayer3.Skin.Characters_Menu_Start_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Menu_Start_AnimationDuration[_charaId];
} }
case (ECharacterAnimation.SELECT): { case (ECharacterAnimation.SELECT): {
return TJAPlayer3.Skin.Characters_Menu_Select_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Menu_Select_AnimationDuration[_charaId];
} }
case (ECharacterAnimation.WAIT): { case (ECharacterAnimation.WAIT): {
return TJAPlayer3.Skin.Characters_Menu_Wait_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Menu_Wait_AnimationDuration[_charaId];
} }
case (ECharacterAnimation.ENTRY): { case (ECharacterAnimation.ENTRY): {
return TJAPlayer3.Skin.Characters_Title_Entry_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Title_Entry_AnimationDuration[_charaId];
} }
case (ECharacterAnimation.ENTRY_NORMAL): { case (ECharacterAnimation.ENTRY_NORMAL): {
return TJAPlayer3.Skin.Characters_Title_Normal_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Title_Normal_AnimationDuration[_charaId];
} }
} }
return 1000; return 1000;
@ -211,7 +211,7 @@ namespace TJAPlayer3 {
int _animeref = _getReferenceAnimationDuration(player, eca); int _animeref = _getReferenceAnimationDuration(player, eca);
if (_ref != null && _ref.Length > 0 && _ctref != null) { if (_ref != null && _ref.Length > 0 && _ctref != null) {
_ctref[player] = new CCounter(0, _ref.Length - 1, _animeref / (float)_ref.Length, TJAPlayer3.Timer); _ctref[player] = new CCounter(0, _ref.Length - 1, _animeref / (float)_ref.Length, OpenTaiko.Timer);
} }
} }
@ -222,7 +222,7 @@ namespace TJAPlayer3 {
} }
public static void tMenuDisplayCharacter(int player, int x, int y, ECharacterAnimation eca, int opacity = 255) { public static void tMenuDisplayCharacter(int player, int x, int y, ECharacterAnimation eca, int opacity = 255) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
CTexture[] _ref = _getReferenceArray(player, eca); CTexture[] _ref = _getReferenceArray(player, eca);
CCounter[] _ctref = _getReferenceCounter(eca); CCounter[] _ctref = _getReferenceCounter(eca);
bool _substitute = _usesSubstituteTexture(player, eca); bool _substitute = _usesSubstituteTexture(player, eca);
@ -243,8 +243,8 @@ namespace TJAPlayer3 {
_tex.Opacity = opacity; _tex.Opacity = opacity;
float resolutionRatioX = TJAPlayer3.Skin.Resolution[0] / (float)TJAPlayer3.Skin.Characters_Resolution[_charaId][0]; float resolutionRatioX = OpenTaiko.Skin.Resolution[0] / (float)OpenTaiko.Skin.Characters_Resolution[_charaId][0];
float resolutionRatioY = TJAPlayer3.Skin.Resolution[1] / (float)TJAPlayer3.Skin.Characters_Resolution[_charaId][1]; float resolutionRatioY = OpenTaiko.Skin.Resolution[1] / (float)OpenTaiko.Skin.Characters_Resolution[_charaId][1];
//float _x = (x + (150.0f * (TJAPlayer3.Skin.Characters_Resolution[_charaId][0] / 1280.0f))) * resolutionRatioX; //float _x = (x + (150.0f * (TJAPlayer3.Skin.Characters_Resolution[_charaId][0] / 1280.0f))) * resolutionRatioX;
//float _y = (y + (((_substitute == true) ? 290 : _ref[_ctref[player].n現在の値].szテクスチャサイズ.Height)) * (TJAPlayer3.Skin.Characters_Resolution[_charaId][1] / 720.0f)) * resolutionRatioY; //float _y = (y + (((_substitute == true) ? 290 : _ref[_ctref[player].n現在の値].szテクスチャサイズ.Height)) * (TJAPlayer3.Skin.Characters_Resolution[_charaId][1] / 720.0f)) * resolutionRatioY;

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
class CResultCharacter { class CResultCharacter {
private static CCounter[] ctCharacterNormal = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() }; private static CCounter[] ctCharacterNormal = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() };
private static CCounter[] ctCharacterClear = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() }; private static CCounter[] ctCharacterClear = new CCounter[5] { new CCounter(), new CCounter(), new CCounter(), new CCounter(), new CCounter() };
@ -33,27 +33,27 @@ namespace TJAPlayer3 {
} }
private static bool _usesSubstituteTexture(int player, ECharacterResult eca) { private static bool _usesSubstituteTexture(int player, ECharacterResult eca) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
if (_charaId >= 0 && _charaId < TJAPlayer3.Skin.Characters_Ptn) { if (_charaId >= 0 && _charaId < OpenTaiko.Skin.Characters_Ptn) {
switch (eca) { switch (eca) {
case (ECharacterResult.NORMAL): { case (ECharacterResult.NORMAL): {
if (TJAPlayer3.Tx.Characters_Result_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Normal[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterResult.CLEAR): { case (ECharacterResult.CLEAR): {
if (TJAPlayer3.Tx.Characters_Result_Clear[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Clear[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterResult.FAILED): { case (ECharacterResult.FAILED): {
if (TJAPlayer3.Tx.Characters_Result_Failed[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Failed[_charaId].Length > 0)
return false; return false;
break; break;
} }
case (ECharacterResult.FAILED_IN): { case (ECharacterResult.FAILED_IN): {
if (TJAPlayer3.Tx.Characters_Result_Failed_In[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Failed_In[_charaId].Length > 0)
return false; return false;
break; break;
} }
@ -64,36 +64,36 @@ namespace TJAPlayer3 {
} }
public static CTexture[] _getReferenceArray(int player, ECharacterResult eca) { public static CTexture[] _getReferenceArray(int player, ECharacterResult eca) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
if (_charaId >= 0 && _charaId < TJAPlayer3.Skin.Characters_Ptn) { if (_charaId >= 0 && _charaId < OpenTaiko.Skin.Characters_Ptn) {
switch (eca) { switch (eca) {
case (ECharacterResult.NORMAL): { case (ECharacterResult.NORMAL): {
if (TJAPlayer3.Tx.Characters_Result_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Result_Normal[_charaId]; return OpenTaiko.Tx.Characters_Result_Normal[_charaId];
if (TJAPlayer3.Tx.Characters_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Normal[_charaId]; return OpenTaiko.Tx.Characters_Normal[_charaId];
break; break;
} }
case (ECharacterResult.CLEAR): { case (ECharacterResult.CLEAR): {
if (TJAPlayer3.Tx.Characters_Result_Clear[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Clear[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Result_Clear[_charaId]; return OpenTaiko.Tx.Characters_Result_Clear[_charaId];
if (TJAPlayer3.Tx.Characters_10Combo[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_10Combo[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_10Combo[_charaId]; return OpenTaiko.Tx.Characters_10Combo[_charaId];
break; break;
} }
case (ECharacterResult.FAILED): { case (ECharacterResult.FAILED): {
if (TJAPlayer3.Tx.Characters_Result_Failed[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Failed[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Result_Failed[_charaId]; return OpenTaiko.Tx.Characters_Result_Failed[_charaId];
if (TJAPlayer3.Tx.Characters_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Normal[_charaId]; return OpenTaiko.Tx.Characters_Normal[_charaId];
break; break;
} }
case (ECharacterResult.FAILED_IN): { case (ECharacterResult.FAILED_IN): {
if (TJAPlayer3.Tx.Characters_Result_Failed_In[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Result_Failed_In[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Result_Failed_In[_charaId]; return OpenTaiko.Tx.Characters_Result_Failed_In[_charaId];
if (TJAPlayer3.Tx.Characters_Normal[_charaId].Length > 0) if (OpenTaiko.Tx.Characters_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Normal[_charaId]; return OpenTaiko.Tx.Characters_Normal[_charaId];
break; break;
} }
} }
@ -122,20 +122,20 @@ namespace TJAPlayer3 {
} }
public static int _getReferenceAnimationDuration(int player, ECharacterResult eca) { public static int _getReferenceAnimationDuration(int player, ECharacterResult eca) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
switch (eca) { switch (eca) {
case (ECharacterResult.NORMAL): { case (ECharacterResult.NORMAL): {
return TJAPlayer3.Skin.Characters_Result_Normal_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Result_Normal_AnimationDuration[_charaId];
} }
case (ECharacterResult.CLEAR): { case (ECharacterResult.CLEAR): {
return TJAPlayer3.Skin.Characters_Result_Clear_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Result_Clear_AnimationDuration[_charaId];
} }
case (ECharacterResult.FAILED): { case (ECharacterResult.FAILED): {
return TJAPlayer3.Skin.Characters_Result_Failed_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Result_Failed_AnimationDuration[_charaId];
} }
case (ECharacterResult.FAILED_IN): { case (ECharacterResult.FAILED_IN): {
return TJAPlayer3.Skin.Characters_Result_Failed_In_AnimationDuration[_charaId]; return OpenTaiko.Skin.Characters_Result_Failed_In_AnimationDuration[_charaId];
} }
} }
return 1000; return 1000;
@ -174,7 +174,7 @@ namespace TJAPlayer3 {
int _animeref = _getReferenceAnimationDuration(player, eca); int _animeref = _getReferenceAnimationDuration(player, eca);
if (_ref != null && _ref.Length > 0 && _ctref != null) { if (_ref != null && _ref.Length > 0 && _ctref != null) {
_ctref[player] = new CCounter(0, _ref.Length - 1, _animeref / (float)_ref.Length, TJAPlayer3.Timer); _ctref[player] = new CCounter(0, _ref.Length - 1, _animeref / (float)_ref.Length, OpenTaiko.Timer);
} }
} }
@ -185,7 +185,7 @@ namespace TJAPlayer3 {
} }
public static void tMenuDisplayCharacter(int player, int x, int y, ECharacterResult eca, int pos = 0, int opacity = 255) { public static void tMenuDisplayCharacter(int player, int x, int y, ECharacterResult eca, int pos = 0, int opacity = 255) {
int _charaId = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character; int _charaId = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character;
CTexture[] _ref = _getReferenceArray(player, eca); CTexture[] _ref = _getReferenceArray(player, eca);
CCounter[] _ctref = _getReferenceCounter(eca); CCounter[] _ctref = _getReferenceCounter(eca);
bool _substitute = _usesSubstituteTexture(player, eca); bool _substitute = _usesSubstituteTexture(player, eca);
@ -205,8 +205,8 @@ namespace TJAPlayer3 {
_tex.Opacity = opacity; _tex.Opacity = opacity;
float resolutionRatioX = TJAPlayer3.Skin.Resolution[0] / (float)TJAPlayer3.Skin.Characters_Resolution[_charaId][0]; float resolutionRatioX = OpenTaiko.Skin.Resolution[0] / (float)OpenTaiko.Skin.Characters_Resolution[_charaId][0];
float resolutionRatioY = TJAPlayer3.Skin.Resolution[1] / (float)TJAPlayer3.Skin.Characters_Resolution[_charaId][1]; float resolutionRatioY = OpenTaiko.Skin.Resolution[1] / (float)OpenTaiko.Skin.Characters_Resolution[_charaId][1];
//202 //202
//float _x = (x - (((_substitute == true) ? 20 : 40) * (TJAPlayer3.Skin.Characters_Resolution[_charaId][0] / 1280.0f))) * resolutionRatioX; //float _x = (x - (((_substitute == true) ? 20 : 40) * (TJAPlayer3.Skin.Characters_Resolution[_charaId][0] / 1280.0f))) * resolutionRatioX;
@ -220,7 +220,7 @@ namespace TJAPlayer3 {
_tex.vcScaleRatio.X *= resolutionRatioX; _tex.vcScaleRatio.X *= resolutionRatioX;
_tex.vcScaleRatio.Y *= resolutionRatioY; _tex.vcScaleRatio.Y *= resolutionRatioY;
if (pos % 2 == 0 || TJAPlayer3.ConfigIni.nPlayerCount > 2) { if (pos % 2 == 0 || OpenTaiko.ConfigIni.nPlayerCount > 2) {
_tex.t2D拡大率考慮下中心基準描画( _tex.t2D拡大率考慮下中心基準描画(
_x, _x,
_y _y

View File

@ -2,16 +2,16 @@
using Silk.NET.Maths; using Silk.NET.Maths;
using Rectangle = System.Drawing.Rectangle; using Rectangle = System.Drawing.Rectangle;
namespace TJAPlayer3 { namespace OpenTaiko {
class PuchiChara : CActivity { class PuchiChara : CActivity {
public PuchiChara() { public PuchiChara() {
base.IsDeActivated = true; base.IsDeActivated = true;
} }
public override void Activate() { public override void Activate() {
Counter = new CCounter(0, TJAPlayer3.Skin.Game_PuchiChara[2] - 1, TJAPlayer3.Skin.Game_PuchiChara_Timer * 0.5f, TJAPlayer3.Timer); Counter = new CCounter(0, OpenTaiko.Skin.Game_PuchiChara[2] - 1, OpenTaiko.Skin.Game_PuchiChara_Timer * 0.5f, OpenTaiko.Timer);
SineCounter = new CCounter(0, 360, TJAPlayer3.Skin.Game_PuchiChara_SineTimer, SoundManager.PlayTimer); SineCounter = new CCounter(0, 360, OpenTaiko.Skin.Game_PuchiChara_SineTimer, SoundManager.PlayTimer);
SineCounterIdle = new CCounter(1, 360, (float)TJAPlayer3.Skin.Game_PuchiChara_SineTimer * 2f, TJAPlayer3.Timer); SineCounterIdle = new CCounter(1, 360, (float)OpenTaiko.Skin.Game_PuchiChara_SineTimer * 2f, OpenTaiko.Timer);
this.inGame = false; this.inGame = false;
base.Activate(); base.Activate();
} }
@ -23,8 +23,8 @@ namespace TJAPlayer3 {
} }
public static int tGetPuchiCharaIndexByName(int p) { public static int tGetPuchiCharaIndexByName(int p) {
var _pc = TJAPlayer3.SaveFileInstances[p].data.PuchiChara; var _pc = OpenTaiko.SaveFileInstances[p].data.PuchiChara;
var _pcs = TJAPlayer3.Skin.Puchicharas_Name; var _pcs = OpenTaiko.Skin.Puchicharas_Name;
int puriChar = 0; int puriChar = 0;
if (_pcs.Contains(_pc)) if (_pcs.Contains(_pc))
puriChar = _pcs.ToList().IndexOf(_pc); puriChar = _pcs.ToList().IndexOf(_pc);
@ -33,8 +33,8 @@ namespace TJAPlayer3 {
} }
public void ChangeBPM(double bpm) { public void ChangeBPM(double bpm) {
Counter = new CCounter(0, TJAPlayer3.Skin.Game_PuchiChara[2] - 1, (int)(TJAPlayer3.Skin.Game_PuchiChara_Timer * bpm / TJAPlayer3.Skin.Game_PuchiChara[2]), TJAPlayer3.Timer); Counter = new CCounter(0, OpenTaiko.Skin.Game_PuchiChara[2] - 1, (int)(OpenTaiko.Skin.Game_PuchiChara_Timer * bpm / OpenTaiko.Skin.Game_PuchiChara[2]), OpenTaiko.Timer);
SineCounter = new CCounter(1, 360, TJAPlayer3.Skin.Game_PuchiChara_SineTimer * bpm / 180, SoundManager.PlayTimer); SineCounter = new CCounter(1, 360, OpenTaiko.Skin.Game_PuchiChara_SineTimer * bpm / 180, SoundManager.PlayTimer);
this.inGame = true; this.inGame = true;
} }
@ -50,13 +50,13 @@ namespace TJAPlayer3 {
/// <param name="alpha">不透明度</param> /// <param name="alpha">不透明度</param>
/// <returns></returns> /// <returns></returns>
public int On進行描画(int x, int y, bool isGrowing, int alpha = 255, bool isBalloon = false, int player = 0, float scale = 1.0f) { public int On進行描画(int x, int y, bool isGrowing, int alpha = 255, bool isBalloon = false, int player = 0, float scale = 1.0f) {
if (!TJAPlayer3.ConfigIni.ShowPuchiChara) return base.Draw(); if (!OpenTaiko.ConfigIni.ShowPuchiChara) return base.Draw();
if (Counter == null || SineCounter == null || TJAPlayer3.Tx.Puchichara == null) return base.Draw(); if (Counter == null || SineCounter == null || OpenTaiko.Tx.Puchichara == null) return base.Draw();
Counter.TickLoop(); Counter.TickLoop();
SineCounter.TickLoopDB(); SineCounter.TickLoopDB();
SineCounterIdle.TickLoop(); SineCounterIdle.TickLoop();
int p = TJAPlayer3.GetActualPlayer(player); int p = OpenTaiko.GetActualPlayer(player);
/* /*
TJAPlayer3.act文字コンソール.tPrint(700, 500, C文字コンソール.Eフォント種別., Counter.n現在の値.ToString()); TJAPlayer3.act文字コンソール.tPrint(700, 500, C文字コンソール.Eフォント種別., Counter.n現在の値.ToString());
@ -71,7 +71,7 @@ namespace TJAPlayer3 {
// TJAPlayer3.act文字コンソール.tPrint(700, 560, C文字コンソール.Eフォント種別.白, sineY.ToString()); // TJAPlayer3.act文字コンソール.tPrint(700, 560, C文字コンソール.Eフォント種別.白, sineY.ToString());
sineY = Math.Sin(sineY * (Math.PI / 180)) * (TJAPlayer3.Skin.Game_PuchiChara_Sine * (isBalloon ? TJAPlayer3.Skin.Game_PuchiChara_Scale[1] : TJAPlayer3.Skin.Game_PuchiChara_Scale[0])); sineY = Math.Sin(sineY * (Math.PI / 180)) * (OpenTaiko.Skin.Game_PuchiChara_Sine * (isBalloon ? OpenTaiko.Skin.Game_PuchiChara_Scale[1] : OpenTaiko.Skin.Game_PuchiChara_Scale[0]));
// TJAPlayer3.act文字コンソール.tPrint(700, 580, C文字コンソール.Eフォント種別.白, sineY.ToString()); // TJAPlayer3.act文字コンソール.tPrint(700, 580, C文字コンソール.Eフォント種別.白, sineY.ToString());
@ -79,13 +79,13 @@ namespace TJAPlayer3 {
int puriChar = PuchiChara.tGetPuchiCharaIndexByName(p); int puriChar = PuchiChara.tGetPuchiCharaIndexByName(p);
var chara = TJAPlayer3.Tx.Puchichara[puriChar].tx; var chara = OpenTaiko.Tx.Puchichara[puriChar].tx;
//TJAPlayer3.Tx.PuchiChara[puriChar]; //TJAPlayer3.Tx.PuchiChara[puriChar];
if (chara != null) { if (chara != null) {
float puchiScale = TJAPlayer3.Skin.Resolution[1] / 720.0f; float puchiScale = OpenTaiko.Skin.Resolution[1] / 720.0f;
chara.vcScaleRatio = new Vector3D<float>((isBalloon ? TJAPlayer3.Skin.Game_PuchiChara_Scale[1] * puchiScale : TJAPlayer3.Skin.Game_PuchiChara_Scale[0] * puchiScale)); chara.vcScaleRatio = new Vector3D<float>((isBalloon ? OpenTaiko.Skin.Game_PuchiChara_Scale[1] * puchiScale : OpenTaiko.Skin.Game_PuchiChara_Scale[0] * puchiScale));
chara.vcScaleRatio.X *= scale; chara.vcScaleRatio.X *= scale;
chara.vcScaleRatio.Y *= scale; chara.vcScaleRatio.Y *= scale;
chara.Opacity = alpha; chara.Opacity = alpha;
@ -100,7 +100,7 @@ namespace TJAPlayer3 {
int adjustedX = x - 32; int adjustedX = x - 32;
int adjustedY = y - 32; int adjustedY = y - 32;
chara.t2D拡大率考慮中央基準描画(adjustedX, adjustedY + (int)sineY, new Rectangle((Counter.CurrentValue + 2) * TJAPlayer3.Skin.Game_PuchiChara[0], 0, TJAPlayer3.Skin.Game_PuchiChara[0], TJAPlayer3.Skin.Game_PuchiChara[1])); chara.t2D拡大率考慮中央基準描画(adjustedX, adjustedY + (int)sineY, new Rectangle((Counter.CurrentValue + 2) * OpenTaiko.Skin.Game_PuchiChara[0], 0, OpenTaiko.Skin.Game_PuchiChara[0], OpenTaiko.Skin.Game_PuchiChara[1]));
} }
return base.Draw(); return base.Draw();

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class BestPlayRecords { internal class BestPlayRecords {
public enum EClearStatus { public enum EClearStatus {

View File

@ -5,7 +5,7 @@ using System.Text;
using FDK; using FDK;
using FDK.ExtensionMethods; using FDK.ExtensionMethods;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CConfigIni : INotifyPropertyChanged { internal class CConfigIni : INotifyPropertyChanged {
private const int MinimumKeyboardSoundLevelIncrement = 1; private const int MinimumKeyboardSoundLevelIncrement = 1;
private const int MaximumKeyboardSoundLevelIncrement = 20; private const int MaximumKeyboardSoundLevelIncrement = 20;
@ -1054,7 +1054,7 @@ namespace TJAPlayer3 {
} }
public bool KeyIsPressed(STKEYASSIGN[] pad) { public bool KeyIsPressed(STKEYASSIGN[] pad) {
return TJAPlayer3.InputManager.Keyboard.KeyPressed(pad.ToList().ConvertAll<int>(key => key.)); return OpenTaiko.InputManager.Keyboard.KeyPressed(pad.ToList().ConvertAll<int>(key => key.));
} }
[StructLayout(LayoutKind.Sequential)] [StructLayout(LayoutKind.Sequential)]
@ -1890,7 +1890,7 @@ namespace TJAPlayer3 {
} }
} }
public void t書き出し(string iniファイル名) { public void t書き出し(string iniファイル名) {
StreamWriter sw = new StreamWriter(iniファイル名, false, Encoding.GetEncoding(TJAPlayer3.sEncType)); StreamWriter sw = new StreamWriter(iniファイル名, false, Encoding.GetEncoding(OpenTaiko.sEncType));
sw.WriteLine(";-------------------"); sw.WriteLine(";-------------------");
#region [ System ] #region [ System ]
@ -1900,7 +1900,7 @@ namespace TJAPlayer3 {
#region [ Version ] #region [ Version ]
sw.WriteLine("; リリースバージョン"); sw.WriteLine("; リリースバージョン");
sw.WriteLine("; Release Version."); sw.WriteLine("; Release Version.");
sw.WriteLine("Version={0}", TJAPlayer3.VERSION); sw.WriteLine("Version={0}", OpenTaiko.VERSION);
sw.WriteLine(); sw.WriteLine();
#endregion #endregion
#region [ TJAPath ] #region [ TJAPath ]
@ -1913,11 +1913,11 @@ namespace TJAPlayer3 {
#endregion #endregion
#region [ ] #region [ ]
#region [ Skinパスの絶対パス ] #region [ Skinパスの絶対パス ]
Uri uriRoot = new Uri(System.IO.Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "System" + System.IO.Path.DirectorySeparatorChar)); Uri uriRoot = new Uri(System.IO.Path.Combine(OpenTaiko.strEXEのあるフォルダ, "System" + System.IO.Path.DirectorySeparatorChar));
if (strSystemSkinSubfolderFullName != null && strSystemSkinSubfolderFullName.Length == 0) { if (strSystemSkinSubfolderFullName != null && strSystemSkinSubfolderFullName.Length == 0) {
// Config.iniが空の状態でDTXManiaをViewerとして起動_終了すると、strSystemSkinSubfolderFullName が空の状態でここに来る。 // Config.iniが空の状態でDTXManiaをViewerとして起動_終了すると、strSystemSkinSubfolderFullName が空の状態でここに来る。
// → 初期値として Default/ を設定する。 // → 初期値として Default/ を設定する。
strSystemSkinSubfolderFullName = System.IO.Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "System" + System.IO.Path.DirectorySeparatorChar + "Default" + System.IO.Path.DirectorySeparatorChar); strSystemSkinSubfolderFullName = System.IO.Path.Combine(OpenTaiko.strEXEのあるフォルダ, "System" + System.IO.Path.DirectorySeparatorChar + "Default" + System.IO.Path.DirectorySeparatorChar);
} }
Uri uriPath = new Uri(System.IO.Path.Combine(this.strSystemSkinSubfolderFullName, "." + System.IO.Path.DirectorySeparatorChar)); Uri uriPath = new Uri(System.IO.Path.Combine(this.strSystemSkinSubfolderFullName, "." + System.IO.Path.DirectorySeparatorChar));
string relPath = uriRoot.MakeRelativeUri(uriPath).ToString(); // 相対パスを取得 string relPath = uriRoot.MakeRelativeUri(uriPath).ToString(); // 相対パスを取得
@ -2662,7 +2662,7 @@ namespace TJAPlayer3 {
if (this.bConfigIniが存在している) { if (this.bConfigIniが存在している) {
string str; string str;
this.tキーアサインを全部クリアする(); this.tキーアサインを全部クリアする();
using (StreamReader reader = new StreamReader(this.ConfigIniファイル名, Encoding.GetEncoding(TJAPlayer3.sEncType))) { using (StreamReader reader = new StreamReader(this.ConfigIniファイル名, Encoding.GetEncoding(OpenTaiko.sEncType))) {
str = reader.ReadToEnd(); str = reader.ReadToEnd();
} }
t文字列から読み込み(str); t文字列から読み込み(str);
@ -2751,7 +2751,7 @@ namespace TJAPlayer3 {
else if (str3.Equals("SkinPath")) { else if (str3.Equals("SkinPath")) {
string absSkinPath = str4; string absSkinPath = str4;
if (!System.IO.Path.IsPathRooted(str4)) { if (!System.IO.Path.IsPathRooted(str4)) {
absSkinPath = System.IO.Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "System"); absSkinPath = System.IO.Path.Combine(OpenTaiko.strEXEのあるフォルダ, "System");
absSkinPath = System.IO.Path.Combine(absSkinPath, str4); absSkinPath = System.IO.Path.Combine(absSkinPath, str4);
Uri u = new Uri(absSkinPath); Uri u = new Uri(absSkinPath);
absSkinPath = u.AbsolutePath.ToString(); // str4内に相対パスがある場合に備える absSkinPath = u.AbsolutePath.ToString(); // str4内に相対パスがある場合に備える

View File

@ -1,7 +1,7 @@
using System.Security.Cryptography; using System.Security.Cryptography;
using System.Text; using System.Text;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CCrypto { internal class CCrypto {
internal static readonly char[] chars = internal static readonly char[] chars =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890".ToCharArray(); "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890".ToCharArray();

View File

@ -1,6 +1,6 @@
using System.Text; using System.Text;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// <para>DTXMania のバージョン。</para> /// <para>DTXMania のバージョン。</para>
/// <para>例1"078b" → 整数部=078, 小数部=2000000 ('英字'+'yymmdd') </para> /// <para>例1"078b" → 整数部=078, 小数部=2000000 ('英字'+'yymmdd') </para>

View File

@ -1,9 +1,9 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class CHitSounds { class CHitSounds {
public CHitSounds(string path) { public CHitSounds(string path) {
tLoadFile(path); tLoadFile(path);
for (int i = 0; i < 5; i++) { for (int i = 0; i < 5; i++) {
tReloadHitSounds(TJAPlayer3.ConfigIni.nHitSounds[i], i); tReloadHitSounds(OpenTaiko.ConfigIni.nHitSounds[i], i);
} }
} }

View File

@ -1,7 +1,7 @@
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
public class CPad { public class CPad {
// プロパティ // プロパティ

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class CSavableT<T> where T : new() { class CSavableT<T> where T : new() {
public virtual string _fn { public virtual string _fn {
get; get;

View File

@ -3,7 +3,7 @@ using System.Drawing;
using System.Text; using System.Text;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
// グローバル定数 // グローバル定数
public enum Eシステムサウンド { public enum Eシステムサウンド {
@ -182,7 +182,7 @@ namespace TJAPlayer3 {
for (int i = 0; i < 2; i++) // 一旦Cloneを止めてASIO対応に専念 for (int i = 0; i < 2; i++) // 一旦Cloneを止めてASIO対応に専念
{ {
try { try {
this.rSound[i] = TJAPlayer3.SoundManager?.tCreateSound(CSkin.Path(this.strFileName), _soundGroup); this.rSound[i] = OpenTaiko.SoundManager?.tCreateSound(CSkin.Path(this.strFileName), _soundGroup);
} catch { } catch {
this.rSound[i] = null; this.rSound[i] = null;
throw; throw;
@ -226,10 +226,10 @@ namespace TJAPlayer3 {
} }
public void tRemoveMixer() { public void tRemoveMixer() {
if (TJAPlayer3.SoundManager.GetCurrentSoundDeviceType() != "DirectShow") { if (OpenTaiko.SoundManager.GetCurrentSoundDeviceType() != "DirectShow") {
for (int i = 0; i < 2; i++) { for (int i = 0; i < 2; i++) {
if (this.rSound[i] != null) { if (this.rSound[i] != null) {
TJAPlayer3.SoundManager.RemoveMixer(this.rSound[i]); OpenTaiko.SoundManager.RemoveMixer(this.rSound[i]);
} }
} }
} }
@ -241,7 +241,7 @@ namespace TJAPlayer3 {
if (!this.bDisposed) { if (!this.bDisposed) {
for (int i = 0; i < 2; i++) { for (int i = 0; i < 2; i++) {
if (this.rSound[i] != null) { if (this.rSound[i] != null) {
TJAPlayer3.SoundManager.tDisposeSound(this.rSound[i]); OpenTaiko.SoundManager.tDisposeSound(this.rSound[i]);
this.rSound[i] = null; this.rSound[i] = null;
} }
} }
@ -643,7 +643,7 @@ namespace TJAPlayer3 {
PrepareReloadSkin(); PrepareReloadSkin();
} }
private string InitializeSkinPathRoot() { private string InitializeSkinPathRoot() {
strSystemSkinRoot = System.IO.Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "System" + System.IO.Path.DirectorySeparatorChar); strSystemSkinRoot = System.IO.Path.Combine(OpenTaiko.strEXEのあるフォルダ, "System" + System.IO.Path.DirectorySeparatorChar);
return strSystemSkinRoot; return strSystemSkinRoot;
} }
@ -759,7 +759,7 @@ namespace TJAPlayer3 {
if (!this[i].bExclusive) // BGM系以外のみ読み込む。(BGM系は必要になったときに読み込む) if (!this[i].bExclusive) // BGM系以外のみ読み込む。(BGM系は必要になったときに読み込む)
{ {
CSystemSound cシステムサウンド = this[i]; CSystemSound cシステムサウンド = this[i];
if (!TJAPlayer3.bコンパクトモード || cシステムサウンド.bCompact対象) { if (!OpenTaiko.bコンパクトモード || cシステムサウンド.bCompact対象) {
try { try {
cシステムサウンド.tLoading(); cシステムサウンド.tLoading();
Trace.TraceInformation("システムサウンドを読み込みました。({0})", cシステムサウンド.strFileName); Trace.TraceInformation("システムサウンドを読み込みました。({0})", cシステムサウンド.strFileName);
@ -929,7 +929,7 @@ namespace TJAPlayer3 {
public void LoadSkinConfigFromFile(string path, ref string work) { public void LoadSkinConfigFromFile(string path, ref string work) {
if (!File.Exists(Path(path))) return; if (!File.Exists(Path(path))) return;
using (var streamReader = new StreamReader(Path(path), Encoding.GetEncoding(TJAPlayer3.sEncType))) { using (var streamReader = new StreamReader(Path(path), Encoding.GetEncoding(OpenTaiko.sEncType))) {
while (streamReader.Peek() > -1) // 一行ずつ読み込む。 while (streamReader.Peek() > -1) // 一行ずつ読み込む。
{ {
var nowLine = streamReader.ReadLine(); var nowLine = streamReader.ReadLine();

View File

@ -1,6 +1,6 @@
using System.Drawing; using System.Drawing;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CSongDict { internal class CSongDict {
private static Dictionary<string, CSongListNode> nodes = new Dictionary<string, CSongListNode>(); private static Dictionary<string, CSongListNode> nodes = new Dictionary<string, CSongListNode>();
private static HashSet<string> urls = new HashSet<string>(); private static HashSet<string> urls = new HashSet<string>();
@ -171,7 +171,7 @@ namespace TJAPlayer3 {
public static List<CSongListNode> tFetchFavoriteFolder(CSongListNode parent) { public static List<CSongListNode> tFetchFavoriteFolder(CSongListNode parent) {
List<CSongListNode> childList = new List<CSongListNode>(); List<CSongListNode> childList = new List<CSongListNode>();
foreach (string id in TJAPlayer3.Favorites.data.favorites[TJAPlayer3.SaveFile]) { foreach (string id in OpenTaiko.Favorites.data.favorites[OpenTaiko.SaveFile]) {
var node = tReadaptChildNote(parent, tGetNodeFromID(id)); var node = tReadaptChildNote(parent, tGetNodeFromID(id));
if (node != null) { if (node != null) {
childList.Add(node); childList.Add(node);
@ -192,7 +192,7 @@ namespace TJAPlayer3 {
public static List<CSongListNode> tFetchRecentlyPlayedSongsFolder(CSongListNode parent) { public static List<CSongListNode> tFetchRecentlyPlayedSongsFolder(CSongListNode parent) {
List<CSongListNode> childList = new List<CSongListNode>(); List<CSongListNode> childList = new List<CSongListNode>();
foreach (string id in TJAPlayer3.RecentlyPlayedSongs.data.recentlyplayedsongs[TJAPlayer3.SaveFile].Reverse()) { foreach (string id in OpenTaiko.RecentlyPlayedSongs.data.recentlyplayedsongs[OpenTaiko.SaveFile].Reverse()) {
var node = tReadaptChildNote(parent, tGetNodeFromID(id)); var node = tReadaptChildNote(parent, tGetNodeFromID(id));
if (node != null) { if (node != null) {
childList.Add(node); childList.Add(node);
@ -248,7 +248,7 @@ namespace TJAPlayer3 {
public static void tRefreshScoreTables() { public static void tRefreshScoreTables() {
for (int pl = 0; pl < 5; pl++) { for (int pl = 0; pl < 5; pl++) {
CActSelect曲リスト.CScorePad[] SPArrRef = ScorePads[pl]; CActSelect曲リスト.CScorePad[] SPArrRef = ScorePads[pl];
var BestPlayStats = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(pl)].data.bestPlaysStats; var BestPlayStats = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(pl)].data.bestPlaysStats;
for (int s = 0; s <= (int)Difficulty.Edit + 1; s++) { for (int s = 0; s <= (int)Difficulty.Edit + 1; s++) {
CActSelect曲リスト.CScorePad SPRef = SPArrRef[s]; CActSelect曲リスト.CScorePad SPRef = SPArrRef[s];

View File

@ -1,7 +1,7 @@
using System.Drawing; using System.Drawing;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CTextConsole : CActivity { internal class CTextConsole : CActivity {
// 定数 // 定数
@ -53,8 +53,8 @@ namespace TJAPlayer3 {
} }
public override void CreateManagedResource() { public override void CreateManagedResource() {
if (!base.IsDeActivated) { if (!base.IsDeActivated) {
this.txフォント8x16[0] = TJAPlayer3.Tx.TxC(@"Console_Font.png"); this.txフォント8x16[0] = OpenTaiko.Tx.TxC(@"Console_Font.png");
this.txフォント8x16[1] = TJAPlayer3.Tx.TxC(@"Console_Font_Small.png"); this.txフォント8x16[1] = OpenTaiko.Tx.TxC(@"Console_Font_Small.png");
nFontWidth = this.txフォント8x16[0].szTextureSize.Width / 32; nFontWidth = this.txフォント8x16[0].szTextureSize.Width / 32;
nFontHeight = this.txフォント8x16[0].szTextureSize.Height / 16; nFontHeight = this.txフォント8x16[0].szTextureSize.Height / 16;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class CVersionList { class CVersionList {
public static string[] VersionList = { public static string[] VersionList = {
"0.1.0", "0.1.0",

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// The ConfigIniToSongGainControllerBinder allows for SONGVOL and/or other /// The ConfigIniToSongGainControllerBinder allows for SONGVOL and/or other
/// properties related to the Gain levels applied to song preview and /// properties related to the Gain levels applied to song preview and

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// The ConfigIniToSoundGroupLevelControllerBinder allows for updated sound /// The ConfigIniToSoundGroupLevelControllerBinder allows for updated sound
/// group level values, and keyboard sound level adjustment increment /// group level values, and keyboard sound level adjustment increment

View File

@ -2,7 +2,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Converters; using Newtonsoft.Json.Converters;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// 設定ファイル入出力クラス。 /// 設定ファイル入出力クラス。
/// </summary> /// </summary>

View File

@ -1,6 +1,6 @@
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// 難易度。 /// 難易度。

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
class Easing { class Easing {
public int EaseIn(CCounter counter, float startPoint, float endPoint, CalcType type) { public int EaseIn(CCounter counter, float startPoint, float endPoint, CalcType type) {
StartPoint = startPoint; StartPoint = startPoint;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class Favorites { internal class Favorites {
public void tFavorites() { public void tFavorites() {
if (!File.Exists("Favorite.json")) if (!File.Exists("Favorite.json"))
@ -11,15 +11,15 @@
public void tToggleFavorite(string chartID) { public void tToggleFavorite(string chartID) {
if (tIsFavorite(chartID)) if (tIsFavorite(chartID))
data.favorites[TJAPlayer3.SaveFile].Remove(chartID); data.favorites[OpenTaiko.SaveFile].Remove(chartID);
else else
data.favorites[TJAPlayer3.SaveFile].Add(chartID); data.favorites[OpenTaiko.SaveFile].Add(chartID);
tSaveFile(); tSaveFile();
} }
public bool tIsFavorite(string chartID) { public bool tIsFavorite(string chartID) {
return (data.favorites[TJAPlayer3.SaveFile].Contains(chartID)); return (data.favorites[OpenTaiko.SaveFile].Contains(chartID));
} }

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// KeyboardSoundGroupLevelControlHandler is called by the song selection /// KeyboardSoundGroupLevelControlHandler is called by the song selection
/// and song play stages when handling keyboard input. By delegating to /// and song play stages when handling keyboard input. By delegating to
@ -23,8 +23,8 @@ namespace TJAPlayer3 {
SoundGroupLevelController soundGroupLevelController, SoundGroupLevelController soundGroupLevelController,
CSkin skin, CSkin skin,
bool isSongPreview) { bool isSongPreview) {
bool isAdjustmentPositive = TJAPlayer3.ConfigIni.KeyAssign.KeyIsPressed(TJAPlayer3.ConfigIni.KeyAssign.System.SongVolIncrease); bool isAdjustmentPositive = OpenTaiko.ConfigIni.KeyAssign.KeyIsPressed(OpenTaiko.ConfigIni.KeyAssign.System.SongVolIncrease);
bool isAdjustmentNegative = TJAPlayer3.ConfigIni.KeyAssign.KeyIsPressed(TJAPlayer3.ConfigIni.KeyAssign.System.SongVolDecrease); bool isAdjustmentNegative = OpenTaiko.ConfigIni.KeyAssign.KeyIsPressed(OpenTaiko.ConfigIni.KeyAssign.System.SongVolDecrease);
if (!(isAdjustmentPositive || isAdjustmentNegative)) return; if (!(isAdjustmentPositive || isAdjustmentNegative)) return;

View File

@ -1,7 +1,7 @@
using System.Diagnostics; using System.Diagnostics;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class LogNotification { internal class LogNotification {
private static Queue<CLogNotification> Notifications = new Queue<CLogNotification>(); private static Queue<CLogNotification> Notifications = new Queue<CLogNotification>();
@ -20,7 +20,7 @@ namespace TJAPlayer3 {
public ENotificationType NotificationType = ENotificationType.EINFO; public ENotificationType NotificationType = ENotificationType.EINFO;
public string Message = ""; public string Message = "";
public CCounter LifeTime = new CCounter(0, 1000, 1, TJAPlayer3.Timer); public CCounter LifeTime = new CCounter(0, 1000, 1, OpenTaiko.Timer);
} }

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class Modal { internal class Modal {
public Modal(EModalType mt, int ra, params object?[] re) { public Modal(EModalType mt, int ra, params object?[] re) {
modalType = mt; modalType = mt;
@ -7,7 +7,7 @@
} }
public void tRegisterModal(int player) { public void tRegisterModal(int player) {
TJAPlayer3.stage結果.lcModal.RegisterNewModal(player, rarity, modalType, reference); OpenTaiko.stage結果.lcModal.RegisterNewModal(player, rarity, modalType, reference);
} }
#region [Enum definitions] #region [Enum definitions]

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class ModalQueue { internal class ModalQueue {
public ModalQueue(Modal.EModalFormat mf) { public ModalQueue(Modal.EModalFormat mf) {
_modalQueues = new Queue<Modal>[] { new Queue<Modal>(), new Queue<Modal>(), new Queue<Modal>(), new Queue<Modal>(), new Queue<Modal>() }; _modalQueues = new Queue<Modal>[] { new Queue<Modal>(), new Queue<Modal>(), new Queue<Modal>(), new Queue<Modal>(), new Queue<Modal>() };
@ -10,7 +10,7 @@
mp.modalFormat = _modalFormat; mp.modalFormat = _modalFormat;
mp.player = player; mp.player = player;
if (mp != null && player >= 0 && player < TJAPlayer3.ConfigIni.nPlayerCount) if (mp != null && player >= 0 && player < OpenTaiko.ConfigIni.nPlayerCount)
_modalQueues[player].Enqueue(mp); _modalQueues[player].Enqueue(mp);
} }
@ -22,7 +22,7 @@
// 1P => 2P => 3P => 4P => 5P // 1P => 2P => 3P => 4P => 5P
public Modal? tPopModalInOrder() { public Modal? tPopModalInOrder() {
for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++) { for (int i = 0; i < OpenTaiko.ConfigIni.nPlayerCount; i++) {
if (!tIsQueueEmpty(i)) { if (!tIsQueueEmpty(i)) {
Modal? _m = _modalQueues[i].Dequeue(); Modal? _m = _modalQueues[i].Dequeue();
_m?.tRegisterModal(i + 1); _m?.tRegisterModal(i + 1);
@ -34,7 +34,7 @@
} }
public bool tIsQueueEmpty(int player) { public bool tIsQueueEmpty(int player) {
if (player < 0 || player >= TJAPlayer3.ConfigIni.nPlayerCount) if (player < 0 || player >= OpenTaiko.ConfigIni.nPlayerCount)
return true; return true;
return _modalQueues[player].Count < 1; return _modalQueues[player].Count < 1;

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
class NamePlateConfig { class NamePlateConfig {
public void tNamePlateConfig() { public void tNamePlateConfig() {
// Deprecated, only converts to new format // Deprecated, only converts to new format
@ -19,7 +19,7 @@ namespace TJAPlayer3 {
return; return;
for (int i = 0; i < 5; i++) { for (int i = 0; i < 5; i++) {
int p = TJAPlayer3.GetActualPlayer(i); int p = OpenTaiko.GetActualPlayer(i);
data.Medals[p] += amounts[i]; data.Medals[p] += amounts[i];
} }
@ -51,20 +51,20 @@ namespace TJAPlayer3 {
bool iG = isGold; bool iG = isGold;
int cs = clearStatus; int cs = clearStatus;
if (TJAPlayer3.NamePlateConfig.data.DanTitles[player] == null) if (OpenTaiko.NamePlateConfig.data.DanTitles[player] == null)
TJAPlayer3.NamePlateConfig.data.DanTitles[player] = new Dictionary<string, SaveFile.CDanTitle>(); OpenTaiko.NamePlateConfig.data.DanTitles[player] = new Dictionary<string, SaveFile.CDanTitle>();
if (TJAPlayer3.NamePlateConfig.data.DanTitles[player].ContainsKey(title)) { if (OpenTaiko.NamePlateConfig.data.DanTitles[player].ContainsKey(title)) {
if (TJAPlayer3.NamePlateConfig.data.DanTitles[player][title].clearStatus > cs) if (OpenTaiko.NamePlateConfig.data.DanTitles[player][title].clearStatus > cs)
cs = TJAPlayer3.NamePlateConfig.data.DanTitles[player][title].clearStatus; cs = OpenTaiko.NamePlateConfig.data.DanTitles[player][title].clearStatus;
if (TJAPlayer3.NamePlateConfig.data.DanTitles[player][title].isGold) if (OpenTaiko.NamePlateConfig.data.DanTitles[player][title].isGold)
iG = true; iG = true;
} }
// Automatically set the dan to nameplate if new // Automatically set the dan to nameplate if new
// Add a function within the NamePlate.cs file to update the title texture // Add a function within the NamePlate.cs file to update the title texture
if (!TJAPlayer3.NamePlateConfig.data.DanTitles[player].ContainsKey(title) || cs != clearStatus || iG != isGold) { if (!OpenTaiko.NamePlateConfig.data.DanTitles[player].ContainsKey(title) || cs != clearStatus || iG != isGold) {
changed = true; changed = true;
/* /*
TJAPlayer3.NamePlateConfig.data.Dan[player] = title; TJAPlayer3.NamePlateConfig.data.Dan[player] = title;
@ -76,7 +76,7 @@ namespace TJAPlayer3 {
SaveFile.CDanTitle danTitle = new SaveFile.CDanTitle(iG, cs); SaveFile.CDanTitle danTitle = new SaveFile.CDanTitle(iG, cs);
TJAPlayer3.NamePlateConfig.data.DanTitles[player][title] = danTitle; OpenTaiko.NamePlateConfig.data.DanTitles[player][title] = danTitle;
tSaveFile(); tSaveFile();

View File

@ -13,8 +13,8 @@ using Silk.NET.Maths;
using SkiaSharp; using SkiaSharp;
using Rectangle = System.Drawing.Rectangle; using Rectangle = System.Drawing.Rectangle;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class TJAPlayer3 : Game { internal class OpenTaiko : Game {
// プロパティ // プロパティ
#region [ properties ] #region [ properties ]
public static readonly string VERSION = Assembly.GetExecutingAssembly().GetName().Version.ToString();//.Substring(0, Assembly.GetExecutingAssembly().GetName().Version.ToString().Length - 2); public static readonly string VERSION = Assembly.GetExecutingAssembly().GetName().Version.ToString();//.Substring(0, Assembly.GetExecutingAssembly().GetName().Version.ToString().Length - 2);
@ -49,7 +49,7 @@ namespace TJAPlayer3 {
private set; private set;
} }
public static TJAPlayer3 app { public static OpenTaiko app {
get; get;
private set; private set;
} }
@ -161,15 +161,15 @@ namespace TJAPlayer3 {
public static CDTX GetDTX(int player) { public static CDTX GetDTX(int player) {
switch (player) { switch (player) {
case 0: case 0:
return TJAPlayer3.DTX; return OpenTaiko.DTX;
case 1: case 1:
return TJAPlayer3.DTX_2P; return OpenTaiko.DTX_2P;
case 2: case 2:
return TJAPlayer3.DTX_3P; return OpenTaiko.DTX_3P;
case 3: case 3:
return TJAPlayer3.DTX_4P; return OpenTaiko.DTX_4P;
case 4: case 4:
return TJAPlayer3.DTX_5P; return OpenTaiko.DTX_5P;
} }
return null; return null;
} }
@ -430,15 +430,15 @@ namespace TJAPlayer3 {
} }
public static bool P1IsBlue() { public static bool P1IsBlue() {
return (TJAPlayer3.PlayerSide == 1 && TJAPlayer3.ConfigIni.nPlayerCount == 1); return (OpenTaiko.PlayerSide == 1 && OpenTaiko.ConfigIni.nPlayerCount == 1);
} }
#endregion #endregion
// コンストラクタ // コンストラクタ
public TJAPlayer3() : base("OpenTaiko.ico") { public OpenTaiko() : base("OpenTaiko.ico") {
TJAPlayer3.app = this; OpenTaiko.app = this;
} }
public static string sEncType = "Shift_JIS"; public static string sEncType = "Shift_JIS";
@ -603,7 +603,7 @@ namespace TJAPlayer3 {
foreach (STPlugin st in this.PluginList) { foreach (STPlugin st in this.PluginList) {
Directory.SetCurrentDirectory(st.pluginDirectory); Directory.SetCurrentDirectory(st.pluginDirectory);
st.plugin.OnUnmanagedリソースの作成(); st.plugin.OnUnmanagedリソースの作成();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
} }
protected override void UnloadContent() { protected override void UnloadContent() {
@ -615,7 +615,7 @@ namespace TJAPlayer3 {
foreach (STPlugin st in this.PluginList) { foreach (STPlugin st in this.PluginList) {
Directory.SetCurrentDirectory(st.pluginDirectory); Directory.SetCurrentDirectory(st.pluginDirectory);
st.plugin.OnUnmanagedリソースの解放(); st.plugin.OnUnmanagedリソースの解放();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
} }
protected override void OnExiting() { protected override void OnExiting() {
@ -631,7 +631,7 @@ namespace TJAPlayer3 {
base.OnExiting(); base.OnExiting();
} }
protected override void Update() { protected override void Update() {
InputManager?.Polling(TJAPlayer3.ConfigIni.bBufferedInputs); InputManager?.Polling(OpenTaiko.ConfigIni.bBufferedInputs);
} }
protected override void Draw() { protected override void Draw() {
#if !DEBUG #if !DEBUG
@ -717,7 +717,7 @@ namespace TJAPlayer3 {
#endregion #endregion
if (r現在のステージ != null) { if (r現在のステージ != null) {
TJAPlayer3.NamePlate.lcNamePlate.Update(); OpenTaiko.NamePlate.lcNamePlate.Update();
this.n進行描画の戻り値 = (r現在のステージ != null) ? r現在のステージ.Draw() : 0; this.n進行描画の戻り値 = (r現在のステージ != null) ? r現在のステージ.Draw() : 0;
#region [ ] #region [ ]
@ -725,12 +725,12 @@ namespace TJAPlayer3 {
foreach (STPlugin sp in this.PluginList) { foreach (STPlugin sp in this.PluginList) {
Directory.SetCurrentDirectory(sp.pluginDirectory); Directory.SetCurrentDirectory(sp.pluginDirectory);
if (TJAPlayer3.act現在入力を占有中のプラグイン == null || TJAPlayer3.act現在入力を占有中のプラグイン == sp.plugin) if (OpenTaiko.act現在入力を占有中のプラグイン == null || OpenTaiko.act現在入力を占有中のプラグイン == sp.plugin)
sp.plugin.On進行描画(TJAPlayer3.Pad, TJAPlayer3.InputManager.Keyboard); sp.plugin.On進行描画(OpenTaiko.Pad, OpenTaiko.InputManager.Keyboard);
else else
sp.plugin.On進行描画(null, null); sp.plugin.On進行描画(null, null);
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -739,7 +739,7 @@ namespace TJAPlayer3 {
CScoreIni scoreIni = null; CScoreIni scoreIni = null;
#region [ / ] // ここに"Enumerating Songs..."表示を集約 #region [ / ] // ここに"Enumerating Songs..."表示を集約
if (!TJAPlayer3.bコンパクトモード) { if (!OpenTaiko.bコンパクトモード) {
actEnumSongs.Draw(); // "Enumerating Songs..."アイコンの描画 actEnumSongs.Draw(); // "Enumerating Songs..."アイコンの描画
} }
switch (r現在のステージ.eStageID) { switch (r現在のステージ.eStageID) {
@ -758,7 +758,7 @@ namespace TJAPlayer3 {
actEnumSongs.CreateManagedResource(); actEnumSongs.CreateManagedResource();
actEnumSongs.CreateUnmanagedResource(); actEnumSongs.CreateUnmanagedResource();
} }
TJAPlayer3.stageSongSelect.bIsEnumeratingSongs = true; OpenTaiko.stageSongSelect.bIsEnumeratingSongs = true;
EnumSongs.Init(); // 取得した曲数を、新インスタンスにも与える EnumSongs.Init(); // 取得した曲数を、新インスタンスにも与える
EnumSongs.StartEnumFromDisk(); // 曲検索スレッドの起動_開始 EnumSongs.StartEnumFromDisk(); // 曲検索スレッドの起動_開始
} }
@ -805,10 +805,10 @@ namespace TJAPlayer3 {
actEnumSongs.ReleaseManagedResource(); actEnumSongs.ReleaseManagedResource();
actEnumSongs.ReleaseUnmanagedResource(); actEnumSongs.ReleaseUnmanagedResource();
} }
TJAPlayer3.stageSongSelect.bIsEnumeratingSongs = false; OpenTaiko.stageSongSelect.bIsEnumeratingSongs = false;
bool bRemakeSongTitleBar = (r現在のステージ.eStageID == CStage.EStage.SongSelect) ? true : false; bool bRemakeSongTitleBar = (r現在のステージ.eStageID == CStage.EStage.SongSelect) ? true : false;
TJAPlayer3.stageSongSelect.Refresh(EnumSongs.Songs管理, bRemakeSongTitleBar); OpenTaiko.stageSongSelect.Refresh(EnumSongs.Songs管理, bRemakeSongTitleBar);
EnumSongs.SongListEnumCompletelyDone(); EnumSongs.SongListEnumCompletelyDone();
} }
#endregion #endregion
@ -859,7 +859,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -890,7 +890,7 @@ namespace TJAPlayer3 {
r直前のステージ = r現在のステージ; r直前のステージ = r現在のステージ;
r現在のステージ = stageSongSelect; r現在のステージ = stageSongSelect;
TJAPlayer3.latestSongSelect = stageSongSelect; OpenTaiko.latestSongSelect = stageSongSelect;
//----------------------------- //-----------------------------
#endregion #endregion
break; break;
@ -912,7 +912,7 @@ namespace TJAPlayer3 {
} }
r直前のステージ = r現在のステージ; r直前のステージ = r現在のステージ;
r現在のステージ = stage段位選択; r現在のステージ = stage段位選択;
TJAPlayer3.latestSongSelect = stage段位選択; OpenTaiko.latestSongSelect = stage段位選択;
//----------------------------- //-----------------------------
#endregion #endregion
break; break;
@ -1061,7 +1061,7 @@ namespace TJAPlayer3 {
r直前のステージ = r現在のステージ; r直前のステージ = r現在のステージ;
r現在のステージ = stageSongSelect; r現在のステージ = stageSongSelect;
TJAPlayer3.latestSongSelect = stageSongSelect; OpenTaiko.latestSongSelect = stageSongSelect;
ConfigIni.nPreviousPlayerCount = ConfigIni.nPlayerCount; ConfigIni.nPreviousPlayerCount = ConfigIni.nPlayerCount;
ConfigIni.nPlayerCount = 2; ConfigIni.nPlayerCount = 2;
ConfigIni.bAIBattleMode = true; ConfigIni.bAIBattleMode = true;
@ -1075,7 +1075,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//this.tガベージコレクションを実行する(); // #31980 2013.9.3 yyagi タイトル画面でだけ、毎フレームGCを実行して重くなっていた問題の修正 //this.tガベージコレクションを実行する(); // #31980 2013.9.3 yyagi タイトル画面でだけ、毎フレームGCを実行して重くなっていた問題の修正
@ -1110,7 +1110,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1139,7 +1139,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1190,7 +1190,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1226,7 +1226,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1280,7 +1280,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1341,7 +1341,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1371,7 +1371,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1409,7 +1409,7 @@ namespace TJAPlayer3 {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1425,7 +1425,7 @@ namespace TJAPlayer3 {
//----------------------------- //-----------------------------
DTXVmode.Refreshed = false; // 曲のリロード中に発生した再リロードは、無視する。 DTXVmode.Refreshed = false; // 曲のリロード中に発生した再リロードは、無視する。
if (this.n進行描画の戻り値 != 0) { if (this.n進行描画の戻り値 != 0) {
TJAPlayer3.Pad.st検知したデバイス.Clear(); // 入力デバイスフラグクリア(2010.9.11) OpenTaiko.Pad.st検知したデバイス.Clear(); // 入力デバイスフラグクリア(2010.9.11)
r現在のステージ.DeActivate(); r現在のステージ.DeActivate();
if (!ConfigIni.PreAssetsLoading) { if (!ConfigIni.PreAssetsLoading) {
r現在のステージ.ReleaseManagedResource(); r現在のステージ.ReleaseManagedResource();
@ -1463,20 +1463,20 @@ namespace TJAPlayer3 {
Trace.TraceInformation("----------------------"); Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Return to song select menu"); Trace.TraceInformation("■ Return to song select menu");
TJAPlayer3.latestSongSelect.Activate(); OpenTaiko.latestSongSelect.Activate();
if (!ConfigIni.PreAssetsLoading) { if (!ConfigIni.PreAssetsLoading) {
TJAPlayer3.latestSongSelect.CreateManagedResource(); OpenTaiko.latestSongSelect.CreateManagedResource();
TJAPlayer3.latestSongSelect.CreateUnmanagedResource(); OpenTaiko.latestSongSelect.CreateUnmanagedResource();
} }
r直前のステージ = r現在のステージ; r直前のステージ = r現在のステージ;
// Seek latest registered song select screen // Seek latest registered song select screen
r現在のステージ = TJAPlayer3.latestSongSelect; r現在のステージ = OpenTaiko.latestSongSelect;
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
break; break;
@ -1502,7 +1502,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1519,7 +1519,7 @@ for (int i = 0; i < 3; i++) {
DTXVmode.Refreshed = false; DTXVmode.Refreshed = false;
if (DTXVmode.Command == CDTXVmode.ECommand.Stop) { if (DTXVmode.Command == CDTXVmode.ECommand.Stop) {
TJAPlayer3.stage演奏ドラム画面.t停止(); OpenTaiko.stage演奏ドラム画面.t停止();
if (previewSound != null) { if (previewSound != null) {
this.previewSound.tStopSound(); this.previewSound.tStopSound();
this.previewSound.Dispose(); this.previewSound.Dispose();
@ -1558,16 +1558,16 @@ for (int i = 0; i < 3; i++) {
//} //}
} else if (DTXVmode.Command == CDTXVmode.ECommand.Play) { } else if (DTXVmode.Command == CDTXVmode.ECommand.Play) {
if (DTXVmode.NeedReload) { if (DTXVmode.NeedReload) {
TJAPlayer3.stage演奏ドラム画面.t再読込(); OpenTaiko.stage演奏ドラム画面.t再読込();
TJAPlayer3.ConfigIni.bTimeStretch = DTXVmode.TimeStretch; OpenTaiko.ConfigIni.bTimeStretch = DTXVmode.TimeStretch;
SoundManager.bIsTimeStretch = DTXVmode.TimeStretch; SoundManager.bIsTimeStretch = DTXVmode.TimeStretch;
if (TJAPlayer3.ConfigIni.bEnableVSync != DTXVmode.VSyncWait) { if (OpenTaiko.ConfigIni.bEnableVSync != DTXVmode.VSyncWait) {
TJAPlayer3.ConfigIni.bEnableVSync = DTXVmode.VSyncWait; OpenTaiko.ConfigIni.bEnableVSync = DTXVmode.VSyncWait;
TJAPlayer3.app.b次のタイミングで垂直帰線同期切り替えを行う = true; OpenTaiko.app.b次のタイミングで垂直帰線同期切り替えを行う = true;
} }
} else { } else {
TJAPlayer3.stage演奏ドラム画面.t演奏位置の変更(TJAPlayer3.DTXVmode.nStartBar, 0); OpenTaiko.stage演奏ドラム画面.t演奏位置の変更(OpenTaiko.DTXVmode.nStartBar, 0);
} }
} }
} }
@ -1613,7 +1613,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.On演奏キャンセル(scoreIni); pg.plugin.On演奏キャンセル(scoreIni);
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -1651,22 +1651,22 @@ for (int i = 0; i < 3; i++) {
Trace.TraceInformation("----------------------"); Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Return to song select menu"); Trace.TraceInformation("■ Return to song select menu");
TJAPlayer3.latestSongSelect.Activate(); OpenTaiko.latestSongSelect.Activate();
if (!ConfigIni.PreAssetsLoading) { if (!ConfigIni.PreAssetsLoading) {
TJAPlayer3.latestSongSelect.CreateManagedResource(); OpenTaiko.latestSongSelect.CreateManagedResource();
TJAPlayer3.latestSongSelect.CreateUnmanagedResource(); OpenTaiko.latestSongSelect.CreateUnmanagedResource();
} }
r直前のステージ = r現在のステージ; r直前のステージ = r現在のステージ;
// Seek latest registered song select screen // Seek latest registered song select screen
r現在のステージ = TJAPlayer3.latestSongSelect; r現在のステージ = OpenTaiko.latestSongSelect;
#region [ Onステージ変更() ] #region [ Onステージ変更() ]
//--------------------- //---------------------
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -1686,7 +1686,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.On演奏失敗(scoreIni); pg.plugin.On演奏失敗(scoreIni);
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -1716,7 +1716,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -1740,7 +1740,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.On演奏クリア(scoreIni); pg.plugin.On演奏クリア(scoreIni);
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -1766,7 +1766,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
//--------------------- //---------------------
#endregion #endregion
@ -1819,22 +1819,22 @@ for (int i = 0; i < 3; i++) {
Trace.TraceInformation("----------------------"); Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Return to song select menu"); Trace.TraceInformation("■ Return to song select menu");
TJAPlayer3.latestSongSelect.Activate(); OpenTaiko.latestSongSelect.Activate();
if (!ConfigIni.PreAssetsLoading) { if (!ConfigIni.PreAssetsLoading) {
TJAPlayer3.latestSongSelect.CreateManagedResource(); OpenTaiko.latestSongSelect.CreateManagedResource();
TJAPlayer3.latestSongSelect.CreateUnmanagedResource(); OpenTaiko.latestSongSelect.CreateUnmanagedResource();
} }
r直前のステージ = r現在のステージ; r直前のステージ = r現在のステージ;
// Seek latest registered song select screen // Seek latest registered song select screen
r現在のステージ = TJAPlayer3.latestSongSelect; r現在のステージ = OpenTaiko.latestSongSelect;
stageSongSelect.NowSong++; stageSongSelect.NowSong++;
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1871,7 +1871,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1901,7 +1901,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1974,7 +1974,7 @@ for (int i = 0; i < 3; i++) {
foreach (STPlugin pg in this.PluginList) { foreach (STPlugin pg in this.PluginList) {
Directory.SetCurrentDirectory(pg.pluginDirectory); Directory.SetCurrentDirectory(pg.pluginDirectory);
pg.plugin.Onステージ変更(); pg.plugin.Onステージ変更();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
this.tガベージコレクションを実行する(); this.tガベージコレクションを実行する();
@ -1989,8 +1989,8 @@ for (int i = 0; i < 3; i++) {
actScanningLoudness?.Draw(); actScanningLoudness?.Draw();
if (!ConfigIni.bTokkunMode) { if (!ConfigIni.bTokkunMode) {
float screen_ratiox = TJAPlayer3.Skin.Resolution[0] / 1280.0f; float screen_ratiox = OpenTaiko.Skin.Resolution[0] / 1280.0f;
float screen_ratioy = TJAPlayer3.Skin.Resolution[1] / 720.0f; float screen_ratioy = OpenTaiko.Skin.Resolution[1] / 720.0f;
/* /*
var mat = Matrix.LookAtLH(new Vector3(-fCamXOffset * screen_ratiox, fCamYOffset * screen_ratioy, (float)(-SampleFramework.GameWindowSize.Height / (fCamZoomFactor * 2) * Math.Sqrt(3.0))), new Vector3(-fCamXOffset * screen_ratiox, fCamYOffset * screen_ratioy, 0f), new Vector3(0f, 1f, 0f)); var mat = Matrix.LookAtLH(new Vector3(-fCamXOffset * screen_ratiox, fCamYOffset * screen_ratioy, (float)(-SampleFramework.GameWindowSize.Height / (fCamZoomFactor * 2) * Math.Sqrt(3.0))), new Vector3(-fCamXOffset * screen_ratiox, fCamYOffset * screen_ratioy, 0f), new Vector3(0f, 1f, 0f));
mat *= Matrix.RotationYawPitchRoll(0, 0, C変換.DegreeToRadian(fCamRotation)); mat *= Matrix.RotationYawPitchRoll(0, 0, C変換.DegreeToRadian(fCamRotation));
@ -2006,9 +2006,9 @@ for (int i = 0; i < 3; i++) {
Camera *= Matrix4X4.CreateTranslation(fCamXOffset / 1280, fCamYOffset / 720, 1f); Camera *= Matrix4X4.CreateTranslation(fCamXOffset / 1280, fCamYOffset / 720, 1f);
if (TJAPlayer3.DTX != null) { if (OpenTaiko.DTX != null) {
//object rendering //object rendering
foreach (KeyValuePair<string, CSongObject> pair in TJAPlayer3.DTX.listObj) { foreach (KeyValuePair<string, CSongObject> pair in OpenTaiko.DTX.listObj) {
pair.Value.tDraw(); pair.Value.tDraw();
} }
} }
@ -2016,7 +2016,7 @@ for (int i = 0; i < 3; i++) {
Camera = Matrix4X4<float>.Identity; Camera = Matrix4X4<float>.Identity;
} }
if (r現在のステージ != null && r現在のステージ.eStageID != CStage.EStage.StartUp && TJAPlayer3.Tx.Network_Connection != null) { if (r現在のステージ != null && r現在のステージ.eStageID != CStage.EStage.StartUp && OpenTaiko.Tx.Network_Connection != null) {
if (Math.Abs(SoundManager.PlayTimer.SystemTimeMs - this.ms) > 10000) { if (Math.Abs(SoundManager.PlayTimer.SystemTimeMs - this.ms) > 10000) {
this.ms = SoundManager.PlayTimer.SystemTimeMs; this.ms = SoundManager.PlayTimer.SystemTimeMs;
Task.Factory.StartNew(() => { Task.Factory.StartNew(() => {
@ -2025,24 +2025,24 @@ for (int i = 0; i < 3; i++) {
this.bネットワークに接続中 = reply.Status == IPStatus.Success; this.bネットワークに接続中 = reply.Status == IPStatus.Success;
}); });
} }
TJAPlayer3.Tx.Network_Connection.t2D描画(GameWindowSize.Width - (TJAPlayer3.Tx.Network_Connection.szTextureSize.Width / 2), GameWindowSize.Height - TJAPlayer3.Tx.Network_Connection.szTextureSize.Height, new Rectangle((TJAPlayer3.Tx.Network_Connection.szTextureSize.Width / 2) * (this.bネットワークに接続中 ? 0 : 1), 0, TJAPlayer3.Tx.Network_Connection.szTextureSize.Width / 2, TJAPlayer3.Tx.Network_Connection.szTextureSize.Height)); OpenTaiko.Tx.Network_Connection.t2D描画(GameWindowSize.Width - (OpenTaiko.Tx.Network_Connection.szTextureSize.Width / 2), GameWindowSize.Height - OpenTaiko.Tx.Network_Connection.szTextureSize.Height, new Rectangle((OpenTaiko.Tx.Network_Connection.szTextureSize.Width / 2) * (this.bネットワークに接続中 ? 0 : 1), 0, OpenTaiko.Tx.Network_Connection.szTextureSize.Width / 2, OpenTaiko.Tx.Network_Connection.szTextureSize.Height));
} }
// オーバレイを描画する(テクスチャの生成されていない起動ステージは例外 // オーバレイを描画する(テクスチャの生成されていない起動ステージは例外
// Display log cards // Display log cards
VisualLogManager.Display(); VisualLogManager.Display();
if (r現在のステージ != null && r現在のステージ.eStageID != CStage.EStage.StartUp && TJAPlayer3.Tx.Overlay != null) { if (r現在のステージ != null && r現在のステージ.eStageID != CStage.EStage.StartUp && OpenTaiko.Tx.Overlay != null) {
TJAPlayer3.Tx.Overlay.t2D描画(0, 0); OpenTaiko.Tx.Overlay.t2D描画(0, 0);
} }
} }
//foreach(var capture in ConfigIni.KeyAssign.System.Capture) //foreach(var capture in ConfigIni.KeyAssign.System.Capture)
//{ //{
//if (TJAPlayer3.Input管理.Keyboard.KeyPressed(capture.コード) && capture.コード != 0) //if (TJAPlayer3.Input管理.Keyboard.KeyPressed(capture.コード) && capture.コード != 0)
if (TJAPlayer3.ConfigIni.KeyAssign.KeyIsPressed(TJAPlayer3.ConfigIni.KeyAssign.System.Capture)) { if (OpenTaiko.ConfigIni.KeyAssign.KeyIsPressed(OpenTaiko.ConfigIni.KeyAssign.System.Capture)) {
#if DEBUG #if DEBUG
if (TJAPlayer3.InputManager.Keyboard.KeyPressing((int)SlimDXKeys.Key.LeftControl)) { if (OpenTaiko.InputManager.Keyboard.KeyPressing((int)SlimDXKeys.Key.LeftControl)) {
if (r現在のステージ.eStageID != CStage.EStage.Game) { if (r現在のステージ.eStageID != CStage.EStage.Game) {
RefreshSkin(); RefreshSkin();
r現在のステージ.DeActivate(); r現在のステージ.DeActivate();
@ -2059,7 +2059,7 @@ for (int i = 0; i < 3; i++) {
} else { } else {
// Debug.WriteLine( "capture: " + string.Format( "{0:2x}", (int) e.KeyCode ) + " " + (int) e.KeyCode ); // Debug.WriteLine( "capture: " + string.Format( "{0:2x}", (int) e.KeyCode ) + " " + (int) e.KeyCode );
string strFullPath = string strFullPath =
Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "Capture_img"); Path.Combine(OpenTaiko.strEXEのあるフォルダ, "Capture_img");
strFullPath = Path.Combine(strFullPath, DateTime.Now.ToString("yyyyMMddHHmmss") + ".png"); strFullPath = Path.Combine(strFullPath, DateTime.Now.ToString("yyyyMMddHHmmss") + ".png");
SaveResultScreen(strFullPath); SaveResultScreen(strFullPath);
} }
@ -2130,10 +2130,10 @@ for (int i = 0; i < 3; i++) {
} }
} }
public static void tテクスチャの解放(ref CTexture tx) { public static void tテクスチャの解放(ref CTexture tx) {
TJAPlayer3.tDisposeSafely(ref tx); OpenTaiko.tDisposeSafely(ref tx);
} }
public static void tテクスチャの解放(ref CTextureAf tx) { public static void tテクスチャの解放(ref CTextureAf tx) {
TJAPlayer3.tDisposeSafely(ref tx); OpenTaiko.tDisposeSafely(ref tx);
} }
public static CTexture tテクスチャの生成(SKBitmap bitmap) { public static CTexture tテクスチャの生成(SKBitmap bitmap) {
return tテクスチャの生成(bitmap, false); return tテクスチャの生成(bitmap, false);
@ -2323,7 +2323,7 @@ for (int i = 0; i < 3; i++) {
Trace.AutoFlush = true; Trace.AutoFlush = true;
if (ConfigIni.bOutputLogs) { if (ConfigIni.bOutputLogs) {
try { try {
Trace.Listeners.Add(new CTraceLogListener(new StreamWriter(System.IO.Path.Combine(strEXEのあるフォルダ, "OpenTaiko.log"), false, Encoding.GetEncoding(TJAPlayer3.sEncType)))); Trace.Listeners.Add(new CTraceLogListener(new StreamWriter(System.IO.Path.Combine(strEXEのあるフォルダ, "OpenTaiko.log"), false, Encoding.GetEncoding(OpenTaiko.sEncType))));
} catch (System.UnauthorizedAccessException) // #24481 2011.2.20 yyagi } catch (System.UnauthorizedAccessException) // #24481 2011.2.20 yyagi
{ {
int c = (CultureInfo.CurrentUICulture.TwoLetterISOLanguageName == "ja") ? 0 : 1; int c = (CultureInfo.CurrentUICulture.TwoLetterISOLanguageName == "ja") ? 0 : 1;
@ -2372,10 +2372,10 @@ for (int i = 0; i < 3; i++) {
try try
#endif #endif
{ {
Skin = new CSkin(TJAPlayer3.ConfigIni.strSystemSkinSubfolderFullName, false); Skin = new CSkin(OpenTaiko.ConfigIni.strSystemSkinSubfolderFullName, false);
TJAPlayer3.ConfigIni.strSystemSkinSubfolderFullName = TJAPlayer3.Skin.GetCurrentSkinSubfolderFullName(true); // 旧指定のSkinフォルダが消滅していた場合に備える OpenTaiko.ConfigIni.strSystemSkinSubfolderFullName = OpenTaiko.Skin.GetCurrentSkinSubfolderFullName(true); // 旧指定のSkinフォルダが消滅していた場合に備える
ChangeResolution(TJAPlayer3.Skin.Resolution[0], TJAPlayer3.Skin.Resolution[1]); ChangeResolution(OpenTaiko.Skin.Resolution[0], OpenTaiko.Skin.Resolution[1]);
Trace.TraceInformation("Skin successfully initialized."); Trace.TraceInformation("Skin successfully initialized.");
} }
@ -2514,7 +2514,7 @@ for (int i = 0; i < 3; i++) {
Trace.Indent(); Trace.Indent();
try { try {
ESoundDeviceType soundDeviceType; ESoundDeviceType soundDeviceType;
switch (TJAPlayer3.ConfigIni.nSoundDeviceType) { switch (OpenTaiko.ConfigIni.nSoundDeviceType) {
case 0: case 0:
soundDeviceType = ESoundDeviceType.Bass; soundDeviceType = ESoundDeviceType.Bass;
break; break;
@ -2533,12 +2533,12 @@ for (int i = 0; i < 3; i++) {
} }
SoundManager = new SoundManager(Window_, SoundManager = new SoundManager(Window_,
soundDeviceType, soundDeviceType,
TJAPlayer3.ConfigIni.nBassBufferSizeMs, OpenTaiko.ConfigIni.nBassBufferSizeMs,
TJAPlayer3.ConfigIni.nWASAPIBufferSizeMs, OpenTaiko.ConfigIni.nWASAPIBufferSizeMs,
// CDTXMania.ConfigIni.nASIOBufferSizeMs, // CDTXMania.ConfigIni.nASIOBufferSizeMs,
0, 0,
TJAPlayer3.ConfigIni.nASIODevice, OpenTaiko.ConfigIni.nASIODevice,
TJAPlayer3.ConfigIni.bUseOSTimer OpenTaiko.ConfigIni.bUseOSTimer
); );
//Sound管理 = FDK.CSound管理.Instance; //Sound管理 = FDK.CSound管理.Instance;
//Sound管理.t初期化( soundDeviceType, 0, 0, CDTXMania.ConfigIni.nASIODevice, base.Window.Handle ); //Sound管理.t初期化( soundDeviceType, 0, 0, CDTXMania.ConfigIni.nASIODevice, base.Window.Handle );
@ -2568,8 +2568,8 @@ for (int i = 0; i < 3; i++) {
} }
ShowWindowTitleWithSoundType(); ShowWindowTitleWithSoundType();
FDK.SoundManager.bIsTimeStretch = TJAPlayer3.ConfigIni.bTimeStretch; FDK.SoundManager.bIsTimeStretch = OpenTaiko.ConfigIni.bTimeStretch;
SoundManager.nMasterVolume = TJAPlayer3.ConfigIni.nMasterVolume; SoundManager.nMasterVolume = OpenTaiko.ConfigIni.nMasterVolume;
//FDK.CSound管理.bIsMP3DecodeByWindowsCodec = CDTXMania.ConfigIni.bNoMP3Streaming; //FDK.CSound管理.bIsMP3DecodeByWindowsCodec = CDTXMania.ConfigIni.bNoMP3Streaming;
Trace.TraceInformation("サウンドデバイスの初期化を完了しました。"); Trace.TraceInformation("サウンドデバイスの初期化を完了しました。");
} catch (Exception e) { } catch (Exception e) {
@ -2669,7 +2669,7 @@ for (int i = 0; i < 3; i++) {
st.plugin.On初期化(this.PluginHost); st.plugin.On初期化(this.PluginHost);
st.plugin.OnManagedリソースの作成(); st.plugin.OnManagedリソースの作成();
st.plugin.OnUnmanagedリソースの作成(); st.plugin.OnUnmanagedリソースの作成();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
Trace.TraceInformation("All plugins have been initialized."); Trace.TraceInformation("All plugins have been initialized.");
} catch { } catch {
@ -2690,10 +2690,10 @@ for (int i = 0; i < 3; i++) {
DiscordClient?.SetPresence(new RichPresence() { DiscordClient?.SetPresence(new RichPresence() {
Details = "", Details = "",
State = "Startup", State = "Startup",
Timestamps = new Timestamps(TJAPlayer3.StartupTime), Timestamps = new Timestamps(OpenTaiko.StartupTime),
Assets = new Assets() { Assets = new Assets() {
LargeImageKey = TJAPlayer3.LargeImageKey, LargeImageKey = OpenTaiko.LargeImageKey,
LargeImageText = TJAPlayer3.LargeImageText, LargeImageText = OpenTaiko.LargeImageText,
} }
}); });
#endregion #endregion
@ -2707,7 +2707,7 @@ for (int i = 0; i < 3; i++) {
Trace.TraceInformation("----------------------"); Trace.TraceInformation("----------------------");
Trace.TraceInformation("■ Startup"); Trace.TraceInformation("■ Startup");
if (TJAPlayer3.bコンパクトモード) { if (OpenTaiko.bコンパクトモード) {
r現在のステージ = stage曲読み込み; r現在のステージ = stage曲読み込み;
} else { } else {
r現在のステージ = stage起動; r現在のステージ = stage起動;
@ -2756,7 +2756,7 @@ for (int i = 0; i < 3; i++) {
#endregion #endregion
#region [ ] #region [ ]
//--------------------- //---------------------
if (TJAPlayer3.r現在のステージ != null && TJAPlayer3.r現在のステージ.IsActivated) // #25398 2011.06.07 MODIFY FROM if (OpenTaiko.r現在のステージ != null && OpenTaiko.r現在のステージ.IsActivated) // #25398 2011.06.07 MODIFY FROM
{ {
Trace.TraceInformation("Exiting stage..."); Trace.TraceInformation("Exiting stage...");
Trace.Indent(); Trace.Indent();
@ -2784,7 +2784,7 @@ for (int i = 0; i < 3; i++) {
st.plugin.OnUnmanagedリソースの解放(); st.plugin.OnUnmanagedリソースの解放();
st.plugin.OnManagedリソースの解放(); st.plugin.OnManagedリソースの解放();
st.plugin.On終了(); st.plugin.On終了();
Directory.SetCurrentDirectory(TJAPlayer3.strEXEのあるフォルダ); Directory.SetCurrentDirectory(OpenTaiko.strEXEのあるフォルダ);
} }
PluginHost = null; PluginHost = null;
Trace.TraceInformation("All plugins have been terminated."); Trace.TraceInformation("All plugins have been terminated.");
@ -2806,7 +2806,7 @@ for (int i = 0; i < 3; i++) {
#pragma warning disable SYSLIB0011 #pragma warning disable SYSLIB0011
if (EnumSongs.IsSongListEnumCompletelyDone) { if (EnumSongs.IsSongListEnumCompletelyDone) {
BinaryFormatter songlistdb_ = new BinaryFormatter(); BinaryFormatter songlistdb_ = new BinaryFormatter();
using Stream songlistdb = File.OpenWrite($"{TJAPlayer3.strEXEのあるフォルダ}songlist.db"); using Stream songlistdb = File.OpenWrite($"{OpenTaiko.strEXEのあるフォルダ}songlist.db");
songlistdb_.Serialize(songlistdb, Songs管理.listSongsDB); songlistdb_.Serialize(songlistdb, Songs管理.listSongsDB);
} }
#pragma warning restore SYSLIB0011 #pragma warning restore SYSLIB0011
@ -3041,27 +3041,27 @@ for (int i = 0; i < 3; i++) {
} }
public void RefreshSkin() { public void RefreshSkin() {
Trace.TraceInformation("Skin Change:" + TJAPlayer3.Skin.GetCurrentSkinSubfolderFullName(false)); Trace.TraceInformation("Skin Change:" + OpenTaiko.Skin.GetCurrentSkinSubfolderFullName(false));
TJAPlayer3.actTextConsole.DeActivate(); OpenTaiko.actTextConsole.DeActivate();
actTextConsole.ReleaseManagedResource(); actTextConsole.ReleaseManagedResource();
actTextConsole.ReleaseUnmanagedResource(); actTextConsole.ReleaseUnmanagedResource();
TJAPlayer3.Skin.Dispose(); OpenTaiko.Skin.Dispose();
TJAPlayer3.Skin = null; OpenTaiko.Skin = null;
TJAPlayer3.Skin = new CSkin(TJAPlayer3.ConfigIni.strSystemSkinSubfolderFullName, false); OpenTaiko.Skin = new CSkin(OpenTaiko.ConfigIni.strSystemSkinSubfolderFullName, false);
TJAPlayer3.Tx.DisposeTexture(); OpenTaiko.Tx.DisposeTexture();
ChangeResolution(TJAPlayer3.Skin.Resolution[0], TJAPlayer3.Skin.Resolution[1]); ChangeResolution(OpenTaiko.Skin.Resolution[0], OpenTaiko.Skin.Resolution[1]);
TJAPlayer3.Tx.LoadTexture(); OpenTaiko.Tx.LoadTexture();
TJAPlayer3.actTextConsole.Activate(); OpenTaiko.actTextConsole.Activate();
actTextConsole.CreateManagedResource(); actTextConsole.CreateManagedResource();
actTextConsole.CreateUnmanagedResource(); actTextConsole.CreateUnmanagedResource();
TJAPlayer3.NamePlate.RefleshSkin(); OpenTaiko.NamePlate.RefleshSkin();
TJAPlayer3.stage結果.RefreshSkin(); OpenTaiko.stage結果.RefreshSkin();
CActSelectPopupMenu.RefleshSkin(); CActSelectPopupMenu.RefleshSkin();
CActSelect段位リスト.RefleshSkin(); CActSelect段位リスト.RefleshSkin();
} }

View File

@ -3,7 +3,7 @@ using System.Globalization;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using System.Text; using System.Text;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class Program { internal class Program {
#region [ DLL存在チェック ] #region [ DLL存在チェック ]
//----------------------------- //-----------------------------
@ -104,7 +104,7 @@ namespace TJAPlayer3 {
fileinfo.CopyTo(AppContext.BaseDirectory + fileinfo.Name, true); fileinfo.CopyTo(AppContext.BaseDirectory + fileinfo.Name, true);
} }
using (var mania = new TJAPlayer3()) using (var mania = new OpenTaiko())
mania.Run(); mania.Run();
Trace.WriteLine(""); Trace.WriteLine("");

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class RecentlyPlayedSongs { internal class RecentlyPlayedSongs {
public void tRecentlyPlayedSongs() { public void tRecentlyPlayedSongs() {
if (!File.Exists("RecentlyPlayedSongs.json")) if (!File.Exists("RecentlyPlayedSongs.json"))
@ -10,11 +10,11 @@
#region [Auxiliary methods] #region [Auxiliary methods]
public void tAddChart(string chartID) { public void tAddChart(string chartID) {
if (!data.recentlyplayedsongs[TJAPlayer3.SaveFile].Contains(chartID)) if (!data.recentlyplayedsongs[OpenTaiko.SaveFile].Contains(chartID))
data.recentlyplayedsongs[TJAPlayer3.SaveFile].Enqueue(chartID); data.recentlyplayedsongs[OpenTaiko.SaveFile].Enqueue(chartID);
while (data.recentlyplayedsongs[TJAPlayer3.SaveFile].Count > TJAPlayer3.ConfigIni.nRecentlyPlayedMax) while (data.recentlyplayedsongs[OpenTaiko.SaveFile].Count > OpenTaiko.ConfigIni.nRecentlyPlayedMax)
data.recentlyplayedsongs[TJAPlayer3.SaveFile].Dequeue(); data.recentlyplayedsongs[OpenTaiko.SaveFile].Dequeue();
tSaveFile(); tSaveFile();
} }

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class SaveFile { internal class SaveFile {
public void tSaveFile(string filename) { public void tSaveFile(string filename) {

View File

@ -1,7 +1,7 @@
using FDK; using FDK;
using Color = System.Drawing.Color; using Color = System.Drawing.Color;
namespace TJAPlayer3 { namespace OpenTaiko {
public sealed class TitleTextureKey { public sealed class TitleTextureKey {
@ -41,8 +41,8 @@ namespace TJAPlayer3 {
private static CTexture GenerateTitleTextureTate(TitleTextureKey titleTextureKey, bool keepCenter = false) { private static CTexture GenerateTitleTextureTate(TitleTextureKey titleTextureKey, bool keepCenter = false) {
using (var bmp = titleTextureKey.cPrivateFastFont.DrawText_V( using (var bmp = titleTextureKey.cPrivateFastFont.DrawText_V(
titleTextureKey.str文字, titleTextureKey.forecolor, titleTextureKey.backcolor, titleTextureKey.secondEdge, 30, keepCenter)) { titleTextureKey.str, titleTextureKey.forecolor, titleTextureKey.backcolor, titleTextureKey.secondEdge, 30, keepCenter)) {
CTexture tx文字テクスチャ = TJAPlayer3.tテクスチャの生成(bmp, false); CTexture tx文字テクスチャ = OpenTaiko.tテクスチャの生成(bmp, false);
if (tx文字テクスチャ.szTextureSize.Height > titleTextureKey.maxWidth) { if (tx文字テクスチャ.szTextureSize.Height > titleTextureKey.maxWidth) {
//tx文字テクスチャ.vc拡大縮小倍率.X = (float)(((double)titleTextureKey.maxWidth) / tx文字テクスチャ.szテクスチャサイズ.Height); //tx文字テクスチャ.vc拡大縮小倍率.X = (float)(((double)titleTextureKey.maxWidth) / tx文字テクスチャ.szテクスチャサイズ.Height);
tx文字テクスチャ.vcScaleRatio.X = 1.0f; tx文字テクスチャ.vcScaleRatio.X = 1.0f;
@ -55,8 +55,8 @@ namespace TJAPlayer3 {
private static CTexture GenerateTitleTexture(TitleTextureKey titleTextureKey, bool keepCenter = false) { private static CTexture GenerateTitleTexture(TitleTextureKey titleTextureKey, bool keepCenter = false) {
using (var bmp = titleTextureKey.cPrivateFastFont.DrawText( using (var bmp = titleTextureKey.cPrivateFastFont.DrawText(
titleTextureKey.str文字, titleTextureKey.forecolor, titleTextureKey.backcolor, titleTextureKey.secondEdge, 30, keepCenter)) { titleTextureKey.str, titleTextureKey.forecolor, titleTextureKey.backcolor, titleTextureKey.secondEdge, 30, keepCenter)) {
CTexture tx文字テクスチャ = TJAPlayer3.tテクスチャの生成(bmp, false); CTexture tx文字テクスチャ = OpenTaiko.tテクスチャの生成(bmp, false);
if (tx文字テクスチャ.szTextureSize.Width > titleTextureKey.maxWidth) { if (tx文字テクスチャ.szTextureSize.Width > titleTextureKey.maxWidth) {
tx文字テクスチャ.vcScaleRatio.X = (float)(((double)titleTextureKey.maxWidth) / tx文字テクスチャ.szTextureSize.Width); tx文字テクスチャ.vcScaleRatio.X = (float)(((double)titleTextureKey.maxWidth) / tx文字テクスチャ.szTextureSize.Width);
tx文字テクスチャ.vcScaleRatio.Y = 1.0f;// (float) (((double) titleTextureKey.maxWidth) / tx文字テクスチャ.szテクスチャサイズ.Width); tx文字テクスチャ.vcScaleRatio.Y = 1.0f;// (float) (((double) titleTextureKey.maxWidth) / tx文字テクスチャ.szテクスチャサイズ.Width);
@ -77,7 +77,7 @@ namespace TJAPlayer3 {
} }
// Non-static // Non-static
public readonly string str文字; public readonly string str;
public readonly CCachedFontRenderer cPrivateFastFont; public readonly CCachedFontRenderer cPrivateFastFont;
public readonly Color forecolor; public readonly Color forecolor;
public readonly Color backcolor; public readonly Color backcolor;
@ -85,7 +85,7 @@ namespace TJAPlayer3 {
public readonly Color? secondEdge; public readonly Color? secondEdge;
public TitleTextureKey(string str文字, CCachedFontRenderer cPrivateFastFont, Color forecolor, Color backcolor, int maxHeight, Color? secondEdge = null) { public TitleTextureKey(string str文字, CCachedFontRenderer cPrivateFastFont, Color forecolor, Color backcolor, int maxHeight, Color? secondEdge = null) {
this.str文字 = str文字; this.str = str文字;
this.cPrivateFastFont = cPrivateFastFont; this.cPrivateFastFont = cPrivateFastFont;
this.forecolor = forecolor; this.forecolor = forecolor;
this.backcolor = backcolor; this.backcolor = backcolor;
@ -94,7 +94,7 @@ namespace TJAPlayer3 {
} }
private bool Equals(TitleTextureKey other) { private bool Equals(TitleTextureKey other) {
return string.Equals(str文字, other.str文字) && return string.Equals(str, other.str) &&
cPrivateFastFont.Equals(other.cPrivateFastFont) && cPrivateFastFont.Equals(other.cPrivateFastFont) &&
forecolor.Equals(other.forecolor) && forecolor.Equals(other.forecolor) &&
backcolor.Equals(other.backcolor) && backcolor.Equals(other.backcolor) &&
@ -110,7 +110,7 @@ namespace TJAPlayer3 {
public override int GetHashCode() { public override int GetHashCode() {
unchecked { unchecked {
var hashCode = str文字.GetHashCode(); var hashCode = str.GetHashCode();
hashCode = (hashCode * 397) ^ cPrivateFastFont.GetHashCode(); hashCode = (hashCode * 397) ^ cPrivateFastFont.GetHashCode();
hashCode = (hashCode * 397) ^ forecolor.GetHashCode(); hashCode = (hashCode * 397) ^ forecolor.GetHashCode();
hashCode = (hashCode * 397) ^ backcolor.GetHashCode(); hashCode = (hashCode * 397) ^ backcolor.GetHashCode();

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CGimmickValue { internal class CGimmickValue {
} }
} }

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
[Serializable] [Serializable]
internal class CLocalizationData { internal class CLocalizationData {
[JsonProperty("strings")] [JsonProperty("strings")]

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class CSongReplay { class CSongReplay {
/* Game version used for the replay /* Game version used for the replay
* 521 = 0.5.2.1 * 521 = 0.5.2.1
@ -79,16 +79,16 @@
public void tDanInputSongResults(int songNo) { public void tDanInputSongResults(int songNo) {
if (songNo >= DanSongCount) return; if (songNo >= DanSongCount) return;
if (songNo < 0) return; if (songNo < 0) return;
IndividualGoodCount[songNo] = TJAPlayer3.stage演奏ドラム画面.n良[songNo]; IndividualGoodCount[songNo] = OpenTaiko.stage演奏ドラム画面.n良[songNo];
IndividualOkCount[songNo] = TJAPlayer3.stage演奏ドラム画面.n可[songNo]; IndividualOkCount[songNo] = OpenTaiko.stage演奏ドラム画面.n可[songNo];
IndividualBadCount[songNo] = TJAPlayer3.stage演奏ドラム画面.n不可[songNo]; IndividualBadCount[songNo] = OpenTaiko.stage演奏ドラム画面.n不可[songNo];
IndividualRollCount[songNo] = TJAPlayer3.stage演奏ドラム画面.n連打[songNo]; IndividualRollCount[songNo] = OpenTaiko.stage演奏ドラム画面.n連打[songNo];
IndividualMaxCombo[songNo] = TJAPlayer3.stage演奏ドラム画面.nHighestCombo[songNo]; IndividualMaxCombo[songNo] = OpenTaiko.stage演奏ドラム画面.nHighestCombo[songNo];
IndividualBoomCount[songNo] = TJAPlayer3.stage演奏ドラム画面.nMine[songNo]; IndividualBoomCount[songNo] = OpenTaiko.stage演奏ドラム画面.nMine[songNo];
IndividualADLibCount[songNo] = TJAPlayer3.stage演奏ドラム画面.nADLIB[songNo]; IndividualADLibCount[songNo] = OpenTaiko.stage演奏ドラム画面.nADLIB[songNo];
danAccumulatedScore = 0; danAccumulatedScore = 0;
for (int acc = 0; acc < songNo; acc++) danAccumulatedScore += IndividualScore[acc]; for (int acc = 0; acc < songNo; acc++) danAccumulatedScore += IndividualScore[acc];
IndividualScore[songNo] = (int)TJAPlayer3.stage演奏ドラム画面.actScore.GetScore(0) - danAccumulatedScore; IndividualScore[songNo] = (int)OpenTaiko.stage演奏ドラム画面.actScore.GetScore(0) - danAccumulatedScore;
} }
#endregion #endregion
@ -233,10 +233,10 @@
public void tResultsRegisterReplayInformations(int Coins, int Clear, int SRank) { public void tResultsRegisterReplayInformations(int Coins, int Clear, int SRank) {
// Actual player (Used for saved informations) // Actual player (Used for saved informations)
int actualPlayer = TJAPlayer3.GetActualPlayer(storedPlayer); int actualPlayer = OpenTaiko.GetActualPlayer(storedPlayer);
// Game mode // Game mode
switch (TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[0]) { switch (OpenTaiko.stageSongSelect.nChoosenSongDifficulty[0]) {
case (int)Difficulty.Dan: case (int)Difficulty.Dan:
GameMode = 1; GameMode = 1;
break; break;
@ -252,16 +252,16 @@
// Chart Checksum (temporary) // Chart Checksum (temporary)
ChartChecksum = ""; ChartChecksum = "";
// Player Name // Player Name
PlayerName = TJAPlayer3.SaveFileInstances[actualPlayer].data.Name; PlayerName = OpenTaiko.SaveFileInstances[actualPlayer].data.Name;
// Performance informations // Performance informations
GoodCount = TJAPlayer3.stage演奏ドラム画面.CChartScore[storedPlayer].nGreat; GoodCount = OpenTaiko.stage演奏ドラム画面.CChartScore[storedPlayer].nGreat;
OkCount = TJAPlayer3.stage演奏ドラム画面.CChartScore[storedPlayer].nGood; OkCount = OpenTaiko.stage演奏ドラム画面.CChartScore[storedPlayer].nGood;
BadCount = TJAPlayer3.stage演奏ドラム画面.CChartScore[storedPlayer].nMiss; BadCount = OpenTaiko.stage演奏ドラム画面.CChartScore[storedPlayer].nMiss;
RollCount = TJAPlayer3.stage演奏ドラム画面.GetRoll(storedPlayer); RollCount = OpenTaiko.stage演奏ドラム画面.GetRoll(storedPlayer);
MaxCombo = TJAPlayer3.stage演奏ドラム画面.actCombo.n現在のコンボ数.[storedPlayer]; MaxCombo = OpenTaiko.stage演奏ドラム画面.actCombo.n現在のコンボ数.[storedPlayer];
BoomCount = TJAPlayer3.stage演奏ドラム画面.CChartScore[storedPlayer].nMine; BoomCount = OpenTaiko.stage演奏ドラム画面.CChartScore[storedPlayer].nMine;
ADLibCount = TJAPlayer3.stage演奏ドラム画面.CChartScore[storedPlayer].nADLIB; ADLibCount = OpenTaiko.stage演奏ドラム画面.CChartScore[storedPlayer].nADLIB;
Score = TJAPlayer3.stage演奏ドラム画面.CChartScore[storedPlayer].nScore; Score = OpenTaiko.stage演奏ドラム画面.CChartScore[storedPlayer].nScore;
CoinValue = (short)Coins; CoinValue = (short)Coins;
// Tower parameters // Tower parameters
if (GameMode == 2) { if (GameMode == 2) {
@ -273,11 +273,11 @@
// Score rank // Score rank
ScoreRank = (byte)SRank; ScoreRank = (byte)SRank;
// Scroll speed value (as on ConfigIni, 9 is x1) // Scroll speed value (as on ConfigIni, 9 is x1)
ScrollSpeedValue = TJAPlayer3.ConfigIni.nScrollSpeed[actualPlayer]; ScrollSpeedValue = OpenTaiko.ConfigIni.nScrollSpeed[actualPlayer];
// Song speed value (as on ConfigIni, 20 is x1) // Song speed value (as on ConfigIni, 20 is x1)
SongSpeedValue = TJAPlayer3.ConfigIni.nSongSpeed; SongSpeedValue = OpenTaiko.ConfigIni.nSongSpeed;
// Just strictess adjust mod value (as on ConfigIni, between -2 for lenient and 2 for rigorous) // Just strictess adjust mod value (as on ConfigIni, between -2 for lenient and 2 for rigorous)
JudgeStrictnessAdjust = TJAPlayer3.ConfigIni.nTimingZones[actualPlayer]; JudgeStrictnessAdjust = OpenTaiko.ConfigIni.nTimingZones[actualPlayer];
/* Mod Flags /* Mod Flags
* Bit Offsets (Values) : * Bit Offsets (Values) :
@ -292,25 +292,25 @@
* - 8 (256) : Safe (Bad => Ok) * - 8 (256) : Safe (Bad => Ok)
*/ */
ModFlags = (int)EModFlag.None; ModFlags = (int)EModFlag.None;
if (TJAPlayer3.ConfigIni.eRandom[actualPlayer] == ERandomMode.MIRROR) ModFlags |= (int)EModFlag.Mirror; if (OpenTaiko.ConfigIni.eRandom[actualPlayer] == ERandomMode.MIRROR) ModFlags |= (int)EModFlag.Mirror;
if (TJAPlayer3.ConfigIni.eRandom[actualPlayer] == ERandomMode.RANDOM) ModFlags |= (int)EModFlag.Random; if (OpenTaiko.ConfigIni.eRandom[actualPlayer] == ERandomMode.RANDOM) ModFlags |= (int)EModFlag.Random;
if (TJAPlayer3.ConfigIni.eRandom[actualPlayer] == ERandomMode.SUPERRANDOM) ModFlags |= (int)EModFlag.SuperRandom; if (OpenTaiko.ConfigIni.eRandom[actualPlayer] == ERandomMode.SUPERRANDOM) ModFlags |= (int)EModFlag.SuperRandom;
if (TJAPlayer3.ConfigIni.eRandom[actualPlayer] == ERandomMode.MIRRORRANDOM) ModFlags |= ((int)EModFlag.Random | (int)EModFlag.Mirror); if (OpenTaiko.ConfigIni.eRandom[actualPlayer] == ERandomMode.MIRRORRANDOM) ModFlags |= ((int)EModFlag.Random | (int)EModFlag.Mirror);
if (TJAPlayer3.ConfigIni.eSTEALTH[actualPlayer] == EStealthMode.DORON) ModFlags |= (int)EModFlag.Invisible; if (OpenTaiko.ConfigIni.eSTEALTH[actualPlayer] == EStealthMode.DORON) ModFlags |= (int)EModFlag.Invisible;
if (TJAPlayer3.ConfigIni.eSTEALTH[actualPlayer] == EStealthMode.STEALTH) ModFlags |= (int)EModFlag.PerfectMemory; if (OpenTaiko.ConfigIni.eSTEALTH[actualPlayer] == EStealthMode.STEALTH) ModFlags |= (int)EModFlag.PerfectMemory;
if (TJAPlayer3.ConfigIni.nFunMods[actualPlayer] == EFunMods.AVALANCHE) ModFlags |= (int)EModFlag.Avalanche; if (OpenTaiko.ConfigIni.nFunMods[actualPlayer] == EFunMods.AVALANCHE) ModFlags |= (int)EModFlag.Avalanche;
if (TJAPlayer3.ConfigIni.nFunMods[actualPlayer] == EFunMods.MINESWEEPER) ModFlags |= (int)EModFlag.Minesweeper; if (OpenTaiko.ConfigIni.nFunMods[actualPlayer] == EFunMods.MINESWEEPER) ModFlags |= (int)EModFlag.Minesweeper;
if (TJAPlayer3.ConfigIni.bJust[actualPlayer] == 1) ModFlags |= (int)EModFlag.Just; if (OpenTaiko.ConfigIni.bJust[actualPlayer] == 1) ModFlags |= (int)EModFlag.Just;
if (TJAPlayer3.ConfigIni.bJust[actualPlayer] == 2) ModFlags |= (int)EModFlag.Safe; if (OpenTaiko.ConfigIni.bJust[actualPlayer] == 2) ModFlags |= (int)EModFlag.Safe;
/* Gauge type /* Gauge type
* - 0 : Normal * - 0 : Normal
* - 1 : Hard * - 1 : Hard
* - 2 : Extreme * - 2 : Extreme
*/ */
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[actualPlayer].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[actualPlayer].data.Character];
GaugeType = (byte)HGaugeMethods.tGetGaugeTypeEnum(chara.effect.tGetGaugeType()); GaugeType = (byte)HGaugeMethods.tGetGaugeTypeEnum(chara.effect.tGetGaugeType());
// Gauge fill value // Gauge fill value
GaugeFill = (float)TJAPlayer3.stage演奏ドラム画面.actGauge.db現在のゲージ値[storedPlayer]; GaugeFill = (float)OpenTaiko.stage演奏ドラム画面.actGauge.db現在のゲージ値[storedPlayer];
// Generation timestamp (in ticks) // Generation timestamp (in ticks)
Timestamp = DateTime.Now.Ticks; Timestamp = DateTime.Now.Ticks;
// Compressed inputs and size // Compressed inputs and size
@ -318,9 +318,9 @@
CompressedInputs = SevenZip.Compression.LZMA.SevenZipHelper.Compress(barr); CompressedInputs = SevenZip.Compression.LZMA.SevenZipHelper.Compress(barr);
CompressedInputsSize = CompressedInputs.Length; CompressedInputsSize = CompressedInputs.Length;
// Chart metadata // Chart metadata
ChartUniqueID = TJAPlayer3.stageSongSelect.rChoosenSong.uniqueId.data.id; ChartUniqueID = OpenTaiko.stageSongSelect.rChoosenSong.uniqueId.data.id;
ChartDifficulty = (byte)TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[storedPlayer]; ChartDifficulty = (byte)OpenTaiko.stageSongSelect.nChoosenSongDifficulty[storedPlayer];
ChartLevel = (byte)Math.Min(255, TJAPlayer3.stageSongSelect.rChoosenSong.arスコア[ChartDifficulty]..nレベル[ChartDifficulty]); ChartLevel = (byte)Math.Min(255, OpenTaiko.stageSongSelect.rChoosenSong.arスコア[ChartDifficulty]..nレベル[ChartDifficulty]);
// Online score ID used for online leaderboards linking, given by the server (Defaulted to 0 for now) // Online score ID used for online leaderboards linking, given by the server (Defaulted to 0 for now)
OnlineScoreID = 0; OnlineScoreID = 0;
// Replay Checksum (Calculate at the end) // Replay Checksum (Calculate at the end)

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
class CVisualLogManager { class CVisualLogManager {
public enum ELogCardType { public enum ELogCardType {
LogInfo, LogInfo,
@ -12,7 +12,7 @@ namespace TJAPlayer3 {
public LogCard(ELogCardType type, string message) { public LogCard(ELogCardType type, string message) {
lct = type; lct = type;
msg = message; msg = message;
timeSinceCreation = new CCounter(0, 10000, 1, TJAPlayer3.Timer); timeSinceCreation = new CCounter(0, 10000, 1, OpenTaiko.Timer);
} }
public void Display(int screenPosition) { public void Display(int screenPosition) {
@ -23,7 +23,7 @@ namespace TJAPlayer3 {
int x = 0; int x = 0;
int y = 0 + (40 * screenPosition); int y = 0 + (40 * screenPosition);
TJAPlayer3.actTextConsole.tPrint(x, y, CTextConsole.EFontType.Cyan, msg); OpenTaiko.actTextConsole.tPrint(x, y, CTextConsole.EFontType.Cyan, msg);
} }
public bool IsExpired() { public bool IsExpired() {

View File

@ -1,9 +1,9 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
class DBCDN : CSavableT<Dictionary<string, DBCDN.CDNData>> { class DBCDN : CSavableT<Dictionary<string, DBCDN.CDNData>> {
public DBCDN() { public DBCDN() {
_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}CDN.json"; _fn = @$"{OpenTaiko.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}CDN.json";
base.tDBInitSavable(); base.tDBInitSavable();
} }

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
class DBCharacter { class DBCharacter {
public class CharacterEffect { public class CharacterEffect {
public CharacterEffect() { public CharacterEffect() {
@ -12,14 +12,14 @@ namespace TJAPlayer3 {
public float GetCoinMultiplier() { public float GetCoinMultiplier() {
float mult = 1f; float mult = 1f;
if (Gauge == "Hard" && !TJAPlayer3.ConfigIni.bForceNormalGauge) mult *= 1.5f; if (Gauge == "Hard" && !OpenTaiko.ConfigIni.bForceNormalGauge) mult *= 1.5f;
if (Gauge == "Extreme" && !TJAPlayer3.ConfigIni.bForceNormalGauge) mult *= 1.8f; if (Gauge == "Extreme" && !OpenTaiko.ConfigIni.bForceNormalGauge) mult *= 1.8f;
return mult; return mult;
} }
public string tGetGaugeType() { public string tGetGaugeType() {
return TJAPlayer3.ConfigIni.bForceNormalGauge || TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[0] >= 5 ? "Normal" : Gauge; return OpenTaiko.ConfigIni.bForceNormalGauge || OpenTaiko.stageSongSelect.nChoosenSongDifficulty[0] >= 5 ? "Normal" : Gauge;
} }

View File

@ -1,9 +1,9 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
class DBEncyclopediaMenus : CSavableT<DBEncyclopediaMenus.EncyclopediaMenu> { class DBEncyclopediaMenus : CSavableT<DBEncyclopediaMenus.EncyclopediaMenu> {
public DBEncyclopediaMenus() { public DBEncyclopediaMenus() {
_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Encyclopedia{Path.DirectorySeparatorChar}Menus.json"; _fn = @$"{OpenTaiko.strEXEのあるフォルダ}Encyclopedia{Path.DirectorySeparatorChar}Menus.json";
base.tDBInitSavable(); base.tDBInitSavable();
} }

View File

@ -1,14 +1,14 @@
using Microsoft.Data.Sqlite; using Microsoft.Data.Sqlite;
using Newtonsoft.Json; using Newtonsoft.Json;
using static TJAPlayer3.DBNameplateUnlockables; using static OpenTaiko.DBNameplateUnlockables;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class DBNameplateUnlockables : CSavableT<Dictionary<Int64, NameplateUnlockable>> { internal class DBNameplateUnlockables : CSavableT<Dictionary<Int64, NameplateUnlockable>> {
public DBNameplateUnlockables() { public DBNameplateUnlockables() {
//_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}NameplateUnlockables.json"; //_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}NameplateUnlockables.json";
//base.tDBInitSavable(); //base.tDBInitSavable();
_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}NameplateUnlockables.db3"; _fn = @$"{OpenTaiko.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}NameplateUnlockables.db3";
using (var connection = new SqliteConnection(@$"Data Source={_fn}")) { using (var connection = new SqliteConnection(@$"Data Source={_fn}")) {
@ -60,9 +60,9 @@ namespace TJAPlayer3 {
} }
public void tGetUnlockedItems(int _player, ModalQueue mq) { public void tGetUnlockedItems(int _player, ModalQueue mq) {
int player = TJAPlayer3.GetActualPlayer(_player); int player = OpenTaiko.GetActualPlayer(_player);
//var _sf = TJAPlayer3.SaveFileInstances[player].data.NamePlateTitles; //var _sf = TJAPlayer3.SaveFileInstances[player].data.NamePlateTitles;
var _sf = TJAPlayer3.SaveFileInstances[player].data.UnlockedNameplateIds; var _sf = OpenTaiko.SaveFileInstances[player].data.UnlockedNameplateIds;
bool _edited = false; bool _edited = false;
foreach (KeyValuePair<Int64, NameplateUnlockable> item in data) { foreach (KeyValuePair<Int64, NameplateUnlockable> item in data) {
@ -80,17 +80,17 @@ namespace TJAPlayer3 {
Modal.EModalType.Title, Modal.EModalType.Title,
HRarity.tRarityToLangInt(item.Value.rarity), HRarity.tRarityToLangInt(item.Value.rarity),
item, item,
TJAPlayer3.NamePlate.lcNamePlate OpenTaiko.NamePlate.lcNamePlate
), ),
_player); _player);
DBSaves.RegisterUnlockedNameplate(TJAPlayer3.SaveFileInstances[player].data.SaveId, _npvKey); DBSaves.RegisterUnlockedNameplate(OpenTaiko.SaveFileInstances[player].data.SaveId, _npvKey);
} }
} }
} }
if (_edited) if (_edited)
TJAPlayer3.SaveFileInstances[player].tApplyHeyaChanges(); OpenTaiko.SaveFileInstances[player].tApplyHeyaChanges();
} }
} }
} }

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
class DBPuchichara { class DBPuchichara {
public class PuchicharaEffect { public class PuchicharaEffect {
public PuchicharaEffect() { public PuchicharaEffect() {

View File

@ -2,10 +2,10 @@
using Microsoft.Data.Sqlite; using Microsoft.Data.Sqlite;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class DBSaves { internal class DBSaves {
private static string _savesDBFilename = $@"Saves.db3"; private static string _savesDBFilename = $@"Saves.db3";
private static string _savesDBPath = @$"{TJAPlayer3.strEXEのあるフォルダ}{_savesDBFilename}"; private static string _savesDBPath = @$"{OpenTaiko.strEXEのあるフォルダ}{_savesDBFilename}";
private static SqliteConnection SavesDBConnection = new SqliteConnection(@$"Data Source={_savesDBPath}"); private static SqliteConnection SavesDBConnection = new SqliteConnection(@$"Data Source={_savesDBPath}");
private static string _DBNotFoundError = @$"The database {_savesDBFilename} was not found or the connection failed"; private static string _DBNotFoundError = @$"The database {_savesDBFilename} was not found or the connection failed";
@ -21,7 +21,7 @@ namespace TJAPlayer3 {
} }
public static Int64 GetPlayerSaveId(int player) { public static Int64 GetPlayerSaveId(int player) {
return TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.SaveId; return OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.SaveId;
} }
#region [Unlocked Dan Titles] #region [Unlocked Dan Titles]
@ -276,11 +276,11 @@ namespace TJAPlayer3 {
SqliteConnection? connection = GetSavesDBConnection(); SqliteConnection? connection = GetSavesDBConnection();
if (connection == null) return; if (connection == null) return;
SaveFile.Data saveData = TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data; SaveFile.Data saveData = OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data;
BestPlayRecords.CBestPlayRecord currentPlay = new BestPlayRecords.CBestPlayRecord(); BestPlayRecords.CBestPlayRecord currentPlay = new BestPlayRecords.CBestPlayRecord();
var choosenSong = TJAPlayer3.stageSongSelect.rChoosenSong; var choosenSong = OpenTaiko.stageSongSelect.rChoosenSong;
var choosenDifficulty = TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[player]; var choosenDifficulty = OpenTaiko.stageSongSelect.nChoosenSongDifficulty[player];
var chartScore = TJAPlayer3.stage演奏ドラム画面.CChartScore[player]; var chartScore = OpenTaiko.stage演奏ドラム画面.CChartScore[player];
List<int>[] danResults = new List<int>[7] { new List<int>(), new List<int>(), new List<int>(), new List<int>(), new List<int>(), new List<int>(), new List<int>() }; List<int>[] danResults = new List<int>[7] { new List<int>(), new List<int>(), new List<int>(), new List<int>(), new List<int>(), new List<int>(), new List<int>() };
// Do not register the play if Dan/Tower and any mod is ON // Do not register the play if Dan/Tower and any mod is ON
@ -301,10 +301,10 @@ namespace TJAPlayer3 {
currentPlay.HighScore = chartScore.nScore; currentPlay.HighScore = chartScore.nScore;
if (choosenDifficulty == (int)Difficulty.Tower) currentPlay.TowerBestFloor = CFloorManagement.LastRegisteredFloor; if (choosenDifficulty == (int)Difficulty.Tower) currentPlay.TowerBestFloor = CFloorManagement.LastRegisteredFloor;
if (choosenDifficulty == (int)Difficulty.Dan) { if (choosenDifficulty == (int)Difficulty.Dan) {
for (int i = 0; i < TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs.Count; i++) { for (int i = 0; i < OpenTaiko.stageSongSelect.rChoosenSong.DanSongs.Count; i++) {
for (int j = 0; j < TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C.Length; j++) { for (int j = 0; j < OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C.Length; j++) {
if (TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j] != null) { if (OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j] != null) {
int amount = TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j].GetAmount(); int amount = OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j].GetAmount();
danResults[j].Add(amount); danResults[j].Add(amount);
} }
} }
@ -314,7 +314,7 @@ namespace TJAPlayer3 {
currentPlay.HighScoreGoodCount = chartScore.nGreat; currentPlay.HighScoreGoodCount = chartScore.nGreat;
currentPlay.HighScoreOkCount = chartScore.nGood; currentPlay.HighScoreOkCount = chartScore.nGood;
currentPlay.HighScoreBadCount = chartScore.nMiss; currentPlay.HighScoreBadCount = chartScore.nMiss;
currentPlay.HighScoreMaxCombo = TJAPlayer3.stage演奏ドラム画面.actCombo.n現在のコンボ数.[player]; currentPlay.HighScoreMaxCombo = OpenTaiko.stage演奏ドラム画面.actCombo.n現在のコンボ数.[player];
currentPlay.HighScoreRollCount = chartScore.nRoll; currentPlay.HighScoreRollCount = chartScore.nRoll;
currentPlay.HighScoreADLibCount = chartScore.nADLIB; currentPlay.HighScoreADLibCount = chartScore.nADLIB;
currentPlay.HighScoreBoomCount = chartScore.nMine; currentPlay.HighScoreBoomCount = chartScore.nMine;
@ -355,18 +355,18 @@ namespace TJAPlayer3 {
JsonConvert.DeserializeObject<List<int>>((string)reader["DanExam6"]) ?? new List<int> { -1 }, JsonConvert.DeserializeObject<List<int>>((string)reader["DanExam6"]) ?? new List<int> { -1 },
JsonConvert.DeserializeObject<List<int>>((string)reader["DanExam7"]) ?? new List<int> { -1 } JsonConvert.DeserializeObject<List<int>>((string)reader["DanExam7"]) ?? new List<int> { -1 }
}; };
for (int i = 0; i < TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs.Count; i++) { for (int i = 0; i < OpenTaiko.stageSongSelect.rChoosenSong.DanSongs.Count; i++) {
for (int j = 0; j < TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C.Length; j++) { for (int j = 0; j < OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C.Length; j++) {
if (TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j] != null) { if (OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j] != null) {
int amount = danResults[j][i]; int amount = danResults[j][i];
if (i < oldDanResults[j].Count) { if (i < oldDanResults[j].Count) {
int current = oldDanResults[j][i]; int current = oldDanResults[j][i];
if (current == -1) { if (current == -1) {
danResults[j][i] = amount; danResults[j][i] = amount;
} else if (TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j].GetExamRange() == Exam.Range.More) { } else if (OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j].GetExamRange() == Exam.Range.More) {
danResults[j][i] = Math.Max(amount, current); danResults[j][i] = Math.Max(amount, current);
} else if (TJAPlayer3.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j].GetExamRange() == Exam.Range.Less) { } else if (OpenTaiko.stageSongSelect.rChoosenSong.DanSongs[i].Dan_C[j].GetExamRange() == Exam.Range.Less) {
danResults[j][i] = Math.Min(amount, current); danResults[j][i] = Math.Min(amount, current);
} }
} }

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class DBSkinPreset { internal class DBSkinPreset {
public class SkinScene { public class SkinScene {
public SkinScene() { public SkinScene() {

View File

@ -1,8 +1,8 @@
using Microsoft.Data.Sqlite; using Microsoft.Data.Sqlite;
using Newtonsoft.Json; using Newtonsoft.Json;
using static TJAPlayer3.DBSongUnlockables; using static OpenTaiko.DBSongUnlockables;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class DBSongUnlockables : CSavableT<Dictionary<string, SongUnlockable>> { internal class DBSongUnlockables : CSavableT<Dictionary<string, SongUnlockable>> {
/* DISPLAYED : Song displayed in song select, only a lock appearing on the side, audio preview plays /* DISPLAYED : Song displayed in song select, only a lock appearing on the side, audio preview plays
* GRAYED : Box grayed, song preview does not play * GRAYED : Box grayed, song preview does not play
@ -18,7 +18,7 @@ namespace TJAPlayer3 {
//_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}SongUnlockables.json"; //_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}SongUnlockables.json";
//base.tDBInitSavable(); //base.tDBInitSavable();
_fn = @$"{TJAPlayer3.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}SongUnlockables.db3"; _fn = @$"{OpenTaiko.strEXEのあるフォルダ}Databases{Path.DirectorySeparatorChar}SongUnlockables.db3";
using (var connection = new SqliteConnection(@$"Data Source={_fn}")) { using (var connection = new SqliteConnection(@$"Data Source={_fn}")) {
@ -62,8 +62,8 @@ namespace TJAPlayer3 {
} }
public void tGetUnlockedItems(int _player, ModalQueue mq) { public void tGetUnlockedItems(int _player, ModalQueue mq) {
int player = TJAPlayer3.GetActualPlayer(_player); int player = OpenTaiko.GetActualPlayer(_player);
var _sf = TJAPlayer3.SaveFileInstances[player].data.UnlockedSongs; var _sf = OpenTaiko.SaveFileInstances[player].data.UnlockedSongs;
bool _edited = false; bool _edited = false;
foreach (KeyValuePair<string, SongUnlockable> item in data) { foreach (KeyValuePair<string, SongUnlockable> item in data) {
@ -86,23 +86,23 @@ namespace TJAPlayer3 {
Modal.EModalType.Song, Modal.EModalType.Song,
HRarity.tRarityToModalInt(item.Value.rarity), HRarity.tRarityToModalInt(item.Value.rarity),
_node, _node,
TJAPlayer3.stageSongSelect.actPreimageパネル.tGenerateAndGetPreimage(_node?.arスコア[0] ?? null) OpenTaiko.stageSongSelect.actPreimageパネル.tGenerateAndGetPreimage(_node?.arスコア[0] ?? null)
), ),
_player); _player);
DBSaves.RegisterStringUnlockedAsset(TJAPlayer3.SaveFileInstances[player].data.SaveId, "unlocked_songs", _npvKey); DBSaves.RegisterStringUnlockedAsset(OpenTaiko.SaveFileInstances[player].data.SaveId, "unlocked_songs", _npvKey);
} }
} }
} }
if (_edited) if (_edited)
TJAPlayer3.SaveFileInstances[player].tApplyHeyaChanges(); OpenTaiko.SaveFileInstances[player].tApplyHeyaChanges();
} }
public bool tIsSongLocked(CSongListNode? song) { public bool tIsSongLocked(CSongListNode? song) {
if (song == null) return false; if (song == null) return false;
return !TJAPlayer3.SaveFileInstances[TJAPlayer3.SaveFile].data.UnlockedSongs.Contains(song.tGetUniqueId()) return !OpenTaiko.SaveFileInstances[OpenTaiko.SaveFile].data.UnlockedSongs.Contains(song.tGetUniqueId())
&& data.ContainsKey(song.tGetUniqueId()); && data.ContainsKey(song.tGetUniqueId());
} }

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using static TJAPlayer3.BestPlayRecords; using static OpenTaiko.BestPlayRecords;
namespace TJAPlayer3 { namespace OpenTaiko {
class DBUnlockables { class DBUnlockables {
public static Dictionary<string, int> RequiredArgs = new Dictionary<string, int>() { public static Dictionary<string, int> RequiredArgs = new Dictionary<string, int>() {
["ch"] = 1, ["ch"] = 1,
@ -127,27 +127,27 @@ namespace TJAPlayer3 {
case "cs": case "cs":
case "cm": case "cm":
if (this.Values.Length == 1) if (this.Values.Length == 1)
return tConditionMet(new int[] { (int)TJAPlayer3.SaveFileInstances[player].data.Medals }, screen); return tConditionMet(new int[] { (int)OpenTaiko.SaveFileInstances[player].data.Medals }, screen);
else else
return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString())); return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString()));
case "ce": case "ce":
if (this.Values.Length == 1) if (this.Values.Length == 1)
return tConditionMet(new int[] { (int)TJAPlayer3.SaveFileInstances[player].data.TotalEarnedMedals }, screen); return tConditionMet(new int[] { (int)OpenTaiko.SaveFileInstances[player].data.TotalEarnedMedals }, screen);
else else
return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString())); return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString()));
case "ap": case "ap":
if (this.Values.Length == 1) if (this.Values.Length == 1)
return tConditionMet(new int[] { (int)TJAPlayer3.SaveFileInstances[player].data.AIBattleModePlaycount }, screen); return tConditionMet(new int[] { (int)OpenTaiko.SaveFileInstances[player].data.AIBattleModePlaycount }, screen);
else else
return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString())); return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString()));
case "aw": case "aw":
if (this.Values.Length == 1) if (this.Values.Length == 1)
return tConditionMet(new int[] { (int)TJAPlayer3.SaveFileInstances[player].data.AIBattleModeWins }, screen); return tConditionMet(new int[] { (int)OpenTaiko.SaveFileInstances[player].data.AIBattleModeWins }, screen);
else else
return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString())); return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString()));
case "tp": case "tp":
if (this.Values.Length == 1) if (this.Values.Length == 1)
return tConditionMet(new int[] { (int)TJAPlayer3.SaveFileInstances[player].data.TotalPlaycount }, screen); return tConditionMet(new int[] { (int)OpenTaiko.SaveFileInstances[player].data.TotalPlaycount }, screen);
else else
return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString())); return (false, CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount.ToString()));
case "dp": case "dp":
@ -245,7 +245,7 @@ namespace TJAPlayer3 {
return CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount); return CLangManager.LangInstance.GetString("UNLOCK_CONDITION_ERROR", this.Condition, this.RequiredArgCount);
// Only the player loaded as 1P can check unlockables in real time // Only the player loaded as 1P can check unlockables in real time
var SaveData = TJAPlayer3.SaveFileInstances[TJAPlayer3.SaveFile].data; var SaveData = OpenTaiko.SaveFileInstances[OpenTaiko.SaveFile].data;
var ChartStats = SaveData.bestPlaysStats; var ChartStats = SaveData.bestPlaysStats;
switch (this.Condition) { switch (this.Condition) {
@ -428,8 +428,8 @@ namespace TJAPlayer3 {
if (this.Condition == "dp" && (_aimedDifficulty < (int)Difficulty.Easy || _aimedDifficulty > (int)Difficulty.Edit)) return 0; if (this.Condition == "dp" && (_aimedDifficulty < (int)Difficulty.Easy || _aimedDifficulty > (int)Difficulty.Edit)) return 0;
} }
var bpDistinctCharts = TJAPlayer3.SaveFileInstances[player].data.bestPlaysDistinctCharts; var bpDistinctCharts = OpenTaiko.SaveFileInstances[player].data.bestPlaysDistinctCharts;
var chartStats = TJAPlayer3.SaveFileInstances[player].data.bestPlaysStats; var chartStats = OpenTaiko.SaveFileInstances[player].data.bestPlaysStats;
switch (this.Condition) { switch (this.Condition) {
case "dp": case "dp":

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class Databases { class Databases {
public void tDatabases() { public void tDatabases() {
DBCDN = new DBCDN(); DBCDN = new DBCDN();

View File

@ -1,6 +1,6 @@
using Microsoft.Data.Sqlite; using Microsoft.Data.Sqlite;
namespace TJAPlayer3 { namespace OpenTaiko {
public static class HDatabaseHelpers { public static class HDatabaseHelpers {
public static List<string> GetAvailableLanguage(SqliteConnection connection, string prefix) { public static List<string> GetAvailableLanguage(SqliteConnection connection, string prefix) {
List<string> _translations = new List<string>(); List<string> _translations = new List<string>();

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class HEasingMethods { internal class HEasingMethods {
public enum EEaseType { public enum EEaseType {
IN = 0, IN = 0,

View File

@ -2,7 +2,7 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
class HGaugeMethods { class HGaugeMethods {
public enum EGaugeType { public enum EGaugeType {
NORMAL = 0, NORMAL = 0,
@ -387,7 +387,7 @@ namespace TJAPlayer3 {
tDrawGaugeBase(baseTexture, x, y, scale_x, scale_y); tDrawGaugeBase(baseTexture, x, y, scale_x, scale_y);
tDrawGaugeBaseClear(baseNormaTexture, x, y, diff, level, gaugeType, scale_x, scale_y); tDrawGaugeBaseClear(baseNormaTexture, x, y, diff, level, gaugeType, scale_x, scale_y);
tDrawGaugeFill(fillTexture, yellowTexture, (rainbowTextureArr != null && RainbowTextureIndex < rainbowTextureArr.Length) ? rainbowTextureArr[RainbowTextureIndex] : null, x, y, rainbow_x, rainbow_y, diff, level, currentPercent, gaugeType, scale_x, scale_y, Opacity, perfectHits, totalNotes); tDrawGaugeFill(fillTexture, yellowTexture, (rainbowTextureArr != null && RainbowTextureIndex < rainbowTextureArr.Length) ? rainbowTextureArr[RainbowTextureIndex] : null, x, y, rainbow_x, rainbow_y, diff, level, currentPercent, gaugeType, scale_x, scale_y, Opacity, perfectHits, totalNotes);
if (!TJAPlayer3.ConfigIni.SimpleMode) tDrawGaugeFlash(flashTexture, x, y, Opacity, diff, level, currentPercent, gaugeType, scale_x, scale_y); if (!OpenTaiko.ConfigIni.SimpleMode) tDrawGaugeFlash(flashTexture, x, y, Opacity, diff, level, currentPercent, gaugeType, scale_x, scale_y);
tDrawKillZone(killzoneTexture, x, y, diff, level, gaugeType, scale_x, scale_y, perfectHits, totalNotes); tDrawKillZone(killzoneTexture, x, y, diff, level, gaugeType, scale_x, scale_y, perfectHits, totalNotes);
tDrawClearIcon(clearIcon, diff, level, currentPercent, text_x, text_y, gaugeType, perfectHits, totalNotes, clearRect, clearRectHighlight); tDrawClearIcon(clearIcon, diff, level, currentPercent, text_x, text_y, gaugeType, perfectHits, totalNotes, clearRect, clearRectHighlight);
tDrawSoulFire(soulFire, diff, level, currentPercent, gaugeType, scale_x, scale_y, fire_x, fire_y, SoulFireIndex); tDrawSoulFire(soulFire, diff, level, currentPercent, gaugeType, scale_x, scale_y, fire_x, fire_y, SoulFireIndex);
@ -400,42 +400,42 @@ namespace TJAPlayer3 {
#region [Unsafe methods] #region [Unsafe methods]
public static bool UNSAFE_FastNormaCheck(int player) { public static bool UNSAFE_FastNormaCheck(int player) {
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character];
var _dif = TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[player]; var _dif = OpenTaiko.stageSongSelect.nChoosenSongDifficulty[player];
return tNormaCheck( return tNormaCheck(
(Difficulty)_dif, (Difficulty)_dif,
TJAPlayer3.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif], OpenTaiko.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif],
tGetGaugeTypeEnum(chara.effect.tGetGaugeType()), tGetGaugeTypeEnum(chara.effect.tGetGaugeType()),
(float)TJAPlayer3.stage演奏ドラム画面.actGauge.db現在のゲージ値[player], (float)OpenTaiko.stage演奏ドラム画面.actGauge.db現在のゲージ値[player],
UNSAFE_KillZonePercent(player) UNSAFE_KillZonePercent(player)
); );
} }
public static bool UNSAFE_IsRainbow(int player) { public static bool UNSAFE_IsRainbow(int player) {
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character];
if (tGetGaugeTypeEnum(chara.effect.tGetGaugeType()) != EGaugeType.NORMAL) return false; if (tGetGaugeTypeEnum(chara.effect.tGetGaugeType()) != EGaugeType.NORMAL) return false;
return (float)TJAPlayer3.stage演奏ドラム画面.actGauge.db現在のゲージ値[player] >= 100f; return (float)OpenTaiko.stage演奏ドラム画面.actGauge.db現在のゲージ値[player] >= 100f;
} }
public static float UNSAFE_KillZonePercent(int player) { public static float UNSAFE_KillZonePercent(int player) {
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character];
CDTX[] dtxs = CDTX[] dtxs =
{ {
TJAPlayer3.DTX, OpenTaiko.DTX,
TJAPlayer3.DTX_2P, OpenTaiko.DTX_2P,
TJAPlayer3.DTX_3P, OpenTaiko.DTX_3P,
TJAPlayer3.DTX_4P, OpenTaiko.DTX_4P,
TJAPlayer3.DTX_5P OpenTaiko.DTX_5P
}; };
// Total hits and perfect hits // Total hits and perfect hits
int perfectHits = TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nGreat; int perfectHits = OpenTaiko.stage演奏ドラム画面.CChartScore[player].nGreat;
int totalHits = dtxs[player].nーツ数[3]; int totalHits = dtxs[player].nーツ数[3];
// Difficulty // Difficulty
int _dif = TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[player]; int _dif = OpenTaiko.stageSongSelect.nChoosenSongDifficulty[player];
Difficulty difficulty = (Difficulty)_dif; Difficulty difficulty = (Difficulty)_dif;
int level = TJAPlayer3.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif]; int level = OpenTaiko.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif];
return tHardGaugeGetKillscreenRatio( return tHardGaugeGetKillscreenRatio(
difficulty, difficulty,
@ -446,168 +446,168 @@ namespace TJAPlayer3 {
} }
public static void UNSAFE_DrawGaugeFast(int player, int opacity, int rainbowTextureIndex, int soulFlameIndex) { public static void UNSAFE_DrawGaugeFast(int player, int opacity, int rainbowTextureIndex, int soulFlameIndex) {
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character];
CDTX[] dtxs = CDTX[] dtxs =
{ {
TJAPlayer3.DTX, OpenTaiko.DTX,
TJAPlayer3.DTX_2P, OpenTaiko.DTX_2P,
TJAPlayer3.DTX_3P, OpenTaiko.DTX_3P,
TJAPlayer3.DTX_4P, OpenTaiko.DTX_4P,
TJAPlayer3.DTX_5P OpenTaiko.DTX_5P
}; };
// Set box // Set box
GaugeBox = new int[] { TJAPlayer3.Skin.Game_Gauge_Rect[0], TJAPlayer3.Skin.Game_Gauge_Rect[1], TJAPlayer3.Skin.Game_Gauge_Rect[2], TJAPlayer3.Skin.Game_Gauge_Rect[3] }; GaugeBox = new int[] { OpenTaiko.Skin.Game_Gauge_Rect[0], OpenTaiko.Skin.Game_Gauge_Rect[1], OpenTaiko.Skin.Game_Gauge_Rect[2], OpenTaiko.Skin.Game_Gauge_Rect[3] };
// Gauge pos // Gauge pos
int gauge_x = 0; int gauge_x = 0;
int gauge_y = 0; int gauge_y = 0;
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
gauge_x = TJAPlayer3.Skin.Game_Gauge_5P[0] + (TJAPlayer3.Skin.Game_UIMove_5P[0] * player); gauge_x = OpenTaiko.Skin.Game_Gauge_5P[0] + (OpenTaiko.Skin.Game_UIMove_5P[0] * player);
gauge_y = TJAPlayer3.Skin.Game_Gauge_5P[1] + (TJAPlayer3.Skin.Game_UIMove_5P[1] * player); gauge_y = OpenTaiko.Skin.Game_Gauge_5P[1] + (OpenTaiko.Skin.Game_UIMove_5P[1] * player);
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
gauge_x = TJAPlayer3.Skin.Game_Gauge_4P[0] + (TJAPlayer3.Skin.Game_UIMove_4P[0] * player); gauge_x = OpenTaiko.Skin.Game_Gauge_4P[0] + (OpenTaiko.Skin.Game_UIMove_4P[0] * player);
gauge_y = TJAPlayer3.Skin.Game_Gauge_4P[1] + (TJAPlayer3.Skin.Game_UIMove_4P[1] * player); gauge_y = OpenTaiko.Skin.Game_Gauge_4P[1] + (OpenTaiko.Skin.Game_UIMove_4P[1] * player);
} else if (TJAPlayer3.ConfigIni.bAIBattleMode) { } else if (OpenTaiko.ConfigIni.bAIBattleMode) {
gauge_x = TJAPlayer3.Skin.Game_Gauge_X_AI; gauge_x = OpenTaiko.Skin.Game_Gauge_X_AI;
gauge_y = TJAPlayer3.Skin.Game_Gauge_Y_AI; gauge_y = OpenTaiko.Skin.Game_Gauge_Y_AI;
} else { } else {
gauge_x = TJAPlayer3.Skin.Game_Gauge_X[player]; gauge_x = OpenTaiko.Skin.Game_Gauge_X[player];
gauge_y = TJAPlayer3.Skin.Game_Gauge_Y[player]; gauge_y = OpenTaiko.Skin.Game_Gauge_Y[player];
} }
// Text pos // Text pos
int text_x = 0; int text_x = 0;
int text_y = 0; int text_y = 0;
if (TJAPlayer3.ConfigIni.nPlayerCount <= 2) { if (OpenTaiko.ConfigIni.nPlayerCount <= 2) {
if (TJAPlayer3.ConfigIni.bAIBattleMode) { if (OpenTaiko.ConfigIni.bAIBattleMode) {
text_x = TJAPlayer3.Skin.Game_Gauge_ClearText_X_AI; text_x = OpenTaiko.Skin.Game_Gauge_ClearText_X_AI;
text_y = TJAPlayer3.Skin.Game_Gauge_ClearText_Y_AI; text_y = OpenTaiko.Skin.Game_Gauge_ClearText_Y_AI;
} else { } else {
text_x = TJAPlayer3.Skin.Game_Gauge_ClearText_X[player]; text_x = OpenTaiko.Skin.Game_Gauge_ClearText_X[player];
text_y = TJAPlayer3.Skin.Game_Gauge_ClearText_Y[player]; text_y = OpenTaiko.Skin.Game_Gauge_ClearText_Y[player];
} }
} }
// Soul pos // Soul pos
int soul_x = 0; int soul_x = 0;
int soul_y = 0; int soul_y = 0;
if (TJAPlayer3.ConfigIni.bAIBattleMode) { if (OpenTaiko.ConfigIni.bAIBattleMode) {
soul_x = TJAPlayer3.Skin.Gauge_Soul_X_AI; soul_x = OpenTaiko.Skin.Gauge_Soul_X_AI;
soul_y = TJAPlayer3.Skin.Gauge_Soul_Y_AI; soul_y = OpenTaiko.Skin.Gauge_Soul_Y_AI;
} else { } else {
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
soul_x = TJAPlayer3.Skin.Gauge_Soul_5P[0] + (TJAPlayer3.Skin.Game_UIMove_5P[0] * player); soul_x = OpenTaiko.Skin.Gauge_Soul_5P[0] + (OpenTaiko.Skin.Game_UIMove_5P[0] * player);
soul_y = TJAPlayer3.Skin.Gauge_Soul_5P[1] + (TJAPlayer3.Skin.Game_UIMove_5P[1] * player); soul_y = OpenTaiko.Skin.Gauge_Soul_5P[1] + (OpenTaiko.Skin.Game_UIMove_5P[1] * player);
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
soul_x = TJAPlayer3.Skin.Gauge_Soul_4P[0] + (TJAPlayer3.Skin.Game_UIMove_4P[0] * player); soul_x = OpenTaiko.Skin.Gauge_Soul_4P[0] + (OpenTaiko.Skin.Game_UIMove_4P[0] * player);
soul_y = TJAPlayer3.Skin.Gauge_Soul_4P[1] + (TJAPlayer3.Skin.Game_UIMove_4P[1] * player); soul_y = OpenTaiko.Skin.Gauge_Soul_4P[1] + (OpenTaiko.Skin.Game_UIMove_4P[1] * player);
} else { } else {
soul_x = TJAPlayer3.Skin.Gauge_Soul_X[player]; soul_x = OpenTaiko.Skin.Gauge_Soul_X[player];
soul_y = TJAPlayer3.Skin.Gauge_Soul_Y[player]; soul_y = OpenTaiko.Skin.Gauge_Soul_Y[player];
} }
} }
// Fire pos // Fire pos
int fire_x = 0; int fire_x = 0;
int fire_y = 0; int fire_y = 0;
if (TJAPlayer3.ConfigIni.bAIBattleMode) { if (OpenTaiko.ConfigIni.bAIBattleMode) {
fire_x = TJAPlayer3.Skin.Gauge_Soul_Fire_X_AI; fire_x = OpenTaiko.Skin.Gauge_Soul_Fire_X_AI;
fire_y = TJAPlayer3.Skin.Gauge_Soul_Fire_Y_AI; fire_y = OpenTaiko.Skin.Gauge_Soul_Fire_Y_AI;
} else { } else {
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
fire_x = TJAPlayer3.Skin.Gauge_Soul_Fire_5P[0] + (TJAPlayer3.Skin.Game_UIMove_5P[0] * player); fire_x = OpenTaiko.Skin.Gauge_Soul_Fire_5P[0] + (OpenTaiko.Skin.Game_UIMove_5P[0] * player);
fire_y = TJAPlayer3.Skin.Gauge_Soul_Fire_5P[1] + (TJAPlayer3.Skin.Game_UIMove_5P[1] * player); fire_y = OpenTaiko.Skin.Gauge_Soul_Fire_5P[1] + (OpenTaiko.Skin.Game_UIMove_5P[1] * player);
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
fire_x = TJAPlayer3.Skin.Gauge_Soul_Fire_4P[0] + (TJAPlayer3.Skin.Game_UIMove_4P[0] * player); fire_x = OpenTaiko.Skin.Gauge_Soul_Fire_4P[0] + (OpenTaiko.Skin.Game_UIMove_4P[0] * player);
fire_y = TJAPlayer3.Skin.Gauge_Soul_Fire_4P[1] + (TJAPlayer3.Skin.Game_UIMove_4P[1] * player); fire_y = OpenTaiko.Skin.Gauge_Soul_Fire_4P[1] + (OpenTaiko.Skin.Game_UIMove_4P[1] * player);
} else { } else {
fire_x = TJAPlayer3.Skin.Gauge_Soul_Fire_X[player]; fire_x = OpenTaiko.Skin.Gauge_Soul_Fire_X[player];
fire_y = TJAPlayer3.Skin.Gauge_Soul_Fire_Y[player]; fire_y = OpenTaiko.Skin.Gauge_Soul_Fire_Y[player];
} }
} }
// Total hits and perfect hits // Total hits and perfect hits
int perfectHits = TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nGreat; int perfectHits = OpenTaiko.stage演奏ドラム画面.CChartScore[player].nGreat;
int totalHits = dtxs[player].nーツ数[3]; int totalHits = dtxs[player].nーツ数[3];
// Scale // Scale
float scale = 1.0f; float scale = 1.0f;
if (TJAPlayer3.ConfigIni.bAIBattleMode) { if (OpenTaiko.ConfigIni.bAIBattleMode) {
scale = 0.8f; scale = 0.8f;
} }
// Difficulty // Difficulty
int _dif = TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[player]; int _dif = OpenTaiko.stageSongSelect.nChoosenSongDifficulty[player];
Difficulty difficulty = (Difficulty)_dif; Difficulty difficulty = (Difficulty)_dif;
int level = TJAPlayer3.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif]; int level = OpenTaiko.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif];
// Current percent // Current percent
float currentPercent = (float)TJAPlayer3.stage演奏ドラム画面.actGauge.db現在のゲージ値[player]; float currentPercent = (float)OpenTaiko.stage演奏ドラム画面.actGauge.db現在のゲージ値[player];
// Gauge type // Gauge type
EGaugeType gaugeType = tGetGaugeTypeEnum(chara.effect.tGetGaugeType()); EGaugeType gaugeType = tGetGaugeTypeEnum(chara.effect.tGetGaugeType());
// Textures // Textures
int _4pGaugeIDX = (TJAPlayer3.ConfigIni.nPlayerCount >= 3) ? 1 : 0; int _4pGaugeIDX = (OpenTaiko.ConfigIni.nPlayerCount >= 3) ? 1 : 0;
int _usedGauge = player + 3 * _4pGaugeIDX; int _usedGauge = player + 3 * _4pGaugeIDX;
if (TJAPlayer3.P1IsBlue()) _usedGauge = 2; if (OpenTaiko.P1IsBlue()) _usedGauge = 2;
_4pGaugeIDX = (TJAPlayer3.ConfigIni.nPlayerCount >= 3) ? 2 _4pGaugeIDX = (OpenTaiko.ConfigIni.nPlayerCount >= 3) ? 2
: (player == 1) ? 1 : (player == 1) ? 1
: 0; : 0;
CTexture baseTexture = TJAPlayer3.Tx.Gauge_Base[_usedGauge]; CTexture baseTexture = OpenTaiko.Tx.Gauge_Base[_usedGauge];
CTexture fillTexture = TJAPlayer3.Tx.Gauge[_usedGauge]; CTexture fillTexture = OpenTaiko.Tx.Gauge[_usedGauge];
CTexture[] rainbowTextureArr = (new CTexture[][] { TJAPlayer3.Tx.Gauge_Rainbow, TJAPlayer3.Tx.Gauge_Rainbow_2PGauge, TJAPlayer3.Tx.Gauge_Rainbow_Flat })[_4pGaugeIDX]; CTexture[] rainbowTextureArr = (new CTexture[][] { OpenTaiko.Tx.Gauge_Rainbow, OpenTaiko.Tx.Gauge_Rainbow_2PGauge, OpenTaiko.Tx.Gauge_Rainbow_Flat })[_4pGaugeIDX];
CTexture yellowTexture = TJAPlayer3.Tx.Gauge_Clear[_4pGaugeIDX]; CTexture yellowTexture = OpenTaiko.Tx.Gauge_Clear[_4pGaugeIDX];
CTexture baseNormaTexture = TJAPlayer3.Tx.Gauge_Base_Norma[_4pGaugeIDX]; CTexture baseNormaTexture = OpenTaiko.Tx.Gauge_Base_Norma[_4pGaugeIDX];
CTexture killzoneTexture = TJAPlayer3.Tx.Gauge_Killzone[_4pGaugeIDX]; CTexture killzoneTexture = OpenTaiko.Tx.Gauge_Killzone[_4pGaugeIDX];
CTexture flashTexture = yellowTexture; CTexture flashTexture = yellowTexture;
CTexture clearIcon = (_4pGaugeIDX == 2) CTexture clearIcon = (_4pGaugeIDX == 2)
? null ? null
: (gaugeType != EGaugeType.NORMAL) : (gaugeType != EGaugeType.NORMAL)
? TJAPlayer3.Tx.Gauge_Killzone[0] ? OpenTaiko.Tx.Gauge_Killzone[0]
: TJAPlayer3.Tx.Gauge[0]; : OpenTaiko.Tx.Gauge[0];
CTexture soulLetter = TJAPlayer3.Tx.Gauge_Soul; CTexture soulLetter = OpenTaiko.Tx.Gauge_Soul;
CTexture soulFlame = TJAPlayer3.Tx.Gauge_Soul_Fire; CTexture soulFlame = OpenTaiko.Tx.Gauge_Soul_Fire;
// Rectangles // Rectangles
Rectangle clearRectHighlight = new Rectangle( Rectangle clearRectHighlight = new Rectangle(
TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[0], OpenTaiko.Skin.Game_Gauge_ClearText_Rect[0],
TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[1], OpenTaiko.Skin.Game_Gauge_ClearText_Rect[1],
TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[2], OpenTaiko.Skin.Game_Gauge_ClearText_Rect[2],
TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[3] OpenTaiko.Skin.Game_Gauge_ClearText_Rect[3]
); );
Rectangle clearRect = new Rectangle( Rectangle clearRect = new Rectangle(
TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[0], OpenTaiko.Skin.Game_Gauge_ClearText_Clear_Rect[0],
TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[1], OpenTaiko.Skin.Game_Gauge_ClearText_Clear_Rect[1],
TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[2], OpenTaiko.Skin.Game_Gauge_ClearText_Clear_Rect[2],
TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[3] OpenTaiko.Skin.Game_Gauge_ClearText_Clear_Rect[3]
); );
tDrawCompleteGauge(baseTexture, baseNormaTexture, flashTexture, fillTexture, yellowTexture, rainbowTextureArr, killzoneTexture, clearIcon, soulLetter, soulFlame, gauge_x, gauge_y, gauge_x, gauge_y, opacity, rainbowTextureIndex, soulFlameIndex, difficulty, level, currentPercent, gaugeType, scale, scale, text_x, text_y, perfectHits, totalHits, soul_x, soul_y, fire_x, fire_y, clearRect, clearRectHighlight); tDrawCompleteGauge(baseTexture, baseNormaTexture, flashTexture, fillTexture, yellowTexture, rainbowTextureArr, killzoneTexture, clearIcon, soulLetter, soulFlame, gauge_x, gauge_y, gauge_x, gauge_y, opacity, rainbowTextureIndex, soulFlameIndex, difficulty, level, currentPercent, gaugeType, scale, scale, text_x, text_y, perfectHits, totalHits, soul_x, soul_y, fire_x, fire_y, clearRect, clearRectHighlight);
} }
public static void UNSAFE_DrawResultGaugeFast(int player, int shiftPos, int pos, int segmentsDisplayed, int rainbowTextureIndex, int soulFlameIndex, int uioffset_x) { public static void UNSAFE_DrawResultGaugeFast(int player, int shiftPos, int pos, int segmentsDisplayed, int rainbowTextureIndex, int soulFlameIndex, int uioffset_x) {
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character];
CDTX[] dtxs = CDTX[] dtxs =
{ {
TJAPlayer3.DTX, OpenTaiko.DTX,
TJAPlayer3.DTX_2P, OpenTaiko.DTX_2P,
TJAPlayer3.DTX_3P, OpenTaiko.DTX_3P,
TJAPlayer3.DTX_4P, OpenTaiko.DTX_4P,
TJAPlayer3.DTX_5P OpenTaiko.DTX_5P
}; };
// Set box // Set box
GaugeBox = new int[] { TJAPlayer3.Skin.Result_Gauge_Rect[0], TJAPlayer3.Skin.Result_Gauge_Rect[1], TJAPlayer3.Skin.Result_Gauge_Rect[2], TJAPlayer3.Skin.Result_Gauge_Rect[3] }; GaugeBox = new int[] { OpenTaiko.Skin.Result_Gauge_Rect[0], OpenTaiko.Skin.Result_Gauge_Rect[1], OpenTaiko.Skin.Result_Gauge_Rect[2], OpenTaiko.Skin.Result_Gauge_Rect[3] };
// Total hits and perfect hits // Total hits and perfect hits
int perfectHits = TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nGreat; int perfectHits = OpenTaiko.stage演奏ドラム画面.CChartScore[player].nGreat;
int totalHits = dtxs[player].nーツ数[3]; int totalHits = dtxs[player].nーツ数[3];
// Gauge type // Gauge type
@ -618,39 +618,39 @@ namespace TJAPlayer3 {
// Scale x // Scale x
float scale_x = 1.0f; float scale_x = 1.0f;
if (TJAPlayer3.ConfigIni.nPlayerCount >= 3) { if (OpenTaiko.ConfigIni.nPlayerCount >= 3) {
scale_x = 0.5f; scale_x = 0.5f;
} }
// Difficulty // Difficulty
int _dif = TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[player]; int _dif = OpenTaiko.stageSongSelect.nChoosenSongDifficulty[player];
Difficulty difficulty = (Difficulty)_dif; Difficulty difficulty = (Difficulty)_dif;
int level = TJAPlayer3.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif]; int level = OpenTaiko.stageSongSelect.rChoosenSong.arスコア[_dif]..nレベル[_dif];
int gauge_x; int gauge_x;
int gauge_y; int gauge_y;
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
gauge_x = TJAPlayer3.Skin.Result_Gauge_5P[0] + TJAPlayer3.Skin.Result_UIMove_5P_X[pos]; gauge_x = OpenTaiko.Skin.Result_Gauge_5P[0] + OpenTaiko.Skin.Result_UIMove_5P_X[pos];
gauge_y = TJAPlayer3.Skin.Result_Gauge_5P[1] + TJAPlayer3.Skin.Result_UIMove_5P_Y[pos]; gauge_y = OpenTaiko.Skin.Result_Gauge_5P[1] + OpenTaiko.Skin.Result_UIMove_5P_Y[pos];
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
gauge_x = TJAPlayer3.Skin.Result_Gauge_4P[0] + TJAPlayer3.Skin.Result_UIMove_4P_X[pos]; gauge_x = OpenTaiko.Skin.Result_Gauge_4P[0] + OpenTaiko.Skin.Result_UIMove_4P_X[pos];
gauge_y = TJAPlayer3.Skin.Result_Gauge_4P[1] + TJAPlayer3.Skin.Result_UIMove_4P_Y[pos]; gauge_y = OpenTaiko.Skin.Result_Gauge_4P[1] + OpenTaiko.Skin.Result_UIMove_4P_Y[pos];
} else { } else {
gauge_x = TJAPlayer3.Skin.Result_Gauge_X[pos] + uioffset_x; gauge_x = OpenTaiko.Skin.Result_Gauge_X[pos] + uioffset_x;
gauge_y = TJAPlayer3.Skin.Result_Gauge_Y[pos]; gauge_y = OpenTaiko.Skin.Result_Gauge_Y[pos];
} }
int gauge_rainbow_x; int gauge_rainbow_x;
int gauge_rainbow_y; int gauge_rainbow_y;
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
gauge_rainbow_x = TJAPlayer3.Skin.Result_Gauge_Rainbow_5P[0] + TJAPlayer3.Skin.Result_UIMove_5P_X[pos]; gauge_rainbow_x = OpenTaiko.Skin.Result_Gauge_Rainbow_5P[0] + OpenTaiko.Skin.Result_UIMove_5P_X[pos];
gauge_rainbow_y = TJAPlayer3.Skin.Result_Gauge_Rainbow_5P[1] + TJAPlayer3.Skin.Result_UIMove_5P_Y[pos]; gauge_rainbow_y = OpenTaiko.Skin.Result_Gauge_Rainbow_5P[1] + OpenTaiko.Skin.Result_UIMove_5P_Y[pos];
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
gauge_rainbow_x = TJAPlayer3.Skin.Result_Gauge_Rainbow_4P[0] + TJAPlayer3.Skin.Result_UIMove_4P_X[pos]; gauge_rainbow_x = OpenTaiko.Skin.Result_Gauge_Rainbow_4P[0] + OpenTaiko.Skin.Result_UIMove_4P_X[pos];
gauge_rainbow_y = TJAPlayer3.Skin.Result_Gauge_Rainbow_4P[1] + TJAPlayer3.Skin.Result_UIMove_4P_Y[pos]; gauge_rainbow_y = OpenTaiko.Skin.Result_Gauge_Rainbow_4P[1] + OpenTaiko.Skin.Result_UIMove_4P_Y[pos];
} else { } else {
gauge_rainbow_x = TJAPlayer3.Skin.Result_Gauge_Rainbow_X[pos] + uioffset_x; gauge_rainbow_x = OpenTaiko.Skin.Result_Gauge_Rainbow_X[pos] + uioffset_x;
gauge_rainbow_y = TJAPlayer3.Skin.Result_Gauge_Rainbow_Y[pos]; gauge_rainbow_y = OpenTaiko.Skin.Result_Gauge_Rainbow_Y[pos];
} }
// Flame and soul // Flame and soul
@ -658,68 +658,68 @@ namespace TJAPlayer3 {
int soulText_y; int soulText_y;
int soulFire_x; int soulFire_x;
int soulFire_y; int soulFire_y;
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
soulText_x = TJAPlayer3.Skin.Result_Soul_Text_5P[0] + TJAPlayer3.Skin.Result_UIMove_5P_X[pos]; soulText_x = OpenTaiko.Skin.Result_Soul_Text_5P[0] + OpenTaiko.Skin.Result_UIMove_5P_X[pos];
soulText_y = TJAPlayer3.Skin.Result_Soul_Text_5P[1] + TJAPlayer3.Skin.Result_UIMove_5P_Y[pos]; soulText_y = OpenTaiko.Skin.Result_Soul_Text_5P[1] + OpenTaiko.Skin.Result_UIMove_5P_Y[pos];
soulFire_x = TJAPlayer3.Skin.Result_Soul_Fire_5P[0] + TJAPlayer3.Skin.Result_UIMove_5P_X[pos]; soulFire_x = OpenTaiko.Skin.Result_Soul_Fire_5P[0] + OpenTaiko.Skin.Result_UIMove_5P_X[pos];
soulFire_y = TJAPlayer3.Skin.Result_Soul_Fire_5P[1] + TJAPlayer3.Skin.Result_UIMove_5P_Y[pos]; soulFire_y = OpenTaiko.Skin.Result_Soul_Fire_5P[1] + OpenTaiko.Skin.Result_UIMove_5P_Y[pos];
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
soulText_x = TJAPlayer3.Skin.Result_Soul_Text_4P[0] + TJAPlayer3.Skin.Result_UIMove_4P_X[0]; soulText_x = OpenTaiko.Skin.Result_Soul_Text_4P[0] + OpenTaiko.Skin.Result_UIMove_4P_X[0];
soulText_y = TJAPlayer3.Skin.Result_Soul_Text_4P[1] + TJAPlayer3.Skin.Result_UIMove_4P_Y[1]; soulText_y = OpenTaiko.Skin.Result_Soul_Text_4P[1] + OpenTaiko.Skin.Result_UIMove_4P_Y[1];
soulFire_x = TJAPlayer3.Skin.Result_Soul_Fire_4P[0] + TJAPlayer3.Skin.Result_UIMove_4P_X[0]; soulFire_x = OpenTaiko.Skin.Result_Soul_Fire_4P[0] + OpenTaiko.Skin.Result_UIMove_4P_X[0];
soulFire_y = TJAPlayer3.Skin.Result_Soul_Fire_4P[1] + TJAPlayer3.Skin.Result_UIMove_4P_Y[1]; soulFire_y = OpenTaiko.Skin.Result_Soul_Fire_4P[1] + OpenTaiko.Skin.Result_UIMove_4P_Y[1];
} else { } else {
soulText_x = TJAPlayer3.Skin.Result_Soul_Text_X[pos] + uioffset_x; soulText_x = OpenTaiko.Skin.Result_Soul_Text_X[pos] + uioffset_x;
soulText_y = TJAPlayer3.Skin.Result_Soul_Text_Y[pos]; soulText_y = OpenTaiko.Skin.Result_Soul_Text_Y[pos];
soulFire_x = TJAPlayer3.Skin.Result_Soul_Fire_X[pos] + uioffset_x; soulFire_x = OpenTaiko.Skin.Result_Soul_Fire_X[pos] + uioffset_x;
soulFire_y = TJAPlayer3.Skin.Result_Soul_Fire_Y[pos]; soulFire_y = OpenTaiko.Skin.Result_Soul_Fire_Y[pos];
} }
// Clear text // Clear text
int clearText_x; int clearText_x;
int clearText_y; int clearText_y;
if (TJAPlayer3.ConfigIni.nPlayerCount == 5) { if (OpenTaiko.ConfigIni.nPlayerCount == 5) {
clearText_x = TJAPlayer3.Skin.Result_Gauge_ClearText_5P[0] + TJAPlayer3.Skin.Result_UIMove_5P_X[pos]; clearText_x = OpenTaiko.Skin.Result_Gauge_ClearText_5P[0] + OpenTaiko.Skin.Result_UIMove_5P_X[pos];
clearText_y = TJAPlayer3.Skin.Result_Gauge_ClearText_5P[1] + TJAPlayer3.Skin.Result_UIMove_5P_Y[pos]; clearText_y = OpenTaiko.Skin.Result_Gauge_ClearText_5P[1] + OpenTaiko.Skin.Result_UIMove_5P_Y[pos];
} else if (TJAPlayer3.ConfigIni.nPlayerCount == 4 || TJAPlayer3.ConfigIni.nPlayerCount == 3) { } else if (OpenTaiko.ConfigIni.nPlayerCount == 4 || OpenTaiko.ConfigIni.nPlayerCount == 3) {
clearText_x = TJAPlayer3.Skin.Result_Gauge_ClearText_4P[0] + TJAPlayer3.Skin.Result_UIMove_4P_X[pos]; clearText_x = OpenTaiko.Skin.Result_Gauge_ClearText_4P[0] + OpenTaiko.Skin.Result_UIMove_4P_X[pos];
clearText_y = TJAPlayer3.Skin.Result_Gauge_ClearText_4P[1] + TJAPlayer3.Skin.Result_UIMove_4P_Y[pos]; clearText_y = OpenTaiko.Skin.Result_Gauge_ClearText_4P[1] + OpenTaiko.Skin.Result_UIMove_4P_Y[pos];
} else { } else {
clearText_x = TJAPlayer3.Skin.Result_Gauge_ClearText_X[pos] + uioffset_x; clearText_x = OpenTaiko.Skin.Result_Gauge_ClearText_X[pos] + uioffset_x;
clearText_y = TJAPlayer3.Skin.Result_Gauge_ClearText_Y[pos]; clearText_y = OpenTaiko.Skin.Result_Gauge_ClearText_Y[pos];
} }
// Textures // Textures
int _usedGauge = shiftPos; int _usedGauge = shiftPos;
CTexture baseTexture = TJAPlayer3.Tx.Result_Gauge_Base[_usedGauge]; CTexture baseTexture = OpenTaiko.Tx.Result_Gauge_Base[_usedGauge];
CTexture fillTexture = TJAPlayer3.Tx.Result_Gauge[_usedGauge]; CTexture fillTexture = OpenTaiko.Tx.Result_Gauge[_usedGauge];
CTexture[] rainbowTextureArr = TJAPlayer3.Tx.Result_Rainbow; CTexture[] rainbowTextureArr = OpenTaiko.Tx.Result_Rainbow;
CTexture yellowTexture = TJAPlayer3.Tx.Result_Gauge_Clear; CTexture yellowTexture = OpenTaiko.Tx.Result_Gauge_Clear;
CTexture baseNormaTexture = TJAPlayer3.Tx.Result_Gauge_Clear_Base; CTexture baseNormaTexture = OpenTaiko.Tx.Result_Gauge_Clear_Base;
CTexture killzoneTexture = TJAPlayer3.Tx.Result_Gauge_Killzone; CTexture killzoneTexture = OpenTaiko.Tx.Result_Gauge_Killzone;
CTexture flashTexture = null; CTexture flashTexture = null;
CTexture clearIcon = (gaugeType != EGaugeType.NORMAL) CTexture clearIcon = (gaugeType != EGaugeType.NORMAL)
? TJAPlayer3.Tx.Result_Gauge_Killzone ? OpenTaiko.Tx.Result_Gauge_Killzone
: TJAPlayer3.Tx.Result_Gauge[0]; : OpenTaiko.Tx.Result_Gauge[0];
CTexture soulLetter = TJAPlayer3.Tx.Result_Soul_Text; CTexture soulLetter = OpenTaiko.Tx.Result_Soul_Text;
CTexture soulFlame = TJAPlayer3.Tx.Result_Soul_Fire; CTexture soulFlame = OpenTaiko.Tx.Result_Soul_Fire;
// Rectangles // Rectangles
Rectangle clearRectHighlight = new Rectangle( Rectangle clearRectHighlight = new Rectangle(
TJAPlayer3.Skin.Result_Gauge_ClearText_Clear_Rect[0], OpenTaiko.Skin.Result_Gauge_ClearText_Clear_Rect[0],
TJAPlayer3.Skin.Result_Gauge_ClearText_Clear_Rect[1], OpenTaiko.Skin.Result_Gauge_ClearText_Clear_Rect[1],
TJAPlayer3.Skin.Result_Gauge_ClearText_Clear_Rect[2], OpenTaiko.Skin.Result_Gauge_ClearText_Clear_Rect[2],
TJAPlayer3.Skin.Result_Gauge_ClearText_Clear_Rect[3] OpenTaiko.Skin.Result_Gauge_ClearText_Clear_Rect[3]
); );
Rectangle clearRect = new Rectangle( Rectangle clearRect = new Rectangle(
TJAPlayer3.Skin.Result_Gauge_ClearText_Rect[0], OpenTaiko.Skin.Result_Gauge_ClearText_Rect[0],
TJAPlayer3.Skin.Result_Gauge_ClearText_Rect[1], OpenTaiko.Skin.Result_Gauge_ClearText_Rect[1],
TJAPlayer3.Skin.Result_Gauge_ClearText_Rect[2], OpenTaiko.Skin.Result_Gauge_ClearText_Rect[2],
TJAPlayer3.Skin.Result_Gauge_ClearText_Rect[3] OpenTaiko.Skin.Result_Gauge_ClearText_Rect[3]
); );
// Positionnings // Positionnings
@ -739,7 +739,7 @@ namespace TJAPlayer3 {
#endregion #endregion
private static int[] GaugeBox = { TJAPlayer3.Skin.Game_Gauge_Rect[0], TJAPlayer3.Skin.Game_Gauge_Rect[1], TJAPlayer3.Skin.Game_Gauge_Rect[2], TJAPlayer3.Skin.Game_Gauge_Rect[3] }; private static int[] GaugeBox = { OpenTaiko.Skin.Game_Gauge_Rect[0], OpenTaiko.Skin.Game_Gauge_Rect[1], OpenTaiko.Skin.Game_Gauge_Rect[2], OpenTaiko.Skin.Game_Gauge_Rect[3] };
} }
} }

View File

@ -1,7 +1,7 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
class HGenreBar { class HGenreBar {
public static CTexture tGetGenreBar(string value, Dictionary<string, CTexture> textures) { public static CTexture tGetGenreBar(string value, Dictionary<string, CTexture> textures) {
if (textures.TryGetValue($"{value}", out CTexture tex)) { if (textures.TryGetValue($"{value}", out CTexture tex)) {

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
public static class HLocalizedPath { public static class HLocalizedPath {
public static string GetFullPathWithoutExtension(string path) { public static string GetFullPathWithoutExtension(string path) {
return System.IO.Path.Combine(System.IO.Path.GetDirectoryName(path), System.IO.Path.GetFileNameWithoutExtension(path)); return System.IO.Path.Combine(System.IO.Path.GetDirectoryName(path), System.IO.Path.GetFileNameWithoutExtension(path));

View File

@ -1,6 +1,6 @@
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class HPrivateFastFont { internal class HPrivateFastFont {
static string DefaultFont = CFontRenderer.DefaultFontName; static string DefaultFont = CFontRenderer.DefaultFontName;
@ -15,16 +15,16 @@ namespace TJAPlayer3 {
} }
public static CCachedFontRenderer tInstantiateMainFont(int scale, CFontRenderer.FontStyle style = CFontRenderer.FontStyle.Regular) { public static CCachedFontRenderer tInstantiateMainFont(int scale, CFontRenderer.FontStyle style = CFontRenderer.FontStyle.Regular) {
if (FontExists(TJAPlayer3.Skin.FontName)) if (FontExists(OpenTaiko.Skin.FontName))
return (new CCachedFontRenderer(TJAPlayer3.Skin.FontName, scale, style)); return (new CCachedFontRenderer(OpenTaiko.Skin.FontName, scale, style));
if (FontExists(CLangManager.LangInstance.FontName)) if (FontExists(CLangManager.LangInstance.FontName))
return (new CCachedFontRenderer(CLangManager.LangInstance.FontName, scale, style)); return (new CCachedFontRenderer(CLangManager.LangInstance.FontName, scale, style));
return (new CCachedFontRenderer(DefaultFont, scale, style)); return (new CCachedFontRenderer(DefaultFont, scale, style));
} }
public static CCachedFontRenderer tInstantiateBoxFont(int scale, CFontRenderer.FontStyle style = CFontRenderer.FontStyle.Regular) { public static CCachedFontRenderer tInstantiateBoxFont(int scale, CFontRenderer.FontStyle style = CFontRenderer.FontStyle.Regular) {
if (FontExists(TJAPlayer3.Skin.BoxFontName)) if (FontExists(OpenTaiko.Skin.BoxFontName))
return (new CCachedFontRenderer(TJAPlayer3.Skin.FontName, scale, style)); return (new CCachedFontRenderer(OpenTaiko.Skin.FontName, scale, style));
if (FontExists(CLangManager.LangInstance.BoxFontName)) if (FontExists(CLangManager.LangInstance.BoxFontName))
return (new CCachedFontRenderer(CLangManager.LangInstance.FontName, scale, style)); return (new CCachedFontRenderer(CLangManager.LangInstance.FontName, scale, style));
return (new CCachedFontRenderer(DefaultFont, scale, style)); return (new CCachedFontRenderer(DefaultFont, scale, style));

View File

@ -1,6 +1,6 @@
using Color = System.Drawing.Color; using Color = System.Drawing.Color;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class HRarity { internal class HRarity {
private static Dictionary<string, Color> RarityToColor = new Dictionary<string, Color> { private static Dictionary<string, Color> RarityToColor = new Dictionary<string, Color> {
["Poor"] = Color.Gray, ["Poor"] = Color.Gray,

View File

@ -1,12 +1,12 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class HScenePreset { class HScenePreset {
public static DBSkinPreset.SkinScene GetBGPreset() { public static DBSkinPreset.SkinScene GetBGPreset() {
string presetSection = ""; string presetSection = "";
if (TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[0] == (int)Difficulty.Tower) { if (OpenTaiko.stageSongSelect.nChoosenSongDifficulty[0] == (int)Difficulty.Tower) {
presetSection = "Tower"; presetSection = "Tower";
} else if (TJAPlayer3.stageSongSelect.nChoosenSongDifficulty[0] == (int)Difficulty.Dan) { } else if (OpenTaiko.stageSongSelect.nChoosenSongDifficulty[0] == (int)Difficulty.Dan) {
presetSection = "Dan"; presetSection = "Dan";
} else if (TJAPlayer3.ConfigIni.bAIBattleMode) { } else if (OpenTaiko.ConfigIni.bAIBattleMode) {
presetSection = "AI"; presetSection = "AI";
} else { } else {
presetSection = "Regular"; presetSection = "Regular";
@ -16,16 +16,16 @@ namespace TJAPlayer3 {
switch (presetSection) { switch (presetSection) {
case "Regular": case "Regular":
_ps = TJAPlayer3.Skin.Game_SkinScenes.Regular; _ps = OpenTaiko.Skin.Game_SkinScenes.Regular;
break; break;
case "Dan": case "Dan":
_ps = TJAPlayer3.Skin.Game_SkinScenes.Dan; _ps = OpenTaiko.Skin.Game_SkinScenes.Dan;
break; break;
case "Tower": case "Tower":
_ps = TJAPlayer3.Skin.Game_SkinScenes.Tower; _ps = OpenTaiko.Skin.Game_SkinScenes.Tower;
break; break;
case "AI": case "AI":
_ps = TJAPlayer3.Skin.Game_SkinScenes.AI; _ps = OpenTaiko.Skin.Game_SkinScenes.AI;
break; break;
default: default:
break; break;
@ -34,20 +34,20 @@ namespace TJAPlayer3 {
bool sectionIsValid = _ps != null ? ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).Count > 0 : false; bool sectionIsValid = _ps != null ? ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).Count > 0 : false;
var preset = (sectionIsValid var preset = (sectionIsValid
&& TJAPlayer3.stageSongSelect.rChoosenSong.strScenePreset != null && OpenTaiko.stageSongSelect.rChoosenSong.strScenePreset != null
&& ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey(TJAPlayer3.stageSongSelect.rChoosenSong.strScenePreset)) && ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey(OpenTaiko.stageSongSelect.rChoosenSong.strScenePreset))
? ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[TJAPlayer3.stageSongSelect.rChoosenSong.strScenePreset] ? ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[OpenTaiko.stageSongSelect.rChoosenSong.strScenePreset]
: null; : null;
if (sectionIsValid if (sectionIsValid
&& TJAPlayer3.DTX.scenePreset != null && OpenTaiko.DTX.scenePreset != null
&& ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey(TJAPlayer3.DTX.scenePreset)) // If currently selected song has valid SCENEPRESET metadata within TJA && ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey(OpenTaiko.DTX.scenePreset)) // If currently selected song has valid SCENEPRESET metadata within TJA
{ {
preset = ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[TJAPlayer3.DTX.scenePreset]; preset = ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[OpenTaiko.DTX.scenePreset];
} else if (sectionIsValid } else if (sectionIsValid
&& TJAPlayer3.stageSongSelect.rChoosenSong.strScenePreset != null && OpenTaiko.stageSongSelect.rChoosenSong.strScenePreset != null
&& ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey(TJAPlayer3.stageSongSelect.rChoosenSong.strScenePreset)) { && ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey(OpenTaiko.stageSongSelect.rChoosenSong.strScenePreset)) {
preset = ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[TJAPlayer3.stageSongSelect.rChoosenSong.strScenePreset]; preset = ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[OpenTaiko.stageSongSelect.rChoosenSong.strScenePreset];
} else if (sectionIsValid } else if (sectionIsValid
&& ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey("")) { && ((Dictionary<string, DBSkinPreset.SkinScene>)_ps).ContainsKey("")) {
preset = ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[""]; preset = ((Dictionary<string, DBSkinPreset.SkinScene>)_ps)[""];

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
class HSongTraverse { class HSongTraverse {
public static List<string> SpecialFolders = new List<string> { "Favorite", "最近遊んだ曲", "SearchD" }; public static List<string> SpecialFolders = new List<string> { "Favorite", "最近遊んだ曲", "SearchD" };

View File

@ -1,7 +1,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class LocalizedStringConverter<T> : JsonConverter { internal class LocalizedStringConverter<T> : JsonConverter {
public override bool CanConvert(Type objectType) { public override bool CanConvert(Type objectType) {
// CanConvert is not called when the [JsonConverter] attribute is used // CanConvert is not called when the [JsonConverter] attribute is used

View File

@ -2,7 +2,7 @@
using System.Globalization; using System.Globalization;
using System.Reflection; using System.Reflection;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using TJAPlayer3; using OpenTaiko;
// https://github.com/Burtsev-Alexey/net-object-deep-copy/blob/master/ObjectExtensions.cs // https://github.com/Burtsev-Alexey/net-object-deep-copy/blob/master/ObjectExtensions.cs

View File

@ -3,7 +3,7 @@ using System.Text.Json;
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CLang { internal class CLang {
public string Id { get; private set; } = "foo"; public string Id { get; private set; } = "foo";
public string Language { get; private set; } = "Unknown Language"; public string Language { get; private set; } = "Unknown Language";
@ -18,7 +18,7 @@ namespace TJAPlayer3 {
get { return File.Exists(Path.Combine(Folder, _boxFontName)) ? Path.Combine(Folder, _boxFontName) : _boxFontName; } get { return File.Exists(Path.Combine(Folder, _boxFontName)) ? Path.Combine(Folder, _boxFontName) : _boxFontName; }
private set { _boxFontName = value; } private set { _boxFontName = value; }
} }
public string Folder { get { return @$"{TJAPlayer3.strEXEのあるフォルダ}Lang{Path.DirectorySeparatorChar}{Id}{Path.DirectorySeparatorChar}"; } } public string Folder { get { return @$"{OpenTaiko.strEXEのあるフォルダ}Lang{Path.DirectorySeparatorChar}{Id}{Path.DirectorySeparatorChar}"; } }
private string _fontName = CFontRenderer.DefaultFontName; private string _fontName = CFontRenderer.DefaultFontName;
private string _boxFontName = CFontRenderer.DefaultFontName; private string _boxFontName = CFontRenderer.DefaultFontName;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal interface ILang { internal interface ILang {
string GetString(int idx); string GetString(int idx);
} }
@ -71,8 +71,8 @@
public static string[] Langcodes { public static string[] Langcodes {
get { get {
if (_langCodes == null) if (_langCodes == null)
_langCodes = Directory.GetDirectories(Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "Lang"), "*", SearchOption.TopDirectoryOnly) _langCodes = Directory.GetDirectories(Path.Combine(OpenTaiko.strEXEのあるフォルダ, "Lang"), "*", SearchOption.TopDirectoryOnly)
.Select(result => Path.GetRelativePath(Path.Combine(TJAPlayer3.strEXEのあるフォルダ, "Lang"), result)) .Select(result => Path.GetRelativePath(Path.Combine(OpenTaiko.strEXEのあるフォルダ, "Lang"), result))
.ToArray(); .ToArray();
return _langCodes; return _langCodes;

View File

@ -1,6 +1,6 @@
using System.Globalization; using System.Globalization;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// すべてのアイテムの基本クラス。 /// すべてのアイテムの基本クラス。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// 「整数」を表すアイテム。 /// 「整数」を表すアイテム。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// 「リスト」(複数の固定値からの1つを選択可能)を表すアイテム。 /// 「リスト」(複数の固定値からの1つを選択可能)を表すアイテム。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// 「スリーステート」ON, OFF, 不定 の3状態を表すアイテム。 /// 「スリーステート」ON, OFF, 不定 の3状態を表すアイテム。
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// 「トグル」ON, OFF の2状態を表すアイテム。 /// 「トグル」ON, OFF の2状態を表すアイテム。
/// </summary> /// </summary>

View File

@ -5,7 +5,7 @@ using System.Text.Json.Nodes;
using FDK; using FDK;
using NLua; using NLua;
namespace TJAPlayer3 { namespace OpenTaiko {
class CLuaScript : IDisposable { class CLuaScript : IDisposable {
private static List<CLuaScript> listScripts = new List<CLuaScript>(); private static List<CLuaScript> listScripts = new List<CLuaScript>();
public static void tReloadLanguage(string lang) { public static void tReloadLanguage(string lang) {
@ -113,7 +113,7 @@ namespace TJAPlayer3 {
soundGroup = ESoundGroup.Unknown; soundGroup = ESoundGroup.Unknown;
break; break;
} }
CSound sound = TJAPlayer3.SoundManager?.tCreateSound($"{strSounsdDir}/{name}", soundGroup); CSound sound = OpenTaiko.SoundManager?.tCreateSound($"{strSounsdDir}/{name}", soundGroup);
listDisposables.Add(sound); listDisposables.Add(sound);
return sound; return sound;

View File

@ -1,6 +1,6 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CLuaFps { internal class CLuaFps {
public double deltaTime => TJAPlayer3.FPS.DeltaTime; public double deltaTime => OpenTaiko.FPS.DeltaTime;
public int fps => TJAPlayer3.FPS.NowFPS; public int fps => OpenTaiko.FPS.NowFPS;
} }
} }

View File

@ -1,10 +1,10 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CLuaInfo { internal class CLuaInfo {
public int playerCount => TJAPlayer3.ConfigIni.nPlayerCount; public int playerCount => OpenTaiko.ConfigIni.nPlayerCount;
public string lang => TJAPlayer3.ConfigIni.sLang; public string lang => OpenTaiko.ConfigIni.sLang;
public bool simplemode => TJAPlayer3.ConfigIni.SimpleMode; public bool simplemode => OpenTaiko.ConfigIni.SimpleMode;
public bool p1IsBlue => TJAPlayer3.P1IsBlue(); public bool p1IsBlue => OpenTaiko.P1IsBlue();
public bool online => TJAPlayer3.app.bネットワークに接続中; public bool online => OpenTaiko.app.bネットワークに接続中;
public string dir { get; init; } public string dir { get; init; }

View File

@ -1,6 +1,6 @@
using NLua; using NLua;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CLuaModalScript : CLuaScript { internal class CLuaModalScript : CLuaScript {
private LuaFunction lfRegisterModal; private LuaFunction lfRegisterModal;
private LuaFunction lfAnimationFinished; private LuaFunction lfAnimationFinished;

View File

@ -1,7 +1,7 @@
using FDK; using FDK;
using NLua; using NLua;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CLuaNamePlateScript : CLuaScript { internal class CLuaNamePlateScript : CLuaScript {
private LuaFunction lfGetCharaOffset; private LuaFunction lfGetCharaOffset;
private LuaFunction lfSetInfos; private LuaFunction lfSetInfos;

View File

@ -1,12 +1,12 @@
using System.Drawing; using System.Drawing;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CPluginHost : IPluginHost { internal class CPluginHost : IPluginHost {
// コンストラクタ // コンストラクタ
public CPluginHost() { public CPluginHost() {
this._DTXManiaVersion = new CDTXVersion(TJAPlayer3.VERSION); this._DTXManiaVersion = new CDTXVersion(OpenTaiko.VERSION);
} }
@ -16,37 +16,37 @@ namespace TJAPlayer3 {
get { return this._DTXManiaVersion; } get { return this._DTXManiaVersion; }
} }
public CTimer Timer { public CTimer Timer {
get { return TJAPlayer3.Timer; } get { return OpenTaiko.Timer; }
} }
public SoundManager Sound管理 { public SoundManager Sound管理 {
get { return TJAPlayer3.SoundManager; } get { return OpenTaiko.SoundManager; }
} }
public Size ClientSize { public Size ClientSize {
get { return new Size(TJAPlayer3.app.Window_.Size.X, TJAPlayer3.app.Window_.Size.Y); } get { return new Size(OpenTaiko.app.Window_.Size.X, OpenTaiko.app.Window_.Size.Y); }
} }
public CStage.EStage e現在のステージ { public CStage.EStage e現在のステージ {
get { return (TJAPlayer3.r現在のステージ != null) ? TJAPlayer3.r現在のステージ.eStageID : CStage.EStage.None; } get { return (OpenTaiko.r現在のステージ != null) ? OpenTaiko.r現在のステージ.eStageID : CStage.EStage.None; }
} }
public CStage.EPhase e現在のフェーズ { public CStage.EPhase e現在のフェーズ {
get { return (TJAPlayer3.r現在のステージ != null) ? TJAPlayer3.r現在のステージ.ePhaseID : CStage.EPhase.Common_NORMAL; } get { return (OpenTaiko.r現在のステージ != null) ? OpenTaiko.r現在のステージ.ePhaseID : CStage.EPhase.Common_NORMAL; }
} }
public bool t入力を占有する(IPluginActivity act) { public bool t入力を占有する(IPluginActivity act) {
if (TJAPlayer3.act現在入力を占有中のプラグイン != null) if (OpenTaiko.act現在入力を占有中のプラグイン != null)
return false; return false;
TJAPlayer3.act現在入力を占有中のプラグイン = act; OpenTaiko.act現在入力を占有中のプラグイン = act;
return true; return true;
} }
public bool t入力の占有を解除する(IPluginActivity act) { public bool t入力の占有を解除する(IPluginActivity act) {
if (TJAPlayer3.act現在入力を占有中のプラグイン == null || TJAPlayer3.act現在入力を占有中のプラグイン != act) if (OpenTaiko.act現在入力を占有中のプラグイン == null || OpenTaiko.act現在入力を占有中のプラグイン != act)
return false; return false;
TJAPlayer3.act現在入力を占有中のプラグイン = null; OpenTaiko.act現在入力を占有中のプラグイン = null;
return true; return true;
} }
public void tシステムサウンドを再生する(Eシステムサウンド sound) { public void tシステムサウンドを再生する(Eシステムサウンド sound) {
if (TJAPlayer3.Skin != null) if (OpenTaiko.Skin != null)
TJAPlayer3.Skin[sound].tPlay(); OpenTaiko.Skin[sound].tPlay();
} }

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// <para>Activity プラグインへのインターフェース。</para> /// <para>Activity プラグインへのインターフェース。</para>
/// <para>DTXMania は、IPluginActivity に対して、以下のライフサイクルを実行します。</para> /// <para>DTXMania は、IPluginActivity に対して、以下のライフサイクルを実行します。</para>
@ -14,7 +14,7 @@
/// <para>DTXMania の起動処理の最後セットアップ画面が表示される直前に、DTXMania から一度だけ呼び出されます。</para> /// <para>DTXMania の起動処理の最後セットアップ画面が表示される直前に、DTXMania から一度だけ呼び出されます。</para>
/// <param name="PluginHost">プラグインが、ホストDTXManiaの情報にアクセスするためのオブジェクト。</param> /// <param name="PluginHost">プラグインが、ホストDTXManiaの情報にアクセスするためのオブジェクト。</param>
/// </summary> /// </summary>
void On初期化(global::TJAPlayer3.IPluginHost PluginHost); void On初期化(global::OpenTaiko.IPluginHost PluginHost);
/// <summary> /// <summary>
/// <para>プラグインの終了処理を行います。</para> /// <para>プラグインの終了処理を行います。</para>
@ -50,7 +50,7 @@
/// <param name="pad">パッド入力。他のプラグインが入力占有中である場合は null が渡されます。</param> /// <param name="pad">パッド入力。他のプラグインが入力占有中である場合は null が渡されます。</param>
/// <param name="keyboard">キーボード入力。他のプラグインが入力占有中である場合は null が渡されます。</param> /// <param name="keyboard">キーボード入力。他のプラグインが入力占有中である場合は null が渡されます。</param>
/// </summary> /// </summary>
void On進行描画(global::TJAPlayer3.CPad pad, FDK.IInputDevice keyboard); void On進行描画(global::OpenTaiko.CPad pad, FDK.IInputDevice keyboard);
/// <summary> /// <summary>
/// <para>ステージが変わる度に呼び出されます。</para> /// <para>ステージが変わる度に呼び出されます。</para>
@ -67,8 +67,8 @@
/// <param name="n曲番号inブロック">選択されている曲のブロック内の曲番号(04)。</param> /// <param name="n曲番号inブロック">選択されている曲のブロック内の曲番号(04)。</param>
void On選択曲変更(string str選択曲ファイル名, int n曲番号inブロック); void On選択曲変更(string str選択曲ファイル名, int n曲番号inブロック);
void On演奏クリア(global::TJAPlayer3.CScoreIni scoreIni); void On演奏クリア(global::OpenTaiko.CScoreIni scoreIni);
void On演奏失敗(global::TJAPlayer3.CScoreIni scoreIni); void On演奏失敗(global::OpenTaiko.CScoreIni scoreIni);
void On演奏キャンセル(global::TJAPlayer3.CScoreIni scoreIni); void On演奏キャンセル(global::OpenTaiko.CScoreIni scoreIni);
} }
} }

View File

@ -1,5 +1,5 @@
 
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// <para>プラグインホスト情報提供インターフェース。</para> /// <para>プラグインホスト情報提供インターフェース。</para>
/// <para>プラグインでは、On初期化() で渡されるこのインターフェースオブジェクトを通じて、 /// <para>プラグインでは、On初期化() で渡されるこのインターフェースオブジェクトを通じて、
@ -9,7 +9,7 @@ namespace TJAPlayer3 {
/// <summary> /// <summary>
/// DTXMania のバージョンを表します。 /// DTXMania のバージョンを表します。
/// </summary> /// </summary>
global::TJAPlayer3.CDTXVersion DTXManiaVersion { get; } global::OpenTaiko.CDTXVersion DTXManiaVersion { get; }
/// <summary> /// <summary>
/// <para>DirectSound の管理クラス。</para> /// <para>DirectSound の管理クラス。</para>
@ -25,12 +25,12 @@ namespace TJAPlayer3 {
/// <summary> /// <summary>
/// 現在のステージのIDを表します。 /// 現在のステージのIDを表します。
/// </summary> /// </summary>
global::TJAPlayer3.CStage.EStage e現在のステージ { get; } global::OpenTaiko.CStage.EStage e現在のステージ { get; }
/// <summary> /// <summary>
/// 現在のステージにおけるフェーズのIDを表します。 /// 現在のステージにおけるフェーズのIDを表します。
/// </summary> /// </summary>
global::TJAPlayer3.CStage.EPhase e現在のフェーズ { get; } global::OpenTaiko.CStage.EPhase e現在のフェーズ { get; }
/// <summary> /// <summary>
/// <para>自分以外は入力データを扱ってはならないことを宣言します。</para> /// <para>自分以外は入力データを扱ってはならないことを宣言します。</para>

View File

@ -2,7 +2,7 @@
using System.Drawing; using System.Drawing;
using System.Text; using System.Text;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CBoxDef { internal class CBoxDef {
// プロパティ // プロパティ
@ -50,7 +50,7 @@ namespace TJAPlayer3 {
// メソッド // メソッド
public void t読み込み(string boxdefファイル名) { public void t読み込み(string boxdefファイル名) {
StreamReader reader = new StreamReader(boxdefファイル名, Encoding.GetEncoding(TJAPlayer3.sEncType)); StreamReader reader = new StreamReader(boxdefファイル名, Encoding.GetEncoding(OpenTaiko.sEncType));
string str = null; string str = null;
while ((str = reader.ReadLine()) != null) { while ((str = reader.ReadLine()) != null) {
if (str.Length != 0) { if (str.Length != 0) {

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
public class CCourse { public class CCourse {
//2016.11.07 kairera0467 //2016.11.07 kairera0467
//とりあえずメモ代わりに //とりあえずメモ代わりに

View File

@ -9,7 +9,7 @@ using FDK.ExtensionMethods;
using SkiaSharp; using SkiaSharp;
using Color = System.Drawing.Color; using Color = System.Drawing.Color;
namespace TJAPlayer3 { namespace OpenTaiko {
internal class CDTX : CActivity { internal class CDTX : CActivity {
// 定数 // 定数
@ -414,7 +414,7 @@ namespace TJAPlayer3 {
if (this.nチャンネル番号 == 0x01) // WAV if (this.nチャンネル番号 == 0x01) // WAV
{ {
CDTX.CWAV wc; CDTX.CWAV wc;
TJAPlayer3.DTX.listWAV.TryGetValue(this.n整数値_内部番号, out wc); OpenTaiko.DTX.listWAV.TryGetValue(this.n整数値_内部番号, out wc);
if (wc == null) { if (wc == null) {
nDuration = 0; nDuration = 0;
} else { } else {
@ -423,7 +423,7 @@ namespace TJAPlayer3 {
} else if (this.nチャンネル番号 == 0x54) // AVI } else if (this.nチャンネル番号 == 0x54) // AVI
{ {
CVideoDecoder wc; CVideoDecoder wc;
TJAPlayer3.DTX.listVD.TryGetValue(this.n整数値_内部番号, out wc); OpenTaiko.DTX.listVD.TryGetValue(this.n整数値_内部番号, out wc);
if (wc == null) { if (wc == null) {
nDuration = 0; nDuration = 0;
} else { } else {
@ -431,7 +431,7 @@ namespace TJAPlayer3 {
} }
} }
double _db再生速度 = (TJAPlayer3.DTXVmode.Enabled) ? TJAPlayer3.DTX.dbDTXVPlaySpeed : TJAPlayer3.DTX.db再生速度; double _db再生速度 = (OpenTaiko.DTXVmode.Enabled) ? OpenTaiko.DTX.dbDTXVPlaySpeed : OpenTaiko.DTX.db再生速度;
return (int)(nDuration / _db再生速度); return (int)(nDuration / _db再生速度);
} }
@ -507,14 +507,14 @@ namespace TJAPlayer3 {
public List<int> listこのWAVを使用するチャンネル番号の集合 = new List<int>(16); public List<int> listこのWAVを使用するチャンネル番号の集合 = new List<int>(16);
public int nチップサイズ = 100; public int nチップサイズ = 100;
public int n位置; public int n位置;
public long[] n一時停止時刻 = new long[TJAPlayer3.ConfigIni.nPoliphonicSounds]; // 4 public long[] n一時停止時刻 = new long[OpenTaiko.ConfigIni.nPoliphonicSounds]; // 4
public int SongVol = CSound.DefaultSongVol; public int SongVol = CSound.DefaultSongVol;
public LoudnessMetadata? SongLoudnessMetadata = null; public LoudnessMetadata? SongLoudnessMetadata = null;
public int n現在再生中のサウンド番号; public int n現在再生中のサウンド番号;
public long[] n再生開始時刻 = new long[TJAPlayer3.ConfigIni.nPoliphonicSounds]; // 4 public long[] n再生開始時刻 = new long[OpenTaiko.ConfigIni.nPoliphonicSounds]; // 4
public int n内部番号; public int n内部番号;
public int n表記上の番号; public int n表記上の番号;
public CSound[] rSound = new CSound[TJAPlayer3.ConfigIni.nPoliphonicSounds]; // 4 public CSound[] rSound = new CSound[OpenTaiko.ConfigIni.nPoliphonicSounds]; // 4
public string strコメント文 = ""; public string strコメント文 = "";
public string strファイル名 = ""; public string strファイル名 = "";
public bool bBGMとして使わない { public bool bBGMとして使わない {
@ -556,13 +556,13 @@ namespace TJAPlayer3 {
return; return;
if (bManagedリソースの解放も行う) { if (bManagedリソースの解放も行う) {
for (int i = 0; i < TJAPlayer3.ConfigIni.nPoliphonicSounds; i++) // 4 for (int i = 0; i < OpenTaiko.ConfigIni.nPoliphonicSounds; i++) // 4
{ {
if (this.rSound[i] != null) if (this.rSound[i] != null)
TJAPlayer3.SoundManager.tDisposeSound(this.rSound[i]); OpenTaiko.SoundManager.tDisposeSound(this.rSound[i]);
this.rSound[i] = null; this.rSound[i] = null;
if ((i == 0) && TJAPlayer3.ConfigIni.bLog作成解放ログ出力) if ((i == 0) && OpenTaiko.ConfigIni.bLog作成解放ログ出力)
Trace.TraceInformation("サウンドを解放しました。({0})({1})", this.strコメント文, this.strファイル名); Trace.TraceInformation("サウンドを解放しました。({0})({1})", this.strコメント文, this.strファイル名);
} }
} }
@ -1200,7 +1200,7 @@ namespace TJAPlayer3 {
this.BACKGROUND_GR = ""; this.BACKGROUND_GR = "";
this.PATH_WAV = ""; this.PATH_WAV = "";
this.BPM = 120.0; this.BPM = 120.0;
this.nOFFSET = TJAPlayer3.ConfigIni.nGlobalOffsetMs; // When OFFSET isn't called (typically in Dans), it should default to the game's Global Offset to avoid desync. this.nOFFSET = OpenTaiko.ConfigIni.nGlobalOffsetMs; // When OFFSET isn't called (typically in Dans), it should default to the game's Global Offset to avoid desync.
this.bOFFSETの値がマイナスである = nOFFSET < 0; this.bOFFSETの値がマイナスである = nOFFSET < 0;
STDGBVALUE<int> stdgbvalue = new STDGBVALUE<int>(); STDGBVALUE<int> stdgbvalue = new STDGBVALUE<int>();
stdgbvalue.Drums = 0; stdgbvalue.Drums = 0;
@ -1259,7 +1259,7 @@ namespace TJAPlayer3 {
this.stGDAParam = stgdaparamArray; this.stGDAParam = stgdaparamArray;
#endregion #endregion
this.nBGMAdjust = 0; this.nBGMAdjust = 0;
this.nPolyphonicSounds = TJAPlayer3.ConfigIni.nPoliphonicSounds; this.nPolyphonicSounds = OpenTaiko.ConfigIni.nPoliphonicSounds;
this.dbDTXVPlaySpeed = 1.0f; this.dbDTXVPlaySpeed = 1.0f;
//this.nScoreModeTmp = 1; //this.nScoreModeTmp = 1;
@ -1340,7 +1340,7 @@ namespace TJAPlayer3 {
if (this.listVD != null) { if (this.listVD != null) {
foreach (CVideoDecoder cvd in this.listVD.Values) { foreach (CVideoDecoder cvd in this.listVD.Values) {
cvd.InitRead(); cvd.InitRead();
cvd.dbPlaySpeed = TJAPlayer3.ConfigIni.SongPlaybackSpeed; cvd.dbPlaySpeed = OpenTaiko.ConfigIni.SongPlaybackSpeed;
} }
} }
} }
@ -1365,7 +1365,7 @@ namespace TJAPlayer3 {
//); //);
// wc.rSound[ i ].t再生位置を変更する( wc.rSound[ i ].t時刻から位置を返す( nAbsTimeFromStartPlaying ) ); // wc.rSound[ i ].t再生位置を変更する( wc.rSound[ i ].t時刻から位置を返す( nAbsTimeFromStartPlaying ) );
// WASAPI/ASIO用↓ // WASAPI/ASIO用↓
if (!TJAPlayer3.stage演奏ドラム画面.bPAUSE) { if (!OpenTaiko.stage演奏ドラム画面.bPAUSE) {
if (wc.rSound[i].IsPaused) wc.rSound[i].Resume(nAbsTimeFromStartPlaying); if (wc.rSound[i].IsPaused) wc.rSound[i].Resume(nAbsTimeFromStartPlaying);
else wc.rSound[i].tSetPositonToBegin(nAbsTimeFromStartPlaying); else wc.rSound[i].tSetPositonToBegin(nAbsTimeFromStartPlaying);
} else { } else {
@ -1400,7 +1400,7 @@ namespace TJAPlayer3 {
#region [ ] #region [ ]
int nPoly = nPolyphonicSounds; int nPoly = nPolyphonicSounds;
if (TJAPlayer3.SoundManager.GetCurrentSoundDeviceType() != "DirectSound") // DShowでの再生の場合はミキシング負荷が高くないため、 if (OpenTaiko.SoundManager.GetCurrentSoundDeviceType() != "DirectSound") // DShowでの再生の場合はミキシング負荷が高くないため、
{ {
// チップのライフタイム管理を行わない // チップのライフタイム管理を行わない
if (cwav.bIsBassSound) nPoly = (nPolyphonicSounds >= 2) ? 2 : 1; if (cwav.bIsBassSound) nPoly = (nPolyphonicSounds >= 2) ? 2 : 1;
@ -1415,13 +1415,13 @@ namespace TJAPlayer3 {
for (int i = 0; i < nPoly; i++) { for (int i = 0; i < nPoly; i++) {
try { try {
cwav.rSound[i] = TJAPlayer3.SoundManager.tCreateSound(str, ESoundGroup.SongPlayback); cwav.rSound[i] = OpenTaiko.SoundManager.tCreateSound(str, ESoundGroup.SongPlayback);
if (!TJAPlayer3.ConfigIni.bDynamicBassMixerManagement) { if (!OpenTaiko.ConfigIni.bDynamicBassMixerManagement) {
cwav.rSound[i].AddBassSoundFromMixer(); cwav.rSound[i].AddBassSoundFromMixer();
} }
if (TJAPlayer3.ConfigIni.bLog作成解放ログ出力) { if (OpenTaiko.ConfigIni.bLog作成解放ログ出力) {
Trace.TraceInformation("サウンドを作成しました。({3})({0})({1})({2}bytes)", cwav.strコメント文, str, Trace.TraceInformation("サウンドを作成しました。({3})({0})({1})({2}bytes)", cwav.strコメント文, str,
cwav.rSound[0].SoundBufferSize, cwav.rSound[0].IsStreamPlay ? "Stream" : "OnMemory"); cwav.rSound[0].SoundBufferSize, cwav.rSound[0].IsStreamPlay ? "Stream" : "OnMemory");
} }
@ -1454,7 +1454,7 @@ namespace TJAPlayer3 {
} }
public static void tManageKusudama(CDTX[] dtxarr) { public static void tManageKusudama(CDTX[] dtxarr) {
if (TJAPlayer3.ConfigIni.nPlayerCount == 1) return; if (OpenTaiko.ConfigIni.nPlayerCount == 1) return;
// Replace non-shared kusudamas by balloons // Replace non-shared kusudamas by balloons
#region [Sync check] #region [Sync check]
@ -1521,8 +1521,8 @@ namespace TJAPlayer3 {
public void tApplyFunMods(int player = 0) { public void tApplyFunMods(int player = 0) {
Random rnd = new System.Random(); Random rnd = new System.Random();
var eFun = TJAPlayer3.ConfigIni.nFunMods[TJAPlayer3.GetActualPlayer(player)]; var eFun = OpenTaiko.ConfigIni.nFunMods[OpenTaiko.GetActualPlayer(player)];
var chara = TJAPlayer3.Tx.Characters[TJAPlayer3.SaveFileInstances[TJAPlayer3.GetActualPlayer(player)].data.Character]; var chara = OpenTaiko.Tx.Characters[OpenTaiko.SaveFileInstances[OpenTaiko.GetActualPlayer(player)].data.Character];
var bombFactor = Math.Max(1, Math.Min(100, chara.effect.BombFactor)); var bombFactor = Math.Max(1, Math.Min(100, chara.effect.BombFactor));
var fuseRollFactor = Math.Max(0, Math.Min(100, chara.effect.FuseRollFactor)); var fuseRollFactor = Math.Max(0, Math.Min(100, chara.effect.FuseRollFactor));
@ -1563,7 +1563,7 @@ namespace TJAPlayer3 {
Random rnd = new System.Random(); Random rnd = new System.Random();
var eRandom = TJAPlayer3.ConfigIni.eRandom[TJAPlayer3.GetActualPlayer(player)]; var eRandom = OpenTaiko.ConfigIni.eRandom[OpenTaiko.GetActualPlayer(player)];
switch (eRandom) { switch (eRandom) {
case ERandomMode.MIRROR: case ERandomMode.MIRROR:
@ -1663,7 +1663,7 @@ namespace TJAPlayer3 {
break; break;
} }
if (TJAPlayer3.Tx.Puchichara[PuchiChara.tGetPuchiCharaIndexByName(TJAPlayer3.GetActualPlayer(nPlayerSide))].effect.AllPurple) { if (OpenTaiko.Tx.Puchichara[PuchiChara.tGetPuchiCharaIndexByName(OpenTaiko.GetActualPlayer(nPlayerSide))].effect.AllPurple) {
foreach (var chip in this.listChip) { foreach (var chip in this.listChip) {
switch (chip.nチャンネル番号) { switch (chip.nチャンネル番号) {
case 0x13: case 0x13:
@ -1702,7 +1702,7 @@ namespace TJAPlayer3 {
#region [ ] #region [ ]
public void tチップの再生(CChip pChip, long n再生開始システム時刻ms) { public void tチップの再生(CChip pChip, long n再生開始システム時刻ms) {
if (TJAPlayer3.ConfigIni.b演奏速度が一倍速であるとき以外音声を再生しない && TJAPlayer3.ConfigIni.nSongSpeed != 20) if (OpenTaiko.ConfigIni.b演奏速度が一倍速であるとき以外音声を再生しない && OpenTaiko.ConfigIni.nSongSpeed != 20)
return; return;
if (pChip.n整数値_内部番号 >= 0) { if (pChip.n整数値_内部番号 >= 0) {
@ -1714,13 +1714,13 @@ namespace TJAPlayer3 {
} }
CSound sound = wc.rSound[index]; CSound sound = wc.rSound[index];
if (sound != null) { if (sound != null) {
sound.PlaySpeed = TJAPlayer3.ConfigIni.SongPlaybackSpeed; sound.PlaySpeed = OpenTaiko.ConfigIni.SongPlaybackSpeed;
// 再生速度によって、WASAPI/ASIOで使う使用mixerが決まるため、付随情報の設定(音量/PAN)は、再生速度の設定後に行う // 再生速度によって、WASAPI/ASIOで使う使用mixerが決まるため、付随情報の設定(音量/PAN)は、再生速度の設定後に行う
// 2018-08-27 twopointzero - DON'T attempt to load (or queue scanning) loudness metadata here. // 2018-08-27 twopointzero - DON'T attempt to load (or queue scanning) loudness metadata here.
// This code is called right after loading the .tja, and that code // This code is called right after loading the .tja, and that code
// will have just made such an attempt. // will have just made such an attempt.
TJAPlayer3.SongGainController.Set(wc.SongVol, wc.SongLoudnessMetadata, sound); OpenTaiko.SongGainController.Set(wc.SongVol, wc.SongLoudnessMetadata, sound);
sound.SoundPosition = wc.n位置; sound.SoundPosition = wc.n位置;
sound.PlayStart(); sound.PlayStart();
@ -1812,12 +1812,12 @@ namespace TJAPlayer3 {
//TimeSpan span; //TimeSpan span;
string[] files = Directory.GetFiles(this.strフォルダ名, "*.tja"); string[] files = Directory.GetFiles(this.strフォルダ名, "*.tja");
StreamReader reader = new StreamReader(strファイル名, Encoding.GetEncoding(TJAPlayer3.sEncType)); StreamReader reader = new StreamReader(strファイル名, Encoding.GetEncoding(OpenTaiko.sEncType));
string str2 = reader.ReadToEnd(); string str2 = reader.ReadToEnd();
reader.Close(); reader.Close();
//StreamReader reader2 = new StreamReader( this.strフォルダ名 + "test.tja", Encoding.GetEncoding( "Shift_JIS" ) ); //StreamReader reader2 = new StreamReader( this.strフォルダ名 + "test.tja", Encoding.GetEncoding( "Shift_JIS" ) );
StreamReader reader2 = new StreamReader(files[0], Encoding.GetEncoding(TJAPlayer3.sEncType)); StreamReader reader2 = new StreamReader(files[0], Encoding.GetEncoding(OpenTaiko.sEncType));
string str3 = reader2.ReadToEnd(); string str3 = reader2.ReadToEnd();
reader2.Close(); reader2.Close();
@ -1831,7 +1831,7 @@ namespace TJAPlayer3 {
//DateTime timeBeginLoad = DateTime.Now; //DateTime timeBeginLoad = DateTime.Now;
//TimeSpan span; //TimeSpan span;
StreamReader reader = new StreamReader(strファイル名, Encoding.GetEncoding(TJAPlayer3.sEncType)); StreamReader reader = new StreamReader(strファイル名, Encoding.GetEncoding(OpenTaiko.sEncType));
string str2 = reader.ReadToEnd(); string str2 = reader.ReadToEnd();
reader.Close(); reader.Close();
@ -2442,7 +2442,7 @@ namespace TJAPlayer3 {
} }
} }
if (this.db再生速度 > 0.0) { if (this.db再生速度 > 0.0) {
double _db再生速度 = (TJAPlayer3.DTXVmode.Enabled) ? this.dbDTXVPlaySpeed : this.db再生速度; double _db再生速度 = (OpenTaiko.DTXVmode.Enabled) ? this.dbDTXVPlaySpeed : this.db再生速度;
foreach (CChip chip in this.listChip) { foreach (CChip chip in this.listChip) {
chip.n発声時刻ms = (int)(((double)chip.n発声時刻ms) / _db再生速度); chip.n発声時刻ms = (int)(((double)chip.n発声時刻ms) / _db再生速度);
chip.db発声時刻ms = (((double)chip.n発声時刻ms) / _db再生速度); chip.db発声時刻ms = (((double)chip.n発声時刻ms) / _db再生速度);
@ -2520,7 +2520,7 @@ namespace TJAPlayer3 {
#endregion #endregion
#region [ bLogDTX詳細ログ出力 ] #region [ bLogDTX詳細ログ出力 ]
if (TJAPlayer3.ConfigIni.bLogDTX詳細ログ出力) { if (OpenTaiko.ConfigIni.bLogDTX詳細ログ出力) {
foreach (CWAV cwav in this.listWAV.Values) { foreach (CWAV cwav in this.listWAV.Values) {
Trace.TraceInformation(cwav.ToString()); Trace.TraceInformation(cwav.ToString());
} }
@ -2870,7 +2870,7 @@ namespace TJAPlayer3 {
//指定したコースの譜面の命令を消去する。 //指定したコースの譜面の命令を消去する。
strSplitした譜面[n読み込むコース] = CDTXStyleExtractor.tセッション譜面がある( strSplitした譜面[n読み込むコース] = CDTXStyleExtractor.tセッション譜面がある(
strSplitした譜面[n読み込むコース], strSplitした譜面[n読み込むコース],
TJAPlayer3.ConfigIni.nPlayerCount > 1 ? (this.nPlayerSide + 1) : 0, OpenTaiko.ConfigIni.nPlayerCount > 1 ? (this.nPlayerSide + 1) : 0,
this.strファイル名の絶対パス); this.strファイル名の絶対パス);
//命令をすべて消去した譜面 //命令をすべて消去した譜面
@ -5047,11 +5047,11 @@ namespace TJAPlayer3 {
if (this.bSession譜面を読み込む) { if (this.bSession譜面を読み込む) {
if (!this.listOriginalTextures.ContainsKey(chip.strTargetTxName)) { if (!this.listOriginalTextures.ContainsKey(chip.strTargetTxName)) {
TJAPlayer3.Tx.trackedTextures.TryGetValue(chip.strTargetTxName, out CTexture oldTx); OpenTaiko.Tx.trackedTextures.TryGetValue(chip.strTargetTxName, out CTexture oldTx);
this.listOriginalTextures.Add(chip.strTargetTxName, new CTexture(oldTx)); this.listOriginalTextures.Add(chip.strTargetTxName, new CTexture(oldTx));
} }
if (!this.listTextures.ContainsKey(chip.strNewPath)) { if (!this.listTextures.ContainsKey(chip.strNewPath)) {
CTexture tx = TJAPlayer3.Tx.TxCSong(chip.strNewPath); CTexture tx = OpenTaiko.Tx.TxCSong(chip.strNewPath);
this.listTextures.Add(chip.strNewPath, tx); this.listTextures.Add(chip.strNewPath, tx);
} }
} }
@ -5399,10 +5399,10 @@ namespace TJAPlayer3 {
this.bBARLINECUE[0] = 0; this.bBARLINECUE[0] = 0;
this.listChip.Add(chip); this.listChip.Add(chip);
} else if (command == "#LYRIC" && !usingLyricsFile && TJAPlayer3.ConfigIni.nPlayerCount < 4) // Do not parse LYRIC tags if a lyric file is already loaded } else if (command == "#LYRIC" && !usingLyricsFile && OpenTaiko.ConfigIni.nPlayerCount < 4) // Do not parse LYRIC tags if a lyric file is already loaded
{ {
if (TJAPlayer3.r現在のステージ.eStageID == CStage.EStage.SongLoading)//起動時に重たくなってしまう問題の修正用 if (OpenTaiko.r現在のステージ.eStageID == CStage.EStage.SongLoading)//起動時に重たくなってしまう問題の修正用
this.listLyric.Add(this.pf歌詞フォント.DrawText(argument, TJAPlayer3.Skin.Game_Lyric_ForeColor, TJAPlayer3.Skin.Game_Lyric_BackColor, null, 30)); this.listLyric.Add(this.pf歌詞フォント.DrawText(argument, OpenTaiko.Skin.Game_Lyric_ForeColor, OpenTaiko.Skin.Game_Lyric_BackColor, null, 30));
var chip = new CChip(); var chip = new CChip();
@ -6093,7 +6093,7 @@ namespace TJAPlayer3 {
/// </summary> /// </summary>
/// <param name="InputText"></param> /// <param name="InputText"></param>
private void t難易度別ヘッダ(string InputText) { private void t難易度別ヘッダ(string InputText) {
if (TJAPlayer3.actEnumSongs != null && TJAPlayer3.actEnumSongs.IsDeActivated) { if (OpenTaiko.actEnumSongs != null && OpenTaiko.actEnumSongs.IsDeActivated) {
if (InputText.Equals("#NMSCROLL")) { if (InputText.Equals("#NMSCROLL")) {
eScrollMode = EScrollMode.Normal; eScrollMode = EScrollMode.Normal;
} else if (InputText.Equals("#HBSCROLL")) { } else if (InputText.Equals("#HBSCROLL")) {
@ -6183,9 +6183,9 @@ namespace TJAPlayer3 {
} }
if (this.nScoreModeTmp == 99) //2017.01.28 DD SCOREMODEを入力していない場合のみConfigで設定したモードにする if (this.nScoreModeTmp == 99) //2017.01.28 DD SCOREMODEを入力していない場合のみConfigで設定したモードにする
{ {
this.nScoreModeTmp = TJAPlayer3.ConfigIni.nScoreMode; this.nScoreModeTmp = OpenTaiko.ConfigIni.nScoreMode;
} }
if (TJAPlayer3.ConfigIni.nScoreMode == 3 && !this.b配点が指定されている[2, this.n参照中の難易度]) { //2017.06.04 kairera0467 if (OpenTaiko.ConfigIni.nScoreMode == 3 && !this.b配点が指定されている[2, this.n参照中の難易度]) { //2017.06.04 kairera0467
this.nScoreModeTmp = 3; this.nScoreModeTmp = 3;
} }
} }
@ -6462,7 +6462,7 @@ namespace TJAPlayer3 {
//tbOFFSET.Text = strCommandParam; //tbOFFSET.Text = strCommandParam;
// Substract global offset // Substract global offset
this.nOFFSET += ((this.bOFFSETの値がマイナスである == true) ? -TJAPlayer3.ConfigIni.nGlobalOffsetMs : TJAPlayer3.ConfigIni.nGlobalOffsetMs); this.nOFFSET += ((this.bOFFSETの値がマイナスである == true) ? -OpenTaiko.ConfigIni.nGlobalOffsetMs : OpenTaiko.ConfigIni.nGlobalOffsetMs);
} else if (strCommandName.Equals("MOVIEOFFSET")) { } else if (strCommandName.Equals("MOVIEOFFSET")) {
this.nMOVIEOFFSET = (int)(Convert.ToDouble(strCommandParam) * 1000); this.nMOVIEOFFSET = (int)(Convert.ToDouble(strCommandParam) * 1000);
this.bMOVIEOFFSETの値がマイナスである = this.nMOVIEOFFSET < 0 ? true : false; this.bMOVIEOFFSETの値がマイナスである = this.nMOVIEOFFSET < 0 ? true : false;
@ -6668,7 +6668,7 @@ namespace TJAPlayer3 {
if (!string.IsNullOrEmpty(strCommandParam)) { if (!string.IsNullOrEmpty(strCommandParam)) {
this.bHIDDENBRANCH = true; this.bHIDDENBRANCH = true;
} }
} else if (strCommandName.Equals("LYRICS") && !usingLyricsFile && TJAPlayer3.ConfigIni.nPlayerCount < 4) { } else if (strCommandName.Equals("LYRICS") && !usingLyricsFile && OpenTaiko.ConfigIni.nPlayerCount < 4) {
if (!string.IsNullOrEmpty(strCommandParam)) { if (!string.IsNullOrEmpty(strCommandParam)) {
string[] files = SplitComma(strCommandParam); string[] files = SplitComma(strCommandParam);
string[] filePaths = new string[files.Length]; string[] filePaths = new string[files.Length];
@ -6677,7 +6677,7 @@ namespace TJAPlayer3 {
if (File.Exists(filePaths[i])) { if (File.Exists(filePaths[i])) {
try { try {
if (TJAPlayer3.r現在のステージ.eStageID == CStage.EStage.SongLoading) { if (OpenTaiko.r現在のステージ.eStageID == CStage.EStage.SongLoading) {
if (filePaths[i].EndsWith(".vtt")) { if (filePaths[i].EndsWith(".vtt")) {
using (VTTParser parser = new VTTParser()) { using (VTTParser parser = new VTTParser()) {
this.listLyric2.AddRange(parser.ParseVTTFile(filePaths[i], 0, 0)); this.listLyric2.AddRange(parser.ParseVTTFile(filePaths[i], 0, 0));
@ -6696,7 +6696,7 @@ namespace TJAPlayer3 {
} }
} }
} }
} else if (strCommandName.Equals("LYRICFILE") && !usingLyricsFile && TJAPlayer3.ConfigIni.nPlayerCount < 4) { } else if (strCommandName.Equals("LYRICFILE") && !usingLyricsFile && OpenTaiko.ConfigIni.nPlayerCount < 4) {
if (!string.IsNullOrEmpty(strCommandParam)) { if (!string.IsNullOrEmpty(strCommandParam)) {
string[] strFiles = SplitComma(strCommandParam); string[] strFiles = SplitComma(strCommandParam);
string[] strFilePath = new string[strFiles.Length]; string[] strFilePath = new string[strFiles.Length];
@ -6704,7 +6704,7 @@ namespace TJAPlayer3 {
strFilePath[index] = this.strフォルダ名 + strFiles[index]; strFilePath[index] = this.strフォルダ名 + strFiles[index];
if (File.Exists(strFilePath[index])) { if (File.Exists(strFilePath[index])) {
try { try {
if (TJAPlayer3.r現在のステージ.eStageID == CStage.EStage.SongLoading)//起動時に重たくなってしまう問題の修正用 if (OpenTaiko.r現在のステージ.eStageID == CStage.EStage.SongLoading)//起動時に重たくなってしまう問題の修正用
this.LyricFileParser(strFilePath[index], index); this.LyricFileParser(strFilePath[index], index);
this.bLyrics = true; this.bLyrics = true;
this.usingLyricsFile = true; this.usingLyricsFile = true;
@ -6718,7 +6718,7 @@ namespace TJAPlayer3 {
} }
if (this.nScoreModeTmp == 99) { if (this.nScoreModeTmp == 99) {
//2017.01.28 DD //2017.01.28 DD
this.nScoreModeTmp = TJAPlayer3.ConfigIni.nScoreMode; this.nScoreModeTmp = OpenTaiko.ConfigIni.nScoreMode;
} }
} }
/// <summary> /// <summary>
@ -6810,7 +6810,7 @@ namespace TJAPlayer3 {
for (int listindex = 0; listindex < list.Count; listindex++) { for (int listindex = 0; listindex < list.Count; listindex++) {
STLYRIC stlrc; STLYRIC stlrc;
stlrc.Text = strSplit後[i]; stlrc.Text = strSplit後[i];
stlrc.TextTex = this.pf歌詞フォント.DrawText(strSplit後[i], TJAPlayer3.Skin.Game_Lyric_ForeColor, TJAPlayer3.Skin.Game_Lyric_BackColor, null, 30); stlrc.TextTex = this.pf歌詞フォント.DrawText(strSplit後[i], OpenTaiko.Skin.Game_Lyric_ForeColor, OpenTaiko.Skin.Game_Lyric_BackColor, null, 30);
stlrc.Time = list[listindex]; stlrc.Time = list[listindex];
stlrc.index = ordnumber; stlrc.index = ordnumber;
this.listLyric2.Add(stlrc); this.listLyric2.Add(stlrc);
@ -7096,7 +7096,7 @@ namespace TJAPlayer3 {
/// サウンドミキサーにサウンドを登録_削除する時刻を事前に算出する /// サウンドミキサーにサウンドを登録_削除する時刻を事前に算出する
/// </summary> /// </summary>
public void PlanToAddMixerChannel() { public void PlanToAddMixerChannel() {
if (TJAPlayer3.SoundManager.GetCurrentSoundDeviceType() == "DirectSound") // DShowでの再生の場合はミキシング負荷が高くないため、 if (OpenTaiko.SoundManager.GetCurrentSoundDeviceType() == "DirectSound") // DShowでの再生の場合はミキシング負荷が高くないため、
{ // チップのライフタイム管理を行わない { // チップのライフタイム管理を行わない
return; return;
} }
@ -7178,7 +7178,7 @@ namespace TJAPlayer3 {
int duration = 0; int duration = 0;
if (listWAV.TryGetValue(pChip.n整数値_内部番号, out CDTX.CWAV wc)) { if (listWAV.TryGetValue(pChip.n整数値_内部番号, out CDTX.CWAV wc)) {
double _db再生速度 = (TJAPlayer3.DTXVmode.Enabled) ? this.dbDTXVPlaySpeed : this.db再生速度; double _db再生速度 = (OpenTaiko.DTXVmode.Enabled) ? this.dbDTXVPlaySpeed : this.db再生速度;
duration = (wc.rSound[0] == null) ? 0 : (int)(wc.rSound[0].TotalPlayTime / _db再生速度); // #23664 durationに再生速度が加味されておらず、低速再生でBGMが途切れる問題を修正 (発声時刻msは、DTX読み込み時に再生速度加味済) duration = (wc.rSound[0] == null) ? 0 : (int)(wc.rSound[0].TotalPlayTime / _db再生速度); // #23664 durationに再生速度が加味されておらず、低速再生でBGMが途切れる問題を修正 (発声時刻msは、DTX読み込み時に再生速度加味済)
} }
//Debug.WriteLine("duration=" + duration ); //Debug.WriteLine("duration=" + duration );
@ -7333,7 +7333,7 @@ namespace TJAPlayer3 {
// CActivity 実装 // CActivity 実装
private CCachedFontRenderer pf歌詞フォント; private CCachedFontRenderer pf歌詞フォント;
public override void Activate() { public override void Activate() {
if (TJAPlayer3.r現在のステージ.eStageID == CStage.EStage.SongLoading) { if (OpenTaiko.r現在のステージ.eStageID == CStage.EStage.SongLoading) {
//まさかこれが原因で曲の読み込みが停止するとは思わなかった... //まさかこれが原因で曲の読み込みが停止するとは思わなかった...
//どういうことかというとスキンを読み込むときに...いや厳密には //どういうことかというとスキンを読み込むときに...いや厳密には
//RefleshSkinを呼び出した後一回Disposeしてnullにして解放(その後にまたインスタンスを作成する)するんだけど //RefleshSkinを呼び出した後一回Disposeしてnullにして解放(その後にまたインスタンスを作成する)するんだけど
@ -7342,10 +7342,10 @@ namespace TJAPlayer3 {
//実は曲の読み込みはマルチスレッドで実行されているのでnullにした瞬間に参照される可能性も十分にある //実は曲の読み込みはマルチスレッドで実行されているのでnullにした瞬間に参照される可能性も十分にある
//それならアプリが終了するんじゃないかと思ったのだけどtryを使ってい曲の読み込みを続行していた... //それならアプリが終了するんじゃないかと思ったのだけどtryを使ってい曲の読み込みを続行していた...
//いやーマルチスレッドって難しいね! //いやーマルチスレッドって難しいね!
if (!string.IsNullOrEmpty(TJAPlayer3.Skin.Game_Lyric_FontName)) { if (!string.IsNullOrEmpty(OpenTaiko.Skin.Game_Lyric_FontName)) {
this.pf歌詞フォント = new CCachedFontRenderer(TJAPlayer3.Skin.Game_Lyric_FontName, TJAPlayer3.Skin.Game_Lyric_FontSize); this.pf歌詞フォント = new CCachedFontRenderer(OpenTaiko.Skin.Game_Lyric_FontName, OpenTaiko.Skin.Game_Lyric_FontSize);
} else { } else {
this.pf歌詞フォント = new CCachedFontRenderer(CFontRenderer.DefaultFontName, TJAPlayer3.Skin.Game_Lyric_FontSize); this.pf歌詞フォント = new CCachedFontRenderer(CFontRenderer.DefaultFontName, OpenTaiko.Skin.Game_Lyric_FontSize);
} }
} }
this.listWAV = new Dictionary<int, CWAV>(); this.listWAV = new Dictionary<int, CWAV>();
@ -7464,7 +7464,7 @@ namespace TJAPlayer3 {
foreach (KeyValuePair<string, CTexture> pair in this.listOriginalTextures) { foreach (KeyValuePair<string, CTexture> pair in this.listOriginalTextures) {
string txPath = pair.Key; string txPath = pair.Key;
CTexture originalTx = pair.Value; CTexture originalTx = pair.Value;
TJAPlayer3.Tx.trackedTextures.TryGetValue(txPath, out CTexture oldTx); OpenTaiko.Tx.trackedTextures.TryGetValue(txPath, out CTexture oldTx);
if (oldTx != originalTx) { if (oldTx != originalTx) {
oldTx.UpdateTexture(originalTx, originalTx.sz画像サイズ.Width, originalTx.sz画像サイズ.Height); oldTx.UpdateTexture(originalTx, originalTx.sz画像サイズ.Width, originalTx.sz画像サイズ.Height);
@ -7496,7 +7496,7 @@ namespace TJAPlayer3 {
} }
this.listVD = null; this.listVD = null;
} }
TJAPlayer3.tDisposeSafely(ref this.pf歌詞フォント); OpenTaiko.tDisposeSafely(ref this.pf歌詞フォント);
base.ReleaseManagedResource(); base.ReleaseManagedResource();
} }
} }
@ -7798,7 +7798,7 @@ namespace TJAPlayer3 {
if (!int.TryParse(strパラメータ, out n数値)) if (!int.TryParse(strパラメータ, out n数値))
n数値 = 1; n数値 = 1;
this.n現在の乱数 = TJAPlayer3.Random.Next(n数値) + 1; // 1数値 までの乱数を生成。 this.n現在の乱数 = OpenTaiko.Random.Next(n数値) + 1; // 1数値 までの乱数を生成。
} }
//----------------- //-----------------
#endregion #endregion
@ -8327,8 +8327,8 @@ namespace TJAPlayer3 {
/// 音源再生前の空白を追加するメソッド。 /// 音源再生前の空白を追加するメソッド。
/// </summary> /// </summary>
private void AddMusicPreTimeMs() { private void AddMusicPreTimeMs() {
this.dbNowTime += TJAPlayer3.ConfigIni.MusicPreTimeMs; this.dbNowTime += OpenTaiko.ConfigIni.MusicPreTimeMs;
this.dbNowBMScollTime += TJAPlayer3.ConfigIni.MusicPreTimeMs * this.dbNowBPM / 15000; this.dbNowBMScollTime += OpenTaiko.ConfigIni.MusicPreTimeMs * this.dbNowBPM / 15000;
} }
//----------------- //-----------------
#endregion #endregion

View File

@ -1,7 +1,7 @@
using System.Diagnostics; using System.Diagnostics;
using System.Text; using System.Text;
namespace TJAPlayer3 { namespace OpenTaiko {
internal static class CDTXCompanionFileFinder { internal static class CDTXCompanionFileFinder {
internal static string FindFileName( internal static string FindFileName(
string directory, string directory,
@ -25,7 +25,7 @@ namespace TJAPlayer3 {
// To begin finding the right file, we first need to get the raw // To begin finding the right file, we first need to get the raw
// bytes that would comprise the file name if encoded into // bytes that would comprise the file name if encoded into
// Shift-JIS. // Shift-JIS.
var encodedCompanionFileNameBytes = Encoding.GetEncoding(TJAPlayer3.sEncType).GetBytes(expectedCompanionFileName); var encodedCompanionFileNameBytes = Encoding.GetEncoding(OpenTaiko.sEncType).GetBytes(expectedCompanionFileName);
// Here we have a helper method that will be used to try finding // Here we have a helper method that will be used to try finding
// the file by interpreting the byte representation encoded // the file by interpreting the byte representation encoded

View File

@ -2,7 +2,7 @@
using System.Text; using System.Text;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
namespace TJAPlayer3 { namespace OpenTaiko {
/// <summary> /// <summary>
/// CDTXStyleExtractor determines if there is a session notation, and if there is then /// CDTXStyleExtractor determines if there is a session notation, and if there is then
/// it returns a sheet of music clipped according to the specified player Side. /// it returns a sheet of music clipped according to the specified player Side.

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
[Serializable] [Serializable]
public class CScoreIni { public class CScoreIni {
// プロパティ // プロパティ

View File

@ -1,7 +1,7 @@
using System.Diagnostics; using System.Diagnostics;
using Microsoft.Data.Sqlite; using Microsoft.Data.Sqlite;
namespace TJAPlayer3 { namespace OpenTaiko {
static class CScoreIni_Importer { static class CScoreIni_Importer {
public static string Status { get; private set; } = ""; public static string Status { get; private set; } = "";
private static readonly string langSUBTITLE = "SUBTITLE" + CLangManager.LangInstance.Id.ToUpper(); private static readonly string langSUBTITLE = "SUBTITLE" + CLangManager.LangInstance.Id.ToUpper();
@ -18,7 +18,7 @@ namespace TJAPlayer3 {
Status = "Searching for scores..."; Status = "Searching for scores...";
List<string> _scoreFiles = new List<string>(); List<string> _scoreFiles = new List<string>();
foreach (string path in TJAPlayer3.ConfigIni.strSongsPath.Split(';', StringSplitOptions.RemoveEmptyEntries)) { foreach (string path in OpenTaiko.ConfigIni.strSongsPath.Split(';', StringSplitOptions.RemoveEmptyEntries)) {
_scoreFiles.AddRange(Directory.GetFiles(path, "*.score.ini", SearchOption.AllDirectories)); _scoreFiles.AddRange(Directory.GetFiles(path, "*.score.ini", SearchOption.AllDirectories));
} }
Trace.TraceInformation($"{_scoreFiles.Count} score.ini files have been found. Beginning import."); Trace.TraceInformation($"{_scoreFiles.Count} score.ini files have been found. Beginning import.");
@ -239,21 +239,21 @@ namespace TJAPlayer3 {
private static string GetTJAFile(string path) { private static string GetTJAFile(string path) {
FileInfo info = new FileInfo(path); FileInfo info = new FileInfo(path);
if (info.FullName.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[0]}.score.ini")) return info.FullName.Replace($"{TJAPlayer3.ConfigIni.sSaveFile[0]}.score.ini", ""); if (info.FullName.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[0]}.score.ini")) return info.FullName.Replace($"{OpenTaiko.ConfigIni.sSaveFile[0]}.score.ini", "");
if (info.FullName.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[1]}.score.ini")) return info.FullName.Replace($"{TJAPlayer3.ConfigIni.sSaveFile[1]}.score.ini", ""); if (info.FullName.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[1]}.score.ini")) return info.FullName.Replace($"{OpenTaiko.ConfigIni.sSaveFile[1]}.score.ini", "");
if (info.FullName.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[2]}.score.ini")) return info.FullName.Replace($"{TJAPlayer3.ConfigIni.sSaveFile[2]}.score.ini", ""); if (info.FullName.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[2]}.score.ini")) return info.FullName.Replace($"{OpenTaiko.ConfigIni.sSaveFile[2]}.score.ini", "");
if (info.FullName.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[3]}.score.ini")) return info.FullName.Replace($"{TJAPlayer3.ConfigIni.sSaveFile[3]}.score.ini", ""); if (info.FullName.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[3]}.score.ini")) return info.FullName.Replace($"{OpenTaiko.ConfigIni.sSaveFile[3]}.score.ini", "");
if (info.FullName.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[4]}.score.ini")) return info.FullName.Replace($"{TJAPlayer3.ConfigIni.sSaveFile[4]}.score.ini", ""); if (info.FullName.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[4]}.score.ini")) return info.FullName.Replace($"{OpenTaiko.ConfigIni.sSaveFile[4]}.score.ini", "");
return info.FullName.Replace(".score.ini", ""); return info.FullName.Replace(".score.ini", "");
} }
private static int GetPlayerId(string path) { private static int GetPlayerId(string path) {
FileInfo info = new FileInfo(path); FileInfo info = new FileInfo(path);
if (info.Name.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[0]}.score.ini")) return 0; if (info.Name.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[0]}.score.ini")) return 0;
if (info.Name.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[1]}.score.ini")) return 1; if (info.Name.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[1]}.score.ini")) return 1;
if (info.Name.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[2]}.score.ini")) return 2; if (info.Name.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[2]}.score.ini")) return 2;
if (info.Name.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[3]}.score.ini")) return 3; if (info.Name.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[3]}.score.ini")) return 3;
if (info.Name.EndsWith($"{TJAPlayer3.ConfigIni.sSaveFile[4]}.score.ini")) return 4; if (info.Name.EndsWith($"{OpenTaiko.ConfigIni.sSaveFile[4]}.score.ini")) return 4;
return 0; return 0;
} }
} }

View File

@ -1,6 +1,6 @@
using System.Drawing; using System.Drawing;
namespace TJAPlayer3 { namespace OpenTaiko {
[Serializable] [Serializable]
internal class CSongListNode { internal class CSongListNode {
// プロパティ // プロパティ

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
[Serializable()] [Serializable()]
internal class CSongUniqueID { internal class CSongUniqueID {
public CSongUniqueID(string path) { public CSongUniqueID(string path) {

View File

@ -1,9 +1,9 @@
using System.Diagnostics; using System.Diagnostics;
using System.Security.Cryptography; using System.Security.Cryptography;
using System.Text; using System.Text;
using TJAPlayer3.C曲リストードComparers; using OpenTaiko.C曲リストードComparers;
namespace TJAPlayer3 { namespace OpenTaiko {
[Serializable] [Serializable]
internal class CSongs管理 { internal class CSongs管理 {
// プロパティ // プロパティ
@ -86,9 +86,9 @@ namespace TJAPlayer3 {
public void UpdateDownloadBox() { public void UpdateDownloadBox() {
CSongListNode downloadBox = null; CSongListNode downloadBox = null;
for (int i = 0; i < TJAPlayer3.Songs管理.list曲ルート.Count; i++) { for (int i = 0; i < OpenTaiko.Songs管理.list曲ルート.Count; i++) {
if (TJAPlayer3.Songs管理.list曲ルート[i].strジャンル == "Download") { if (OpenTaiko.Songs管理.list曲ルート[i].strジャンル == "Download") {
downloadBox = TJAPlayer3.Songs管理.list曲ルート[i]; downloadBox = OpenTaiko.Songs管理.list曲ルート[i];
if (downloadBox.rParentNode != null) downloadBox = downloadBox.rParentNode; if (downloadBox.rParentNode != null) downloadBox = downloadBox.rParentNode;
} }
@ -96,7 +96,7 @@ namespace TJAPlayer3 {
if (downloadBox != null && downloadBox.list子リスト != null) { if (downloadBox != null && downloadBox.list子リスト != null) {
var flatten = TJAPlayer3.stageSongSelect.actSongList.flattenList(downloadBox.list子リスト); var flatten = OpenTaiko.stageSongSelect.actSongList.flattenList(downloadBox.list子リスト);
// Works because flattenList creates a new List // Works because flattenList creates a new List
for (int i = 0; i < downloadBox.list子リスト.Count; i++) { for (int i = 0; i < downloadBox.list子リスト.Count; i++) {
@ -143,7 +143,7 @@ namespace TJAPlayer3 {
DirectoryInfo info = new DirectoryInfo(str基点フォルダ); DirectoryInfo info = new DirectoryInfo(str基点フォルダ);
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) if (OpenTaiko.ConfigIni.bLog曲検索ログ出力)
Trace.TraceInformation("基点フォルダ: " + str基点フォルダ); Trace.TraceInformation("基点フォルダ: " + str基点フォルダ);
#region [ a. set.def 1tjaファイル無制限] #region [ a. set.def 1tjaファイル無制限]
@ -151,7 +151,7 @@ namespace TJAPlayer3 {
string path = str基点フォルダ + "set.def"; string path = str基点フォルダ + "set.def";
if (File.Exists(path)) { if (File.Exists(path)) {
new FileInfo(path); new FileInfo(path);
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) { if (OpenTaiko.ConfigIni.bLog曲検索ログ出力) {
Trace.TraceInformation("set.def検出 : {0}", path); Trace.TraceInformation("set.def検出 : {0}", path);
Trace.Indent(); Trace.Indent();
} }
@ -260,7 +260,7 @@ namespace TJAPlayer3 {
#endregion #endregion
} }
} finally { } finally {
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) { if (OpenTaiko.ConfigIni.bLog曲検索ログ出力) {
Trace.Unindent(); Trace.Unindent();
} }
} }
@ -428,36 +428,36 @@ namespace TJAPlayer3 {
switch (CStrジャンルtoNum.ForAC15(c曲リストード.strジャンル)) { switch (CStrジャンルtoNum.ForAC15(c曲リストード.strジャンル)) {
case 0: case 0:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_JPOP; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_JPOP;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_JPOP; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_JPOP;
break; break;
case 1: case 1:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Anime; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Anime;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Anime; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Anime;
break; break;
case 2: case 2:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_VOCALOID; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_VOCALOID;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_VOCALOID; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_VOCALOID;
break; break;
case 3: case 3:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Children; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Children;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Children; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Children;
break; break;
case 4: case 4:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Variety; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Variety;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Variety; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Variety;
break; break;
case 5: case 5:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Classic; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Classic;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Classic; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Classic;
break; break;
case 6: case 6:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_GameMusic; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_GameMusic;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_GameMusic; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_GameMusic;
break; break;
case 7: case 7:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Namco; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Namco;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Namco; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Namco;
break; break;
default: default:
break; break;
@ -490,7 +490,7 @@ namespace TJAPlayer3 {
b = true; b = true;
} }
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) { if (OpenTaiko.ConfigIni.bLog曲検索ログ出力) {
// Trace.Indent(); // Trace.Indent();
// try // try
// { // {
@ -579,36 +579,36 @@ namespace TJAPlayer3 {
} }
switch (CStrジャンルtoNum.ForAC15(c曲リストード.strジャンル)) { switch (CStrジャンルtoNum.ForAC15(c曲リストード.strジャンル)) {
case 0: case 0:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_JPOP; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_JPOP;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_JPOP; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_JPOP;
break; break;
case 1: case 1:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Anime; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Anime;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Anime; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Anime;
break; break;
case 2: case 2:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_VOCALOID; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_VOCALOID;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_VOCALOID; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_VOCALOID;
break; break;
case 3: case 3:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Children; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Children;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Children; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Children;
break; break;
case 4: case 4:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Variety; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Variety;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Variety; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Variety;
break; break;
case 5: case 5:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Classic; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Classic;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Classic; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Classic;
break; break;
case 6: case 6:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_GameMusic; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_GameMusic;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_GameMusic; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_GameMusic;
break; break;
case 7: case 7:
c曲リストード.ForeColor = TJAPlayer3.Skin.SongSelect_ForeColor_Namco; c曲リストード.ForeColor = OpenTaiko.Skin.SongSelect_ForeColor_Namco;
c曲リストード.BackColor = TJAPlayer3.Skin.SongSelect_BackColor_Namco; c曲リストード.BackColor = OpenTaiko.Skin.SongSelect_BackColor_Namco;
break; break;
default: default:
break; break;
@ -632,7 +632,7 @@ namespace TJAPlayer3 {
c曲リストード.list子リスト = new List<CSongListNode>(); c曲リストード.list子リスト = new List<CSongListNode>();
listードリスト.Add(c曲リストード); listードリスト.Add(c曲リストード);
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) { if (OpenTaiko.ConfigIni.bLog曲検索ログ出力) {
Trace.TraceInformation("box.def検出 : {0}", infoDir.FullName + @$"{Path.DirectorySeparatorChar}box.def"); Trace.TraceInformation("box.def検出 : {0}", infoDir.FullName + @$"{Path.DirectorySeparatorChar}box.def");
Trace.Indent(); Trace.Indent();
try { try {
@ -753,7 +753,7 @@ namespace TJAPlayer3 {
//Debug.WriteLine( "★" + this.nファイルから反映できたスコア数 + " " + c曲リストード.arスコア[ i ].譜面情報.タイトル ); //Debug.WriteLine( "★" + this.nファイルから反映できたスコア数 + " " + c曲リストード.arスコア[ i ].譜面情報.タイトル );
#region [ ] #region [ ]
//----------------- //-----------------
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) { if (OpenTaiko.ConfigIni.bLog曲検索ログ出力) {
StringBuilder sb = new StringBuilder(0x400); StringBuilder sb = new StringBuilder(0x400);
sb.Append(string.Format("曲データファイルから譜面情報を転記しました。({0})", path)); sb.Append(string.Format("曲データファイルから譜面情報を転記しました。({0})", path));
sb.Append("(title=" + c曲リストード.arスコア[i]..); sb.Append("(title=" + c曲リストード.arスコア[i]..);
@ -795,8 +795,8 @@ namespace TJAPlayer3 {
//----------------- //-----------------
public void t曲リストへ後処理を適用する() { public void t曲リストへ後処理を適用する() {
listStrBoxDefSkinSubfolderFullName = new List<string>(); listStrBoxDefSkinSubfolderFullName = new List<string>();
if (TJAPlayer3.Skin.strBoxDefSkinSubfolders != null) { if (OpenTaiko.Skin.strBoxDefSkinSubfolders != null) {
foreach (string b in TJAPlayer3.Skin.strBoxDefSkinSubfolders) { foreach (string b in OpenTaiko.Skin.strBoxDefSkinSubfolders) {
listStrBoxDefSkinSubfolderFullName.Add(b); listStrBoxDefSkinSubfolderFullName.Add(b);
} }
} }
@ -845,7 +845,7 @@ namespace TJAPlayer3 {
var c曲リストード = list曲ルート[p]; var c曲リストード = list曲ルート[p];
if (c曲リストード.eード種別 == CSongListNode.ENodeType.BOX) { if (c曲リストード.eード種別 == CSongListNode.ENodeType.BOX) {
if (c曲リストード.strジャンル == "段位道場") { if (c曲リストード.strジャンル == "段位道場") {
if (TJAPlayer3.ConfigIni.bDanTowerHide) { if (OpenTaiko.ConfigIni.bDanTowerHide) {
list曲ルート.Remove(c曲リストード); list曲ルート.Remove(c曲リストード);
p--; p--;
} }
@ -863,7 +863,7 @@ namespace TJAPlayer3 {
} }
*/ */
} else if (c曲リストード.strジャンル == "太鼓タワー") { } else if (c曲リストード.strジャンル == "太鼓タワー") {
if (TJAPlayer3.ConfigIni.bDanTowerHide) { if (OpenTaiko.ConfigIni.bDanTowerHide) {
list曲ルート.Remove(c曲リストード); list曲ルート.Remove(c曲リストード);
p--; p--;
} }
@ -874,7 +874,7 @@ namespace TJAPlayer3 {
if (c曲リストード.list子リスト[i].arスコア[6] != null) { if (c曲リストード.list子リスト[i].arスコア[6] != null) {
list曲ルート_Dan.Add(c曲リストード.list子リスト[i]); list曲ルート_Dan.Add(c曲リストード.list子リスト[i]);
if (TJAPlayer3.ConfigIni.bDanTowerHide) if (OpenTaiko.ConfigIni.bDanTowerHide)
c曲リストード.list子リスト.Remove(c曲リストード.list子リスト[i]); c曲リストード.list子リスト.Remove(c曲リストード.list子リスト[i]);
continue; continue;
@ -882,7 +882,7 @@ namespace TJAPlayer3 {
if (c曲リストード.list子リスト[i].arスコア[5] != null) { if (c曲リストード.list子リスト[i].arスコア[5] != null) {
list曲ルート_Tower.Add(c曲リストード.list子リスト[i]); list曲ルート_Tower.Add(c曲リストード.list子リスト[i]);
if (TJAPlayer3.ConfigIni.bDanTowerHide) if (OpenTaiko.ConfigIni.bDanTowerHide)
c曲リストード.list子リスト.Remove(c曲リストード.list子リスト[i]); c曲リストード.list子リスト.Remove(c曲リストード.list子リスト[i]);
continue; continue;
@ -904,7 +904,7 @@ namespace TJAPlayer3 {
} }
#region [ skin名で比較してsystemスキンとboxdefスキンに重複があればboxdefスキン側を削除する ] #region [ skin名で比較してsystemスキンとboxdefスキンに重複があればboxdefスキン側を削除する ]
string[] systemSkinNames = CSkin.GetSkinName(TJAPlayer3.Skin.strSystemSkinSubfolders); string[] systemSkinNames = CSkin.GetSkinName(OpenTaiko.Skin.strSystemSkinSubfolders);
List<string> l = new List<string>(listStrBoxDefSkinSubfolderFullName); List<string> l = new List<string>(listStrBoxDefSkinSubfolderFullName);
foreach (string boxdefSkinSubfolderFullName in l) { foreach (string boxdefSkinSubfolderFullName in l) {
if (Array.BinarySearch(systemSkinNames, if (Array.BinarySearch(systemSkinNames,
@ -916,7 +916,7 @@ namespace TJAPlayer3 {
#endregion #endregion
string[] ba = listStrBoxDefSkinSubfolderFullName.ToArray(); string[] ba = listStrBoxDefSkinSubfolderFullName.ToArray();
Array.Sort(ba); Array.Sort(ba);
TJAPlayer3.Skin.strBoxDefSkinSubfolders = ba; OpenTaiko.Skin.strBoxDefSkinSubfolders = ba;
} }
@ -934,11 +934,11 @@ namespace TJAPlayer3 {
if (isGlobal) { if (isGlobal) {
#region [ Sort nodes ] #region [ Sort nodes ]
//----------------------------- //-----------------------------
if (TJAPlayer3.ConfigIni.nDefaultSongSort == 0) { if (OpenTaiko.ConfigIni.nDefaultSongSort == 0) {
t曲リストのソート1_絶対パス順(); t曲リストのソート1_絶対パス順();
} else if (TJAPlayer3.ConfigIni.nDefaultSongSort == 1) { } else if (OpenTaiko.ConfigIni.nDefaultSongSort == 1) {
t曲リストのソート9_ジャンル順(, EInstrumentPad.TAIKO, 1, 0); t曲リストのソート9_ジャンル順(, EInstrumentPad.TAIKO, 1, 0);
} else if (TJAPlayer3.ConfigIni.nDefaultSongSort == 2) { } else if (OpenTaiko.ConfigIni.nDefaultSongSort == 2) {
t曲リストのソート9_ジャンル順(, EInstrumentPad.TAIKO, 2, 0); t曲リストのソート9_ジャンル順(, EInstrumentPad.TAIKO, 2, 0);
} }
//----------------------------- //-----------------------------
@ -955,11 +955,11 @@ namespace TJAPlayer3 {
#region [ Sort child nodes ] #region [ Sort child nodes ]
//----------------------------- //-----------------------------
if (TJAPlayer3.ConfigIni.nDefaultSongSort == 0) { if (OpenTaiko.ConfigIni.nDefaultSongSort == 0) {
t曲リストのソート1_絶対パス順(c曲リストード.list子リスト); t曲リストのソート1_絶対パス順(c曲リストード.list子リスト);
} else if (TJAPlayer3.ConfigIni.nDefaultSongSort == 1) { } else if (OpenTaiko.ConfigIni.nDefaultSongSort == 1) {
t曲リストのソート9_ジャンル順(c曲リストード.list子リスト, EInstrumentPad.TAIKO, 1, 0); t曲リストのソート9_ジャンル順(c曲リストード.list子リスト, EInstrumentPad.TAIKO, 1, 0);
} else if (TJAPlayer3.ConfigIni.nDefaultSongSort == 2) { } else if (OpenTaiko.ConfigIni.nDefaultSongSort == 2) {
t曲リストのソート9_ジャンル順(c曲リストード.list子リスト, EInstrumentPad.TAIKO, 2, 0); t曲リストのソート9_ジャンル順(c曲リストード.list子リスト, EInstrumentPad.TAIKO, 2, 0);
} }
//----------------------------- //-----------------------------
@ -986,7 +986,7 @@ namespace TJAPlayer3 {
if ((c曲リストード.arスコア[j] != null) && !string.IsNullOrEmpty(c曲リストード.arスコア[j]..)) { if ((c曲リストード.arスコア[j] != null) && !string.IsNullOrEmpty(c曲リストード.arスコア[j]..)) {
c曲リストード.ldTitle = new CLocalizationData(); c曲リストード.ldTitle = new CLocalizationData();
if (TJAPlayer3.ConfigIni.bLog曲検索ログ出力) if (OpenTaiko.ConfigIni.bLog曲検索ログ出力)
Trace.TraceInformation("タイトルを設定しました。(nID#{0:D3}, title={1})", c曲リストード.nID, c曲リストード.ldTitle.GetString("")); Trace.TraceInformation("タイトルを設定しました。(nID#{0:D3}, title={1})", c曲リストード.nID, c曲リストード.ldTitle.GetString(""));
break; break;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3 { namespace OpenTaiko {
internal static class CStrジャンルtoNum { internal static class CStrジャンルtoNum {
internal static int ForAC8_14(string strジャンル) { internal static int ForAC8_14(string strジャンル) {
switch (strジャンル) { switch (strジャンル) {

View File

@ -2,7 +2,7 @@
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using FDK; using FDK;
namespace TJAPlayer3 { namespace OpenTaiko {
[Serializable] [Serializable]
internal class Cスコア { internal class Cスコア {
// プロパティ // プロパティ

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class ComparerChain<T> : IComparer<T> where T : class { internal sealed class ComparerChain<T> : IComparer<T> where T : class {
private readonly IComparer<T>[] _comparers; private readonly IComparer<T>[] _comparers;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerAC15 : IComparer<CSongListNode> { internal sealed class C曲リストードComparerAC15 : IComparer<CSongListNode> {
public int Compare(CSongListNode n1, CSongListNode n2) { public int Compare(CSongListNode n1, CSongListNode n2) {
return CStrジャンルtoNum.ForAC15(n1.strジャンル).CompareTo(CStrジャンルtoNum.ForAC15(n2.strジャンル)); return CStrジャンルtoNum.ForAC15(n1.strジャンル).CompareTo(CStrジャンルtoNum.ForAC15(n2.strジャンル));

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerAC8_14 : IComparer<CSongListNode> { internal sealed class C曲リストードComparerAC8_14 : IComparer<CSongListNode> {
public int Compare(CSongListNode n1, CSongListNode n2) { public int Compare(CSongListNode n1, CSongListNode n2) {
return CStrジャンルtoNum.ForAC8_14(n1.strジャンル).CompareTo(CStrジャンルtoNum.ForAC8_14(n2.strジャンル)); return CStrジャンルtoNum.ForAC8_14(n1.strジャンル).CompareTo(CStrジャンルtoNum.ForAC8_14(n2.strジャンル));

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerLevel : IComparer<CSongListNode> { internal sealed class C曲リストードComparerLevel : IComparer<CSongListNode> {
private readonly int _order; private readonly int _order;
@ -18,7 +18,7 @@
} }
private int _diffOf(CSongListNode n1) { private int _diffOf(CSongListNode n1) {
return n1.nLevel[TJAPlayer3.stageSongSelect.actSongList.tFetchDifficulty(n1)]; return n1.nLevel[OpenTaiko.stageSongSelect.actSongList.tFetchDifficulty(n1)];
} }
} }
} }

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerLevelIcon : IComparer<CSongListNode> { internal sealed class C曲リストードComparerLevelIcon : IComparer<CSongListNode> {
private readonly int _order; private readonly int _order;
@ -18,7 +18,7 @@
} }
private int _diffOf(CSongListNode n1) { private int _diffOf(CSongListNode n1) {
return (int)n1.nLevelIcon[TJAPlayer3.stageSongSelect.actSongList.tFetchDifficulty(n1)]; return (int)n1.nLevelIcon[OpenTaiko.stageSongSelect.actSongList.tFetchDifficulty(n1)];
} }
} }
} }

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerSubtitle : IComparer<CSongListNode> { internal sealed class C曲リストードComparerSubtitle : IComparer<CSongListNode> {
private readonly int _order; private readonly int _order;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerタイトル : IComparer<CSongListNode> { internal sealed class C曲リストードComparerタイトル : IComparer<CSongListNode> {
private readonly int _order; private readonly int _order;

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparerード種別 : IComparer<CSongListNode> { internal sealed class C曲リストードComparerード種別 : IComparer<CSongListNode> {
public int Compare(CSongListNode x, CSongListNode y) { public int Compare(CSongListNode x, CSongListNode y) {
return ToComparable(x.eード種別).CompareTo(ToComparable(y.eード種別)); return ToComparable(x.eード種別).CompareTo(ToComparable(y.eード種別));

View File

@ -1,4 +1,4 @@
namespace TJAPlayer3.C曲リストードComparers { namespace OpenTaiko.C曲リストードComparers {
internal sealed class C曲リストードComparer絶対パス : IComparer<CSongListNode> { internal sealed class C曲リストードComparer絶対パス : IComparer<CSongListNode> {
private readonly int _order; private readonly int _order;

Some files were not shown because too many files have changed in this diff Show More