OR条件::戦争::鉄砲不可

int カスタム::On_カスタム条件(string 条件名, カスタム条件パラメタ型 パラメタ) {
  if ( 条件名 == "OR条件::戦争::鉄砲不可" ) {
  }

  // 変更しない場合-1
  return -1;
}

引数の補足

  • パラメタ.整数1:

    整数1は主体となる武将の武将番号

タイミング

  • このカスタム条件は、鉄砲隊、もしくは、鉄砲騎馬隊が、鉄砲を撃つことが可能なのかどうか、判定時に呼び出される。
  • このカスタム条件は強制力が高いため、雨鉄砲など、他の鉄砲関連で「鉄砲可」といった条件を定義していたとしても、
    この鉄砲不可としてtrueを返した場合は、該当武将はその判定の瞬間は鉄砲を撃つことはできない。

一般的用途

  • なんらかの都合で、通常のゲーム内であれば、鉄砲を撃つことができるシーンにおいて、特別に鉄砲を撃てなくしたい場合に利用する。

例①

int カスタム::On_カスタム条件(string 条件名, カスタム条件パラメタ型 パラメタ) {

  if ( 条件名=="OR条件::戦争::鉄砲不可" ) {

    デバッグ出力("OR条件::戦争::鉄砲不可");

    int i武番A【配】 = パラメタ.整数1 -1; // 整数1は鉄砲を撃った武将の武将番号

    // 有効な武将かチェック。
    if ( 0 <= i武番A【配】 && i武番A【配】< 最大数::武将情報::配列数 ) {

        // 鉄砲適性がEだと、鉄砲を撃つ権利すら無い
        if ( Get_鉄砲適性(i武番A【配】) == 鉄砲適性::E )
        {
            // 鉄砲不可
            return true;
        }
    }
  }


  // それ以外は条件を変えない。
  return -1;
}