Forum rules - please read before posting.

Direct Movement\Point and Click hybrid: Player Vicinity Hotspot labels show in the wrong place

edited June 2023 in Technical Q&A

[Unity 2021.3.26f1 - AC v1.77.4a]

Hi Chris!

After updating to 1.77.4a I noticed that when I switch from Point and Click to Direct movement, every Hotspot label that should appear over the Hotspot itself (or on the Centre-point override) only appears on the last Hotspot that was hovered by the mouse when in Point and Click. If I only played with the controller, it appears at 0,0

Where it appears (it's actually the exit's hotspot):

Where it should appear:

The Hotspot Menu's Position type is correctly set to On Hotspot.

Is there something else I should check?

Just in case (probably posted this already somewhere in the forums, but anyway), this is a code that I run in parallel with the rest of AC Hotspot Detection (Mouse Over when in Point and Click mode and Player Vicinity when in Direct mode):

https://gist.github.com/LostTrainDude/95ef9f51bceb1b01bd144799375a82b1

Comments

  • Try checking Duplicate for each Hotspot? in the Hotspot menu's properties.

    Otherwise: the setup is too custom for me to recreate. I'd need the project itself along with instructions to see it for myself.

  • edited June 2023

    Thanks, Chris.

    I'll try to send you the project again (last time taught me this is a painful process :sweat_smile: ), but in the meantime...

    For the tickbox to appear in the Hotspot menu it requires its Appear type to be set to On Hotspot, instead of Manual (like it is now).

    If I change its Appear type to On Hotspot, the character can't find Hotspots at all when in Direct mode.

    For clarity's sake: the script I linked above is placed on a persistent GameObject, so it will be always available throughout the game

  • Thanks for the PM.

    It's a bit of an edge-case, as you're selecting Hotspots manually through script, but not relying on a custom Interaction method.

    For this situation, you'll need to call the SetActiveHotspot function manually at the same time that you select Hotspots manually.

    At the bottom of your NMHotspotDetectionAndInteraction script's Show function, adding the following should do it:

    KickStarter.playerInteraction.SetActiveHotspot (hotspot);
    
  • Ahh, perfect it seems to be working, now! :smile:

    Thank you so much!

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.