public void PronounceLetter(ConsumableLetter letter, Action onComplete) { var subscriptions = new AnimationEventSubscriptions { OnComplete = onComplete }; subscriptions.CustomEvents.Add(letter.PronounciationEvent, () => _audioSource.PlayOneShot(letter.PronounciationSound)); QueueTransientAnimation(letter.PronounciationAnimation, subscriptions); }
public void EatLetter(ConsumableLetter obj, Action onAnimationComplete) { PauseTouchInput(); Destroy(obj.gameObject); ModifyProficiency(obj.Letter, 1); Animator.ReactPositively(); PronounceLetter(obj, ResumeTouchAfterAnimation(onAnimationComplete)); }
public void RequestLetter(ConsumableLetter obj, bool withText, Action onComplete = null) { var subscriptions = new AnimationEventSubscriptions { OnComplete = onComplete }; Animator.RequestLetter(obj, subscriptions); if (withText) { Communication.ShowDialog(obj.Letter.ToString()); } }
void RequestRandomLetter() { if (_objectsInActivity.Count == 0) { return; } var letters = _objectsInActivity.OfType <ConsumableLetter>().ToList(); var idx = Random.Range(0, letters.Count - 1); var requestedLetter = letters[idx]; _requestedLetter = requestedLetter; MaxAttempts = DetermineMaxAttempts(_objectsInActivity, _requestedLetter.Letter); PrintRequestedLetter(); }
GameObject InstantiateLetterPreview(float xPosition, float yPosition, ConsumableLetter letter) { var gameObj = new GameObject(letter.name + " Preview"); gameObj.transform.parent = _root.transform; gameObj.transform.position = new Vector2(xPosition, yPosition); var sprite = letter.GetComponent <SelectOnTouch>(); var newSprite = gameObj.AddComponent <SpriteRenderer>(); newSprite.color = new Color(newSprite.color.r, newSprite.color.g, newSprite.color.b, 0); newSprite.sprite = sprite.HintSprite; var bobbing = gameObj.AddComponent <VerticalBobbing>(); Utilities.FadeInObject(bobbing, 1); return(gameObj); }
void PronounceLetter(ConsumableLetter obj, Action onAnimationComplete) { Animator.PronounceLetter(obj, onAnimationComplete); }
void HandleCorrectLetter(ConsumableLetter consumedObject) { _completed = true; Ressi.EatLetter(consumedObject, onAnimationComplete: CompleteActivity); }
public void RequestLetter(ConsumableLetter letter, AnimationEventSubscriptions subscriptions = null) { QueueTransientAnimation(letter.RequestAnimation, subscriptions); }
bool IsRealLetter(ConsumableLetter letter) { return(letter != null && _letterGroup.Letters.Any(i => i.Letter == letter.Letter)); }