caewok / fvtt-terrain-mapper

Paint coded terrain values on Foundry maps
MIT License
5 stars 6 forks source link

Elevation ruler does not display reduced speed (difficult terrain) or destination elevation #29

Closed Nolat closed 1 month ago

Nolat commented 3 months ago

When a region is configured with difficult terrain, and a token is moved over it, the maximum distance is not reduced. A square does not cost double the speed. Similarly, when a region defines altitude, the rule does not display a change in altitude for the token. Screenshot_2 Screenshot_3 Screenshot_4 Screenshot_5

JamesAlday commented 3 months ago

I'm seeing similar. Not sure if it's something wrong with my configuration, but it is similar to what is described here. I've tried messing with various Active Effect settings to no avail.

Dragging the token to/over a difficult region shows the terrain name (ie, "Difficult Terrain") but the effect (movement x 0.5) is not applied.

Rapunzel77 commented 2 months ago

For me it works when the player (or GM) stops the token in the terrain. The Terrain effects get applied and the speed is modified. Now movement is decreased or increased accordingly. After leaving the area the token has to stop again for the effect to be removed. Just dragging tokens through areas or out of these terrains will not be displayed correctly.

caewok commented 1 month ago

I think this is fixed in v0.4.1. But let me know if you see different.

Rapunzel77 commented 1 month ago

I now get another error when entering Regions. Is this just me? Or is the ruler/system integration broken, because the API changed?

Uncaught TypeError: undefined. terrainAPI.ElevationHandler._fromPoint3d is not a function
[Detected 2 packages: elevationruler(0.10.4), lib-wrapper(1.12.15.0)]
    at MovePenalty._cutawayIntersections (MovePenalty.js:209:35)
    at MovePenalty.movementPenaltyForSegment (MovePenalty.js:170:29)
    at Ruler.js:502:41
    at GridlessGrid._measurePath (Grid.js:352:23)
    at 🎁foundry.grid.GridlessGrid.prototype._measurePath#0 (libWrapper-wrapper.js:187:52)
    at GridlessGrid.measurePath (foundry-esm.js:40093:12)
    at Ruler._computeDistance (Ruler.js:446:36)
    at 🎁CONFIG.Canvas.rulerClass.prototype._computeDistance#0 (libWrapper-wrapper.js:187:52)
    at Ruler.measure (foundry.js:36103:10)
    at Ruler._onMouseMove (foundry.js:36719:10)
    at Token._onDragLeftMove (Token.js:159:33)
    at 🎁CONFIG.Token.objectClass.prototype._onDragLeftMove#0 (libWrapper-wrapper.js:187:52)
    at MouseInteractionManager.callback (foundry.js:30834:17)
    at #handleDragMove (foundry.js:31213:26)
    at #handlePointerMove (foundry.js:31178:64)
    at vh.notifyListeners (EventBoundary.ts:1464:33)
    at vh.notifyTarget (EventBoundary.ts:658:14)
    at vh.propagate (EventBoundary.ts:310:18)
    at vh.dispatchEvent (EventBoundary.ts:210:14)
    at vh.mapPointerMove (EventBoundary.ts:815:64)
    at vh.mapEvent (EventBoundary.ts:231:28)
    at ra.onPointerMove (EventSystem.ts:396:31)
My environment:

environment