private void InitLetter() { m_LetterObjectView = m_CurrentLetter.GetComponent <LivingLetterController>(); if (ColorTickleConfiguration.Instance.Variation == ColorTickleVariation.Image) { m_LetterObjectView.TransformIntoImage(); m_LetterObjectView.LabelRender.color = Color.white; } m_TMPTextColoringLetter = m_CurrentLetter.GetComponent <TMPTextColoring>(); m_SurfaceColoringLetter = m_CurrentLetter.GetComponent <SurfaceColoring>(); m_LLController = m_CurrentLetter.GetComponent <ColorTickle_LLController>(); m_LLController.movingToDestination = true; m_HitStateLLController = m_CurrentLetter.GetComponent <HitStateLLController>(); m_HitStateLLController.OnTouchedOutside += OnTickled; m_LLController.OnDestinationReached += delegate() { game.Context.GetAudioManager().PlayVocabularyData( m_LetterObjectView.Data, soundType: ColorTickleConfiguration.Instance.GetVocabularySoundType() ); };//play audio on destination m_HitStateLLController.OnTouchedShape += TryEnableAntura; //game.anturaController.targetToLook = m_CurrentLetter.transform; //make antura look at the LL on rotations SetBrushColor(m_ColorsUIManager.defaultColor); ResetLaunchTimer(true); }
void RestoreQuestion(bool result) { LivingLetterController letterView = m_aoCurrentQuestionScene[m_iRemovedLLDataIndex].GetComponent <LetterBehaviour>().mLetter; foreach (GameObject _obj in m_aoCurrentQuestionScene) { _obj.GetComponent <LetterBehaviour>().Refresh(); } if (result) { m_oEmoticonsController.EmoticonPositive(); } else { m_oEmoticonsController.EmoticonNegative(); } //change restored color letter with tag Color32 markColor = result ? new Color32(0x4C, 0xAF, 0x50, 0xFF) : new Color32(0xDD, 0x2C, 0x00, 0xFF); string color = result ? "#4CAF50" : "#DD2C00"; if (MissingLetterConfiguration.Instance.Variation == MissingLetterVariation.Phrase) { letterView.Label.text = "<color=" + color + ">" + letterView.Label.text + "</color>"; } else { LL_WordData word = (LL_WordData)m_oCurrQuestionPack.GetQuestion(); letterView.Label.text = ArabicTextUtilities.GetWordWithMarkedLetterText(word.Data, m_oRemovedLetter, markColor, ArabicTextUtilities.MarkType.SingleLetter); } }
public EggLivingLetter(Transform parent, GameObject letterObjectViewPrefab, GameObject shadowPrefab, ILivingLetterData livingLetterData, Vector3 startPosition, Vector3 shadowPosition, Vector3 endPosition, float delay, Action endCallback) { livingLetter = UnityEngine.Object.Instantiate(letterObjectViewPrefab).GetComponent <LivingLetterController>(); livingLetter.transform.SetParent(parent); livingLetter.transform.localPosition = startPosition; livingLetter.Init(livingLetterData); livingLetter.transform.localScale *= startScale; livingLetter.gameObject.SetActive(false); shadowTransform = UnityEngine.Object.Instantiate(shadowPrefab).transform; shadowTransform.SetParent(parent); shadowLocalPosition = shadowPosition; shadowTransform.localPosition = shadowLocalPosition; shadowTransform.localScale *= 0.7f; shadowTransform.gameObject.SetActive(false); this.startPosition = startPosition; this.endPosition = endPosition; this.delay = delay; this.endCallback = endCallback; JumpToEnd(); }
void Awake() { status = LLStatus.None; LLController = livingLetter.GetComponent <LivingLetterController>(); startingPosition = transform.position; startingRotation = LLController.transform.rotation; }
protected override LivingLetterController SpawnLetter() { LivingLetterController l = base.SpawnLetter(); l.gameObject.AddComponent <FastCrowdDraggableLetter>(); return(l); }
void Start() { letterView = transform.root.GetComponent <LivingLetterController>(); origLocalPos = transform.localPosition; thisTransform = transform; origParent = transform.parent; transform.parent = null; }
void Start() { shadowStartSize = shadow.localScale; shadow.localScale = Vector3.zero; LLMesh = GetComponentsInChildren <SkinnedMeshRenderer>(); letterView = GetComponent <LivingLetterController>(); letterAnimator = GetComponent <Animator>(); statPos = transform.position; }
protected virtual LivingLetterController SpawnLetter() { // Spawn! LivingLetterController LLController = Instantiate(livingLetterPrefab); LLController.gameObject.SetActive(true); LLController.transform.SetParent(transform, true); Vector3 newPosition = walkableArea.GetFurthestSpawn(letterGOs); // Find isolated spawn point LLController.transform.position = newPosition; LLController.transform.rotation = Quaternion.Euler(0, UnityEngine.Random.value * 360, 0); LLController.Init(AppManager.I.Teacher.GetAllTestLetterDataLL().GetRandom()); LLController.gameObject.AddComponent <Rigidbody>().isKinematic = true; foreach (var collider in LLController.gameObject.GetComponentsInChildren <Collider>()) { collider.isTrigger = true; } var characterController = LLController.gameObject.AddComponent <CharacterController>(); characterController.height = 6; characterController.center = Vector3.up * 3; characterController.radius = 1.5f; LLController.gameObject.AddComponent <LetterCharacterController>(); var livingLetter = LLController.gameObject.AddComponent <IntroStrollingLetter>(); livingLetter.factory = this; var pos = LLController.transform.position; pos.y = 10; LLController.transform.position = pos; letters.Add(livingLetter); letterGOs.Add(livingLetter.gameObject); livingLetter.onDropped += (result) => { if (result) { letters.Remove(livingLetter); letterGOs.Remove(livingLetter.gameObject); toDestroy.Enqueue(livingLetter); } if (onDropped != null) { onDropped(LLController.Data, result); } }; return(LLController); }
// Use this for initialization void Start() { m_LetterObjectView = gameObject.GetComponent <LivingLetterController>(); m_HitState = eHitState.HIT_NONE; m_Tickle = false; m_TickleTime = 2.0f; gameObject.GetComponent <TMPTextColoring>().OnShapeHit += ShapeTouched; gameObject.GetComponent <SurfaceColoring>().OnBodyHit += BodyTouched; }
private void Awake() { letterObjectView = GetComponent<LivingLetterController>(); springJoints = new List<SpringJoint>(); foreach (SpringJoint springJoint in GetComponents<SpringJoint>()) { springJoints.Add(springJoint); } }
void Awake() { letterObjectView = GetComponent <LivingLetterController>(); foreach (Collider collider in GetComponentsInChildren <Collider>()) { collider.enabled = false; } SetIsColliderEnabled(true); HideVictoryRays(); }
void Start() { m_oLetter = gameObject.GetComponent <LivingLetterController>(); if (!m_bSetStartPosition) { m_v3StartPosition = m_oLetter.gameObject.transform.position; } else { m_oLetter.gameObject.transform.position = m_v3StartPosition; } m_v3Destination = m_Destination.position; }
ArabicAlphabetHelper.ArabicStringPart RemoveLetterFromQuestion(LL_LetterData letter) { LL_WordData word = (LL_WordData)m_oCurrQuestionPack.GetQuestion(); LivingLetterController letterView = m_aoCurrentQuestionScene[0].GetComponent <LetterBehaviour>().mLetter; var parts = ArabicAlphabetHelper.FindLetter(AppManager.I.DB, word.Data, letter.Data, true); var partToRemove = parts[0]; letterView.Label.text = ArabicAlphabetHelper.GetWordWithMissingLetterText(word.Data, partToRemove, mk_sRemovedLetterChar); return(partToRemove); }
public StrollingLivingLetter GetLetter(ILivingLetterData data) { for (int i = 0; i < letters.Count; i++) { LivingLetterController lov = letters[i].gameObject.GetComponent <LivingLetterController>(); if (DataMatchingHelper.IsDataMatching(lov.Data, data, LetterEqualityStrictness.Letter)) { return(letters[i]); } } return(null); }
public StrollingLivingLetter GetLetter(ILivingLetterData data) { for (int i = 0; i < letters.Count; i++) { LivingLetterController lov = letters[i].gameObject.GetComponent <LivingLetterController>(); if (lov.Data.Equals(data)) { return(letters[i]); } } return(null); }
public void Initialize(float _maxY, LivingLetterController _letter, Vector3 tubePosition) { tubeSpawnPosition = tubePosition - Vector3.up * 4; cameraDistance = (transform.position.z) - Camera.main.transform.position.z; //cameraDistance = Vector3.Distance(Camera.main.transform.position, transform.position); letter = _letter; maxY = _maxY; dropLetter = false; isResetting = false; clampPosition = false; }
StringPart RemoveLetterFromQuestion(LL_LetterData letter) { LL_WordData word = (LL_WordData)m_oCurrQuestionPack.GetQuestion(); LivingLetterController letterView = m_aoCurrentQuestionScene[0].GetComponent <LetterBehaviour>().mLetter; bool findSameForm = MissingLetterConfiguration.Instance.Variation == MissingLetterVariation.LetterForm; var parts = LanguageSwitcher.I.GetHelper(LanguageUse.Learning).FindLetter(AppManager.I.DB, word.Data, letter.Data, findSameForm ? LetterEqualityStrictness.WithActualForm : LetterEqualityStrictness.Letter); //Debug.LogWarning("Looking for letter " + letter.Id + " into word " + word.Id); var partToRemove = parts[0]; letterView.LabelRender.text = LanguageSwitcher.I.GetHelper(LanguageUse.Learning).GetWordWithMissingLetterText(word.Data, partToRemove); return(partToRemove); }
int RemoveWordfromQuestion(List <LL_WordData> Words, LL_WordData word) { int index = 0; for (; index < Words.Count; ++index) { if (Words[index].Id == word.Id) { break; } } LivingLetterController tmp = m_aoCurrentQuestionScene[index].GetComponent <LetterBehaviour>().mLetter; tmp.LabelRender.text = ""; return(index); }
//uses fast crowd letter management and dragging: public TakeMeHomeLL spawnLetter(ILivingLetterData data) { // LivingLetterController letterObjectView = Instantiate(LLPrefab); letterObjectView.gameObject.SetActive(true); letterObjectView.transform.localScale = new Vector3(0.8f, 0.8f, 0.8f); letterObjectView.transform.SetParent(transform, true); Vector3 newPosition = GetComponent <TakeMeHomeGame> ().LLSpawnPosition.position; // = walkableArea.GetFurthestSpawn(letters); // Find isolated spawn point letterObjectView.transform.position = newPosition; //letterObjectView.transform.rotation = Quaternion.identity letterObjectView.Init(data); var ll = letterObjectView.gameObject.AddComponent <TakeMeHomeLL>(); ll.Initialize(plane.transform.position.y, letterObjectView, GetComponent <TakeMeHomeGame> ().spawnTube.transform.position); /*/var livingLetter = letterObjectView.gameObject.AddComponent<FastCrowdLivingLetter>(); * //livingLetter.crowd = this; * * letterObjectView.gameObject.AddComponent<FastCrowdDraggableLetter>();*/ letterObjectView.gameObject.AddComponent <Rigidbody>().isKinematic = true; foreach (var collider in letterObjectView.gameObject.GetComponentsInChildren <Collider>()) { collider.isTrigger = true; } var characterController = letterObjectView.gameObject.AddComponent <CharacterController>(); characterController.height = 6; characterController.center = Vector3.up * 3; characterController.radius = 1.5f; _letter = (ll); return(ll); }
public EggRunLetter(GameObject letterObjectPrefab, GameObject shadowPrefab, ILivingLetterData letterData, Transform parent, Vector3 leftOutPosition, Vector3 rightOutPosition) { outPositions[0] = leftOutPosition; outPositions[1] = rightOutPosition; letterObject = UnityEngine.Object.Instantiate(letterObjectPrefab).GetComponent <LivingLetterController>(); letterObject.transform.SetParent(parent); letterObject.Init(letterData); currentOutPosition = UnityEngine.Random.Range(0, 2); lerpPositionValue = currentOutPosition; letterObject.transform.position = outPositions[currentOutPosition]; shadowTransform = UnityEngine.Object.Instantiate(shadowPrefab).transform; shadowTransform.SetParent(letterObject.transform); shadowTransform.localPosition = Vector3.zero; shadowTransform.localScale *= 0.7f; letterObject.Poof(); }
public EggLivingLetter(Transform parent, GameObject letterObjectViewPrefab, GameObject shadowPrefab, ILivingLetterData livingLetterData, Vector3 startPosition, Vector3 shadowPosition, Vector3 endPosition, float delay, Action endCallback) { livingLetter = UnityEngine.Object.Instantiate(letterObjectViewPrefab).GetComponent <LivingLetterController>(); livingLetter.transform.SetParent(parent); livingLetter.transform.localPosition = startPosition; if (livingLetterData.DataType == LivingLetterDataType.Letter) { ((LL_LetterData)livingLetterData).ForceShowAccent = true; } livingLetter.Init(livingLetterData); livingLetter.transform.localScale *= startScale; livingLetter.gameObject.SetActive(false); if (EggConfiguration.Instance.Variation == EggVariation.Image) { livingLetter.TransformIntoImage(); } shadowTransform = UnityEngine.Object.Instantiate(shadowPrefab).transform; shadowTransform.SetParent(parent); shadowLocalPosition = shadowPosition; shadowTransform.localPosition = shadowLocalPosition; shadowTransform.localScale *= 0.7f; shadowTransform.gameObject.SetActive(false); this.startPosition = startPosition; this.endPosition = endPosition; this.delay = delay; this.endCallback = endCallback; JumpToEnd(); }
void RestoreQuestion(bool result) { LivingLetterController letterView = m_aoCurrentQuestionScene[m_iRemovedLLDataIndex].GetComponent <LetterBehaviour>().mLetter; foreach (GameObject _obj in m_aoCurrentQuestionScene) { _obj.GetComponent <LetterBehaviour>().Refresh(); } if (result) { m_oEmoticonsController.EmoticonPositive(); } else { m_oEmoticonsController.EmoticonNegative(); } //change restored color letter with tag Color32 markColor = result ? new Color32(0x4C, 0xAF, 0x50, 0xFF) : new Color32(0xDD, 0x2C, 0x00, 0xFF); string color = result ? "#4CAF50" : "#DD2C00"; switch (MissingLetterConfiguration.Instance.Variation) { case MissingLetterVariation.Phrase: letterView.LabelRender.text = "<color=" + color + ">" + letterView.LabelRender.text + "</color>"; break; case MissingLetterVariation.LetterForm: case MissingLetterVariation.LetterInWord: var word = (LL_WordData)m_oCurrQuestionPack.GetQuestion(); letterView.LabelRender.text = LanguageSwitcher.LearningHelper.GetWordWithMarkedLetterText(word.Data, m_oRemovedLetter, markColor, MarkType.SingleLetter); break; case MissingLetterVariation.Image: break; } }
private void InitTutorialLetter() { m_LetterObjectView = m_TutorialLetter.GetComponent <LivingLetterController>(); m_TMPTextColoringLetter = m_TutorialLetter.GetComponent <TMPTextColoring>(); m_SurfaceColoringLetter = m_TutorialLetter.GetComponent <SurfaceColoring>(); m_LLController = m_TutorialLetter.GetComponent <ColorTickle_LLController>(); m_LLController.movingToDestination = true; m_HitStateLLController = m_TutorialLetter.GetComponent <HitStateLLController>(); m_HitStateLLController.OnTouchedOutside += LoseLife; m_HitStateLLController.EnableTutorial += EnableTutorialAnimation; SetBrushColor(new Color(255, 0, 0, 255)); DisableLetterComponents(); //m_LLController.OnDestinationReached += EnableTutorialAnimation; m_LLController.OnDestinationReached += delegate() { //play intro dialogue game.PlayIntro(() => { //play tutorial dialogue on intro finish //for now this is broken, COLORTICKLE_TUTO is repeated like a loop // HACK stop audio and replay music //game.Context.GetAudioManager().PlayDialogue(Db.LocalizationDataId.ColorTickle_Tuto, delegate() { game.Context.GetAudioManager().StopMusic(); game.Context.GetAudioManager().PlayMusic(game.backgroundMusic); }); game.PlayTutorial(null); EnableLetterComponents(); EnableTutorialAnimation(); }); }; }
/// <summary> /// Risen on letter or world match. /// </summary> private void Droppable_OnRightMatch(LivingLetterController _letterView) { AudioManager.I.PlaySound(Sfx.OK); NextArea(); }
private void Droppable_OnWrongMatch(LivingLetterController _letterView) { AudioManager.I.PlaySound(Sfx.KO); }
void Start() { letter = GetComponent <LivingLetterController>(); letter.SetState(LLAnimationStates.LL_rocketing); }
void Start() { letter = GetComponent <LivingLetterController>(); }
public StrollingLetterFallingState(StrollingLivingLetter letter) : base(letter) { view = letter.gameObject.GetComponent <LivingLetterController>(); }