雨谷の日和

過去20年で2,700を超えるアニメの第1話だけは見続けた僕のお勧めアニメがハズレなはずがない

人狼BBS作成日記81

さて、今までの処理で狩人の護衛先と人狼の襲撃先が決定したので、今度はそれらから襲撃結果を判定することになりますね。

  if( $Attack_Target > -1 ){
    if( $Attack_Target == $Guard_Target ){
      print LOGFILE "$Day_Count_Max<>80<><>$Time_Stamp<>今夜は犠牲者がいない。\n";
    }else{
      print LOGFILE "$Day_Count_Max<>83<>$Attack_Target<>$Time_Stamp\n";
      $Char_Life[$Attack_Target] = 1;
    }
  }else{
    print LOGFILE "$Day_Count_Max<>80<><>$Time_Stamp<>今夜は犠牲者がいない。\n";
  }

まず、襲撃先(Attack_Target)が-1かどうかをチェックしておきます。襲撃先が-1のときというのは、処理上有り得ないのですが、一応チェックしておきます。もしも襲撃先が-1なら、犠牲者がいないことをシステムメッセージ(80)で出しておきます。
襲撃先が-1でなければ、それと護衛先(Guard_Target)を比較します。もしも襲撃先と護衛先が同じであれば、狩人の護衛成功のメッセージをシステムメッセージとして出力します。逆に、それらが異なっていれば、襲撃先のキャラクターが襲われた(83)ことをログに出力し、更にそのキャラクターの生死フラグ(Char_Life)を死亡(1)にします。
これで、襲撃の判定は終了です。