Forum rules - please read before posting.

Carousel-style inventory

2»

Comments

  • It's a tricky aspect to get right.

    You'll want the animation to be the opposite of how it appears - the shift should be complete in its first frame (i.e. the centre slot is in the side slot's position), and then returns to the centre by the end of the animation. This is because the items will shift slots at the same time that the animation begins - so you'd need the animation to shift the other way to make them appear in the same spot.

    You'll also need to ensure there's no transition duration - it should play instantly.

  • That worked quite well Chris, thank you!

    Everything is almost there except this strange flickering that happens as you cycle through the carousel animations, perhaps it is an issue with the animation clip itself?

    Animation flickering

    Also, one final question before I am done with this carousel - do you know how I could disable the item's name displaying when the player hover the cursor over them? Just seems a bit distracting/superfluous in this instance. Or perhaps disable the cursor all together.

    Much appreciated!

  • The flickering is happening because of a frame-delay between the items shifting in the Menu, and the UI buttons changing position.

    Not sure which is happening first, but you should be able to force them to update at the same time as part of the script:

    animator.SetTrigger(shiftType == AC_ShiftInventory.ShiftNext ? rightTrigger : leftTrigger);
    animator.Update(Time.deltaTime);
    element.parentMenu.ResetVisibleElements();
    

    do you know how I could disable the item's name displaying when the player hover the cursor over them?

    The Item names over the cursor are coming from the Hotspot menu. You can remove this either by locking this Menu when the Inventory is on (with Menu: Change state) or by moving the Inventory menu to be below Hotspot in the Menu Manager's Menu stack. This stack determines the order in which Menus are processed, so the Hotspot menu won't react to the Inventory menu if it's below it.

  • edited July 1

    Unfortunately it seems 'MenuElement.parentMenu' is inaccessible due to its protection level.

    I googled around and was recommended to use PlayerMenus.ResetInventoryBoxes(); instead as it is within AC systems but that did not seem to do the trick :(

    Otherwise everything is working very well :)

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.