protected void OnPointTargetDialogue(ContractorTopic topic)
        {
            Vector3 pos = topic.targetWorldPos;

            if (topic.arrowIcon != null)
            {
                UIObjectPointIcon nArrow = ArrowDisplayer.Instances("NotePad").UseArrow <UIObjectPointIcon>(250f, 0, true, pos, topic.arrowIcon, "NotePad");
                BillboardElement  be     = Instantiate(itemBillboard, pos + (pos.normalized * 0.15f), Quaternion.identity) as BillboardElement;
                approachedItemsPos.Add(be);
                DontDestroyOnLoad(be);
                if (FtueManager.instance.active)
                {
                    nArrow.AddCallBack(FtueManager.instance.ValidStep);
                }
                else
                {
                    nArrow.AddCallBackPos(CleanBillboard, pos);
                }
            }
            else
            {
                UIObjectPointer  nArrow = ArrowDisplayer.Instances("NotePad").UseArrow <UIObjectPointer>(250f, 0, true, pos, "NotePad");
                BillboardElement be     = Instantiate(itemBillboard, pos + (pos.normalized * 0.15f), Quaternion.identity) as BillboardElement;
                approachedItemsPos.Add(be);
                DontDestroyOnLoad(be);
                if (FtueManager.instance.active)
                {
                    nArrow.AddCallBack(FtueManager.instance.ValidStep);
                }
                else
                {
                    nArrow.AddCallBackPos(CleanBillboard, pos);
                }
            }
        }
        public void PointTarget(Vector3 worldPos, Sprite icon)
        {
            UIObjectPointIcon nArrow = ArrowDisplayer.Instances("NotePad").UseArrow <UIObjectPointIcon>(250f, 0, true, worldPos, icon, "NotePad");

            if (FtueManager.instance.active)
            {
                nArrow.AddCallBack(FtueManager.instance.ValidStep);
            }
            else
            {
                nArrow.AddCallBackPos(CleanBillboard, worldPos);
            }
        }