Thanks for your response.
So that was one solution I tried, and the land to water transition with weight 6 would be correct. However, if the character was on water, travelling from a water tile to a coastal tile would have a weight cost of 6, instead of 3:
[W][T][L] would equal , but I would want: 
What I am doing currently (seems to work so far) is adding 2 different AStar points with the same position, but different connections to their neighbors. For instance, say the center tile in both below have the same AStar position but are different AStar points, I would connect them as follows:
Center tile is water w/ coastal weight 6 if moving from land to water
Center tile is water w/ water weight 3 if moving from water to water
Having 2 AStar IDs allows both
get_point_path() to return the correct shortest path based on weight and where the character resides.
The code just gets complicated really quickly ... and I have a gut feeling something more elegant can exist.