caewok / fvtt-elevation-ruler

Modifies Foundry VTT ruler to display when dragging tokens, add token speed highlighting, do pathfinding, calculate elevation
MIT License
12 stars 13 forks source link

Drag measurement broken with Elevated Vision #45

Closed ravingdragoon closed 6 months ago

ravingdragoon commented 6 months ago

When I enable elevated vision with elevation ruler, I do not get the dragged measurement display when moving tokens. I get the Console error below on Foundry V11.315 and DnD5e 2.4.1 in Google Chrome Version 121.0.6167.161 (Official Build) (64-bit). This occurs with only LibWrapper, Find the Culprit, Elevated Vision, and Elevation Ruler modules enabled.

Uncaught TypeError: Cannot read properties of undefined (reading 'lineSegmentIntersects')
    at collisionTest (measure_distance.js:480:57)
    at CanvasQuadtree.getObjects (foundry.js:30589:55)
    at distanceForGridStepFunction (measure_distance.js:481:41)
    at griddedMoveDistance (measure_distance.js:287:30)
    at measureMoveDistance (measure_distance.js:108:15)
    at Ruler._computeSegmentDistances (Ruler.js:292:40)
    at Ruler._computeDistance (Ruler.js:254:28)
    at 🎁CONFIG.Canvas.rulerClass.prototype._computeDistance#0 (libWrapper-wrapper.js:187:52)
    at Ruler.measure (foundry.js:37155:10)
    at Ruler._onMouseMove (foundry.js:37541:12)
    at 🎁call_wrapped [as call_wrapped] (libWrapper-wrapper.js:507:22)
    at Ruler._onMouseMove (Ruler.js:496:10)
    at 🎁CONFIG.Canvas.rulerClass.prototype._onMouseMove#0 (libWrapper-wrapper.js:187:52)
    at Token5e._onDragLeftMove (Token.js:53:33)
    at 🎁CONFIG.Token.objectClass.prototype._onDragLeftMove#0 (libWrapper-wrapper.js:187:52)
    at MouseInteractionManager.callback (foundry.js:31766:17)
    at #handleDragMove (foundry.js:32113:26)
    at #handleMouseMove (foundry.js:32085:37)
    at Na.notifyListeners (earcut.js:128:75)
    at Na.notifyTarget (earcut.js:128:75)
    at Na.propagate (earcut.js:128:75)
    at Na.dispatchEvent (earcut.js:128:75)
    at Na.mapPointerMove (earcut.js:128:75)
    at Na.mapEvent (earcut.js:128:75)
    at yn.onPointerMove (earcut.js:128:75)
ravingdragoon commented 6 months ago

I get the following similar error in Firefox 122.0.1 (64-bit)

Uncaught TypeError: o.t.constrainedTokenBorder is undefined
[Detected 2 packages: elevationruler, lib-wrapper]
    collisionTest measure_distance.js:480
    getObjects foundry.js:30589
    distanceForGridStepFunction measure_distance.js:481
    griddedMoveDistance measure_distance.js:287
    measureMoveDistance measure_distance.js:108
    _computeSegmentDistances Ruler.js:292
    _computeDistance Ruler.js:254
    _computeDistance#0 libWrapper-wrapper.js:187
    measure foundry.js:37155
    _onMouseMove foundry.js:37541
    call_wrapped libWrapper-wrapper.js:507
    _onMouseMove Ruler.js:496
    _onMouseMove#0 libWrapper-wrapper.js:187
    _onDragLeftMove Token.js:53
    _onDragLeftMove#0 libWrapper-wrapper.js:187
    callback foundry.js:31766
    #handleDragMove foundry.js:32113
    #handleMouseMove foundry.js:32085
    notifyListeners earcut.js:128
    notifyTarget earcut.js:128
    propagate earcut.js:128
    dispatchEvent earcut.js:128
    mapPointerMove earcut.js:128
    mapEvent earcut.js:128
    onPointerMove earcut.js:128
    addEvents earcut.js:128
    setTargetElement earcut.js:128
    init earcut.js:128
    emit index.mjs:5
    run index.js:89
    un index.js:126
    wa index.js:89
    xn earcut.js:128
    #createApplication foundry.js:26327
    initialize foundry.js:26223
    initializeCanvas foundry.js:8894
    setupGame foundry.js:8724
    _initializeGameView foundry.js:9990
    _initializeView foundry.js:9966
    initialize foundry.js:8650
    call_wrapped libWrapper-wrapper.js:507
    libWrapperInit libWrapper-api.js:805
    initialize#0 libWrapper-wrapper.js:187
    <anonymous> foundry.js:91833
[measure_distance.js:480:30](https://assets.forge-vtt.com/bazaar/modules/elevationruler/0.8.4/scripts/measure_distance.js)
    collisionTest measure_distance.js:480
    getObjects foundry.js:30589
    distanceForGridStepFunction measure_distance.js:481
    griddedMoveDistance measure_distance.js:287
    measureMoveDistance measure_distance.js:108
    _computeSegmentDistances Ruler.js:292
    _computeDistance Ruler.js:254
    _computeDistance#0 libWrapper-wrapper.js:187
    measure foundry.js:37155
    _onMouseMove foundry.js:37541
    call_wrapped libWrapper-wrapper.js:507
    _onMouseMove Ruler.js:496
    _onMouseMove#0 libWrapper-wrapper.js:187
    _onDragLeftMove Token.js:53
    _onDragLeftMove#0 libWrapper-wrapper.js:187
    callback foundry.js:31766
    #handleDragMove foundry.js:32113
    #handleMouseMove foundry.js:32085
    notifyListeners earcut.js:128
    notifyTarget earcut.js:128
    propagate earcut.js:128
    dispatchEvent earcut.js:128
    mapPointerMove earcut.js:128
    mapEvent earcut.js:128
    onPointerMove earcut.js:128
    (Async: EventListener.handleEvent)
    addEvents earcut.js:128
    setTargetElement earcut.js:128
    init earcut.js:128
    emit index.mjs:5
    run index.js:89
    un index.js:126
    wa index.js:89
    xn earcut.js:128
    #createApplication foundry.js:26327
    initialize foundry.js:26223
    initializeCanvas foundry.js:8894
    InterpretGeneratorResume self-hosted:1465
    AsyncFunctionNext self-hosted:852
    (Async: async)
    setupGame foundry.js:8724
    InterpretGeneratorResume self-hosted:1465
    AsyncFunctionNext self-hosted:852
    (Async: async)
    _initializeGameView foundry.js:9990
    _initializeView foundry.js:9966
    initialize foundry.js:8650
    InterpretGeneratorResume self-hosted:1465
    AsyncFunctionNext self-hosted:852
    (Async: async)
    call_wrapped libWrapper-wrapper.js:507
    libWrapperInit libWrapper-api.js:805
    InterpretGeneratorResume self-hosted:1465
    AsyncFunctionNext self-hosted:852
    (Async: async)
    initialize#0 libWrapper-wrapper.js:187
    <anonymous> foundry.js:91833
    InterpretGeneratorResume self-hosted:1465
    AsyncFunctionNext self-hosted:852
caewok commented 6 months ago

Fixed in v0.8.7