DL出来ました。
Init_Load.cppで宣言しているMapDataと、main.cppで宣言しているMapDataとは別物です。
ですので、片方のMapDataに値をセットしてももう片方に反映されることはありません。
とりあえず、以下のように修正されていはどうでしょうか。
#include "header.h"
#include <string.h>
void MapLoad(){
// マップデータ
char MapData_[MAP_HEIGHT][MAP_WIDTH] =
{
0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0,
1,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,1,
1,0,0,1,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,1,
1,0,0,1,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,1,0,1,
1,0,0,1,1, 1,1,0,0,0, 0,0,0,0,0, 0,0,1,0,1,
1,0,0,0,0, 0,0,0,1,1, 0,0,0,0,0, 0,0,1,0,1,
1,0,0,0,0, 0,0,0,0,0, 0,0,1,1,0, 0,0,1,0,1,
1,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,1,0,1,
1,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,1,
1,0,0,0,0, 0,0,1,1,0, 0,0,0,0,0, 1,0,0,0,1,
1,0,0,0,0, 1,1,1,1,1, 0,0,0,0,1, 1,0,0,0,1,
1,0,0,0,0, 1,1,1,1,1, 0,0,0,1,1, 1,0,0,0,1,
1,0,0,0,0, 0,0,0,0,0, 0,0,0,1,1, 1,0,0,0,1,
1,0,0,0,0, 0,0,0,0,0, 0,0,0,0,0, 0,0,0,0,1,
1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1, 1,1,1,1,1,
} ;
memcpy(MapData, MapData_, sizeof(MapData));
}