//マップチップとの当たり判定 if(hitToChip(x,y) ){ if (!hitToChip(sx,y)) { //x座標を元に戻したらぶつかっていない→x座標だけ元に戻す x=sx; } else if (!hitToChip(x,sy)) { //y座標を元に戻したらぶつかっていない→y座標だけ元に戻す y=sy; } else { //片方だけ戻してもやっぱりぶつかっている→両方元に戻す x=sx;y=sy; } }