MI1~MI5の変数を5回比較してる部分、MI[5]でFOR文で回せばコードが減りますよ。 あとは壁チェックのコードを関数にしてまとめるなどできると思います。