There's not much you should change really.
In TutorialController, change Awake() to this, instead of throwing an exception:
` void Awake()
{
Debug.LogWarning("Tutorial");
//if (instance != null) throw new Exception("TutorialController alraedy creaeted");
if(instance == null)
{
instance = this;
instance = this;
canvasRenderCamera = GetCamera();
popup.gameObject.SetActive(false);
popup.closeBtn.onClick.AddListener(OnClosePopup);
}
else
{
popup.gameObject.SetActive(false);
}
}`
And to have target buttons show sprite mouse-over states change the code starting at line 315 to this:
` if (s.isClickable && rt != null && btn != null)
{
hiddenBtn.gameObject.SetActive(true);
hiddenBtn.onClick.AddListener(btn.onClick.Invoke);
hiddenBtn.transition = btn.transition;
switch (btn.transition)
{
case Selectable.Transition.None:
break;
case Selectable.Transition.ColorTint:
break;
case Selectable.Transition.SpriteSwap:
SpriteState ss = hiddenBtn.spriteState;
hiddenBtn.targetGraphic = btn.targetGraphic;
ss.highlightedSprite = btn.spriteState.highlightedSprite;
ss.pressedSprite = btn.spriteState.pressedSprite;
ss.selectedSprite = btn.spriteState.selectedSprite;
ss.disabledSprite = btn.spriteState.disabledSprite;
hiddenBtn.spriteState = ss;
break;
case Selectable.Transition.Animation:
break;
}
}
else
{
hiddenBtn.targetGraphic = null;
hiddenBtn.gameObject.SetActive(false);
}`
Insert this at current line 359:
hiddenBtn.targetGraphic = null;
I believe that's it. The asset still works well. There are warnings related to Input system when viewing your demo but I don't know when they will be removing this deprecated package.