// コンストラクタ public CAct演奏Combo共通() { this.b活性化してない = true; // 180度分のジャンプY座標差分を取得。(0度: 0 → 90度:-15 → 180度: 0) for (int i = 0; i < 180; i++) { this.nジャンプ差分値[i] = (int)(-15.0 * Math.Sin((Math.PI * i) / 180.0)); } 演奏判定ライン座標 = new C演奏判定ライン座標共通(); }
public virtual int t進行描画(C演奏判定ライン座標共通 演奏判定ライン座標共通) { return(0); }
public override int t進行描画(C演奏判定ライン座標共通 演奏判定ライン座標) { if (!base.b活性化してない) { for (int i = 0; i < 12; i++) { if (!base.st状態[i].ct進行.b停止中) { base.st状態[i].ct進行.t進行(); if (base.st状態[i].ct進行.b終了値に達した) { base.st状態[i].ct進行.t停止(); base.st状態[i].b使用中 = false; } int num2 = base.st状態[i].ct進行.n現在の値; if (base.st状態[i].judge != E判定.Great) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 15; base.st状態[i].n透明度 = 0xff; } if ((base.st状態[i].judge != E判定.Miss) && (base.st状態[i].judge != E判定.Bad)) { if (num2 < 20) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 0; base.st状態[i].n透明度 = 0xff; } else if (num2 < 40) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 5; base.st状態[i].n透明度 = 0xff; } else if (num2 >= 60) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 10; base.st状態[i].n透明度 = 0xff; } else { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 15; base.st状態[i].n透明度 = 0xff; } } if (num2 < 20) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 0; base.st状態[i].n透明度 = 0xff; } else if (num2 < 40) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 5; base.st状態[i].n透明度 = 0xff; } else if (num2 >= 60) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 10; base.st状態[i].n透明度 = 0xff; } else { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 15; base.st状態[i].n透明度 = 0xff; } } } for (int j = 0; j < 12; j++) { if (!base.st状態[j].ct進行.b停止中) { if (TJAPlayer3.Tx.Judge != null) { int baseX = 370; //int baseY = 135; int baseY = TJAPlayer3.Skin.Game_Lane_Field_Y[base.st状態[j].nPlayer] - 53; int x = TJAPlayer3.Skin.Game_Lane_Field_X[0] - TJAPlayer3.Tx.Judge.szテクスチャサイズ.Width / 2; int y = (baseY + base.st状態[j].n相対Y座標); TJAPlayer3.Tx.Judge.t2D描画(TJAPlayer3.app.Device, x, y, base.st判定文字列[(int)base.st状態[j].judge].rc); } } } } return(0); }
public abstract void Start(int nLane, C演奏判定ライン座標共通 演奏判定ライン座標);
// メソッド public virtual void Start(int nLane, int n中央X, int n中央Y, C演奏判定ライン座標共通 演奏判定ライン座標) { }
public override int t進行描画(C演奏判定ライン座標共通 演奏判定ライン座標) { if (!base.b活性化してない) { for (int i = 0; i < 12; i++) { if (!base.st状態[i].ct進行.b停止中) { base.st状態[i].ct進行.t進行(); if (base.st状態[i].ct進行.b終了値に達した) { base.st状態[i].ct進行.t停止(); base.st状態[i].b使用中 = false; } int num2 = base.st状態[i].ct進行.n現在の値; if (base.st状態[i].judge != E判定.Great) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 15; base.st状態[i].n透明度 = 0xff; } if ((base.st状態[i].judge != E判定.Miss) && (base.st状態[i].judge != E判定.Bad)) { if (num2 < 20) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 0; base.st状態[i].n透明度 = 0xff; } else if (num2 < 40) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 5; base.st状態[i].n透明度 = 0xff; } else if (num2 >= 60) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 10; base.st状態[i].n透明度 = 0xff; } else { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 15; base.st状態[i].n透明度 = 0xff; } } if (num2 < 20) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 0; base.st状態[i].n透明度 = 0; } else if (num2 < 22.6) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 1; base.st状態[i].n透明度 = 0; } else if (num2 < 25.2) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 2; base.st状態[i].n透明度 = 0; } else if (num2 < 27.8) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 3; base.st状態[i].n透明度 = 0; } else if (num2 < 30.4) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 4; base.st状態[i].n透明度 = 0; } else if (num2 < 35.6) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 5; base.st状態[i].n透明度 = 0; } else if (num2 < 38.2) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 6; base.st状態[i].n透明度 = 0; } else if (num2 < 40.8) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 7; base.st状態[i].n透明度 = 0; } else if (num2 < 43.4) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 8; base.st状態[i].n透明度 = 0; } else if (num2 < 46) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 9; base.st状態[i].n透明度 = 0; } else if (num2 < 48.6) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 10; base.st状態[i].n透明度 = 0; } else if (num2 < 51.2) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 11; base.st状態[i].n透明度 = 0; } else if (num2 < 53.8) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 12; base.st状態[i].n透明度 = 0; } else if (num2 < 56.4) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 13; base.st状態[i].n透明度 = 0; } else if (num2 < 59) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 14; base.st状態[i].n透明度 = 0; } else if (num2 >= 60) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 15; base.st状態[i].n透明度 = 0; } else { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 20; base.st状態[i].n透明度 = 0; } } } for (int j = 0; j < 12; j++) { if (!base.st状態[j].ct進行.b停止中) { int baseX = 370; //int baseY = 135; int baseY = TJAPlayer3.Skin.nScrollFieldY[base.st状態[j].nPlayer] - 58; int x = TJAPlayer3.Skin.nScrollFieldX[0] - TJAPlayer3.Tx.Judge.szテクスチャサイズ.Width / 2; int y = (baseY + base.st状態[j].n相対Y座標); if (TJAPlayer3.Tx.Judge != null) { TJAPlayer3.Tx.Judge.t2D描画(TJAPlayer3.app.Device, x, y, base.st判定文字列[(int)base.st状態[j].judge].rc); } } } } return(0); }
public override int t進行描画(C演奏判定ライン座標共通 演奏判定ライン座標) { if (!base.b活性化してない) { for (int i = 0; i < 12; i++) { if (!base.st状態[i].ct進行.b停止中) { base.st状態[i].ct進行.t進行(); if (base.st状態[i].ct進行.b終了値に達した) { base.st状態[i].ct進行.t停止(); base.st状態[i].b使用中 = false; } int num2 = base.st状態[i].ct進行.n現在の値; if (base.st状態[i].judge != E判定.Great) { base.st状態[i].n相対X座標 = 0; base.st状態[i].n相対Y座標 = 0; base.st状態[i].n透明度 = 0xff; } if ((base.st状態[i].judge != E判定.Miss) && (base.st状態[i].judge != E判定.Bad)) { if (num2 < 5) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = 0; this.st状態[i].n透明度 = 0; } else if (num2 < 10) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -3; this.st状態[i].n透明度 = 0; } else if (num2 < 15) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -6; this.st状態[i].n透明度 = 0; } else if (num2 < 20) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -9; this.st状態[i].n透明度 = 255; } else if (num2 < 25) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -12; this.st状態[i].n透明度 = 0; } else if (num2 < 30) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -15; this.st状態[i].n透明度 = 0; } else if (num2 < 35) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -12; this.st状態[i].n透明度 = 0; } else if (num2 < 40) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -9; this.st状態[i].n透明度 = 0; } else if (num2 < 45) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -6; this.st状態[i].n透明度 = 0; } else if (num2 < 50) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -3; this.st状態[i].n透明度 = 0; } else if (num2 < 55) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -6; this.st状態[i].n透明度 = 0; } else if (num2 < 60) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -4; this.st状態[i].n透明度 = 0; } else if (num2 < 65) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -2; this.st状態[i].n透明度 = 0; } else if (num2 < 70) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = 0; this.st状態[i].n透明度 = 0; } } if (num2 < 5) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = 0; this.st状態[i].n透明度 = 0; } else if (num2 < 10) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -3; this.st状態[i].n透明度 = 0; } else if (num2 < 15) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -6; this.st状態[i].n透明度 = 0; } else if (num2 < 20) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -9; this.st状態[i].n透明度 = 255; } else if (num2 < 25) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -12; this.st状態[i].n透明度 = 0; } else if (num2 < 30) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -15; this.st状態[i].n透明度 = 0; } else if (num2 < 35) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -12; this.st状態[i].n透明度 = 0; } else if (num2 < 40) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -9; this.st状態[i].n透明度 = 0; } else if (num2 < 45) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -6; this.st状態[i].n透明度 = 0; } else if (num2 < 50) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -3; this.st状態[i].n透明度 = 0; } else if (num2 < 55) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -6; this.st状態[i].n透明度 = 0; } else if (num2 < 60) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -4; this.st状態[i].n透明度 = 0; } else if (num2 < 65) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = -2; this.st状態[i].n透明度 = 0; } else if (num2 < 70) { this.st状態[i].n相対X座標 = 0; this.st状態[i].n相対Y座標 = 0; this.st状態[i].n透明度 = 0; } } } for (int j = 0; j < 12; j++) { if (!base.st状態[j].ct進行.b停止中) { int baseX = 370; //int baseY = 135; int baseY = TJAPlayer3.Skin.nScrollFieldY[base.st状態[j].nPlayer] - 43; int x = TJAPlayer3.Skin.nScrollFieldX[0] - TJAPlayer3.Tx.Judge.szテクスチャサイズ.Width / 2; int y = (baseY + base.st状態[j].n相対Y座標); if (TJAPlayer3.Tx.Judge != null) { TJAPlayer3.Tx.Judge.Opacity = base.st状態[j].ct進行.n現在の値 >= 150 ? (int)(255 - (base.st状態[j].ct進行.n現在の値 - 150) * 1.7) : 255; TJAPlayer3.Tx.Judge.t2D描画(TJAPlayer3.app.Device, x, y, base.st判定文字列[(int)base.st状態[j].judge].rc); } } } } return(0); }