Issue Description: T72 Missiles in real world are not horizontally launched. At different heights, missiles may fly over obstacles or bump into the ground, which have not been simulated currently. Try to simulate this.
A Possible Solution to the Issue:
Instead of maintaining heights of the missiles, we can maintain the distance (from being launched) of them.
We extend the IsBlockedByObstacles() function to take the distance into consideration.
When dis > 12.0, we consider the missile to have returned to the ground.
When 4.0 <= dis <= 8.0, we say the missile cannot be blocked by any obstacle.
In other cases, we still call the IsBlockedByObstacles() function.
Issue Description: T72 Missiles in real world are not horizontally launched. At different heights, missiles may fly over obstacles or bump into the ground, which have not been simulated currently. Try to simulate this. A Possible Solution to the Issue: