void ShootEventsCallback(TutorialEvent evt) { Clear(); int idx = _events.IndexOf(evt); if (idx >= 0) { if (_shootEvent != null) { _shootEvent(evt._nextTag); if (evt._nextTag != _startTag) { _shootEvent = null; } } } }
public void ShowInteractableFullScreenMask(TutorialEvent evt, bool enableDrag = false, bool isTransparent = false, float _maskAlpha = 0.4f) { Image image; if (_maskFullScreen == null) { var go = new GameObject(); go.name = "FullScreenMask"; image = go.AddComponent <Image>(); _maskFullScreen = go.transform as RectTransform; _maskFullScreen.SetParent(SwitchTransform, false); go.SetActive(false); float width = 6000f, height = 6000f; _maskFullScreen.sizeDelta = new Vector2(width, height); } else { image = _maskFullScreen.gameObject.GetComponent <Image>(); } if (isTransparent) { image.color = new Color(0, 0, 0, 0); } else { image.color = new Color(0, 0, 0, _maskAlpha); } if (evt != null) { var tc = _maskFullScreen.gameObject.AddComponent <TutorialScreenClick>(); tc.Event = evt; tc.EnableDrag = enableDrag; image.raycastTarget = true; } else { image.raycastTarget = false; } _maskFullScreen.gameObject.SetActive(true); _maskFullScreen.SetAsFirstSibling(); EnableParentCanvasRaycaster(_maskFullScreen); }