Well, I found a native "IsTerrainPathable", but it doesn't quite work the way I want it to.
When I put "pathingtype" = PATHING_TYPE_WALKABLE and do "if true - call BJDebugMsg("true")" else call BJDebugMsg("false")" - I'm always getting "false", besides on water.
When I use PATHING_TYPE_FLOATABILITY - I always get "true", besides on water.
When I googled it - I found something, that could help a bit, but not really:
Split my map into regions, and check in which region is the unit, and check which region its tying to reach. Then check a fixed boolean if it can go from its region to the picked region.
However, I have trees blocking the path on my map, so if some trees are destroyed - the path will become walkable, and I don't know how to check when it becomes walkable.
So I guess I'll just change the way my spell works xP
EDIT: since "IssuePointOrder" returns a boolean, I tried to see if it's true or false after I order the unit to move somewhere, but it was always true
EDIT 2: I have a really ridiculous idea ( which I'm not gonna apply, but gonna share it anyways ): I can link the trees together in a hashtable:
tree 1 is next to tree 2, 3 and 4 (has 3 neighbour trees); tree 2 is next to tree 1, 3, 5, 6 (4 neighbour trees); tree 3 is next to tree 1, 2, 4, 6, 7 (5 neighbour trees), etc...
And when a tree dies - I could check if a path has opened up, by trqcking the chain

But for obvious reasons that's insane
