Inheritance: MonoBehaviour
    void RemoveWaterfall()
    {
        if (tpc == null)
        {
            tpc = PlayerManager.GetMainPlayer();
        }

        if (tpc.currentWaterfall != null)
        {
            if (tpc.currentWaterfall.gameObject == waterfallcollider1)
            {
                waterfall1.SetActive(false);
                waterfallcollider1.SetActive(false);
                waterfallparticle1.SetActive(false);
            }
            if (tpc.currentWaterfall.gameObject == waterfallcollider2)
            {
                waterfall2.SetActive(false);
                waterfallcollider2.SetActive(false);
                waterfallparticle2.SetActive(false);
            }
            if (tpc.currentWaterfall.gameObject == waterfallcollider3)
            {
                waterfall3.SetActive(false);
                waterfallcollider3.SetActive(false);
                waterfallparticle3.SetActive(false);
            }
        }
    }
 void Start()
 {
     input     = ReInput.players.GetPlayer(0);
     tpc       = this.gameObject.GetComponent <TPC> ();
     camF      = cam.gameObject.GetComponent <CameraFollower> ();
     fovlerper = 50f;
 }
 void ResetCharacter(TPC chara)
 {
     if (!chara.challengeReset)
     {
         StartCoroutine(portal.ResetCharacter(chara));
     }
 }
Exemple #4
0
 void Start()
 {
     InBox = false;
     PressF.SetActive(false);
     TPC.SetActive(false);
     canHide = true;
 }
Exemple #5
0
    private void LateUpdate()
    {
        if (!dontFreezeEnemy)
        {
            if (chara == null)
            {
                chara = PlayerManager.GetMainPlayer();
            }

            if (chara != null)
            {
                if (chara.inCutscene && !freezeEnemy)
                {
                    freezeEnemy = true;
                    fzPos       = this.transform.position;
                }
                if (!chara.inCutscene && freezeEnemy)
                {
                    freezeEnemy = false;
                }
            }

            if (freezeEnemy)
            {
                this.transform.position = fzPos;
                if (icodescript != null && icodescript.gameObject != this.gameObject)
                {
                    icodescript.transform.position = fzPos;
                }
            }
        }
    }
 void OnCollisionStay(Collision collision)
 {
     if (plantAAOT.canUseSpline)
     {
         foreach (ContactPoint cp in collision.contacts)
         {
             if (cp.otherCollider.tag == "Player")
             {
                 TPC curTPC = cp.otherCollider.GetComponent <TPC>();
                 if (curTPC.onGround && coroutines[curTPC.pID] == null && !delayAttachment[curTPC.pID])
                 {
                     float shortestDist = 99999f;
                     float curDist      = 0f;
                     foreach (Transform t in waypoints)
                     {
                         curDist = (cp.otherCollider.transform.position - t.position).sqrMagnitude;
                         if (curDist < shortestDist)
                         {
                             shortestDist = curDist;
                             currentWaypoint[curTPC.pID] = int.Parse(t.name);
                         }
                     }
                     curTPC.onSpline        = true;
                     curTPC.disableControl  = true;
                     coroutines[curTPC.pID] = StartCoroutine("PathMovement", curTPC);
                 }
             }
         }
     }
 }
Exemple #7
0
 private void Start()
 {
     foreach (GameObject g in GameObject.FindGameObjectsWithTag("Player"))
     {
         if (g.name == "Woodle Character")
         {
             tpc = g.gameObject.GetComponent <TPC>();
         }
     }
 }
 void _AddPlayer(TPC newPlayer, int index)
 {/*
   * if (player.ContainsKey(index))
   * {
   *     Debug.LogWarning("PlayerManager.AddPlayer(" + newPlayer.name + ", " + index.ToString() + ") was called, but PlayerManager already contains player " + player[index].name + " at index " + index.ToString() + ". Overwriting previous player reference.");
   *     player[index] = newPlayer;
   * }
   * else
   *     player.Add(index, newPlayer);*/
 }
    IEnumerator PlayCutscene()
    {
        yield return(new WaitForSeconds(3f));

        GameObject.FindWithTag("Pause").transform.Find("Bars").GetComponent <Animator>().SetBool("barsToggle", true);

        tpc  = PlayerManager.GetMainPlayer();
        camF = tpc.cam.GetComponent <CameraFollower>();

        tpc.disableControl = true;
        tpc.rb.isKinematic = true;
        tpc.inCutscene     = true;

        camF.disableControl = true;
        Vector3    origPos = camF.transform.position;
        Quaternion origRot = camF.transform.rotation;

        if (cameraPosition == null)
        {
            camF.transform.position = barrier.transform.position - (barrier.transform.forward * 8f) + (Vector3.up * 6f);
            camF.transform.LookAt(barrier.transform);
        }
        else
        {
            camF.transform.position = cameraPosition.transform.position;
            camF.transform.rotation = cameraPosition.transform.rotation;
        }
        this.GetComponent <AudioSource>().Play();
        yield return(new WaitForSeconds(0.8f));

        pfxEM.enabled = true;
        pfx.GetComponent <ParticleSystem>().Play();
        StartCoroutine(tpc.DeactivateParticle(pfx, pfxEM));
        yield return(null);

        barrier.SetActive(false);
        if (protectedCollider)
        {
            protectedCollider.enabled = true;
        }

        GameObject.FindWithTag("Pause").transform.Find("Bars").GetComponent <Animator>().SetBool("barsToggle", false);

        for (int f = 0; f <= 60; f++)
        {
            camF.transform.position = Vector3.Lerp(camF.transform.position, origPos, f / 60f);
            camF.transform.rotation = Quaternion.Lerp(camF.transform.rotation, origRot, f / 60f);
            yield return(null);
        }

        tpc.disableControl  = false;
        tpc.rb.isKinematic  = false;
        tpc.inCutscene      = false;
        camF.disableControl = false;
    }
    void Start()
    {
        originalFont      = priceObj.GetComponent <TextMesh>().font;
        originalFontStyle = priceObj.GetComponent <TextMesh>().fontStyle;

        tpc = PlayerManager.GetMainPlayer();

        if (!PlayerPrefs.HasKey("PaidItemsCount"))
        {
            PlayerPrefs.SetInt("PaidItemsCount", 0);
            itemsBoughtCount = 0;
        }
        else
        {
            itemsBoughtCount = PlayerPrefs.GetInt("PaidItemsCount");
        }

        //

        if (!PlayerPrefs.HasKey("PaidForItem" + itemID.ToString()))
        {
            PlayerPrefs.SetInt("PaidForItem" + itemID.ToString(), 0);
        }
        else
        {
            if (PlayerPrefs.GetInt("PaidForItem" + itemID.ToString(), 0) == 1)
            {
                if (PlayerPrefs.GetInt("UsingItem" + itemID.ToString(), 0) == 1)
                {
                    itemonwoodle.SetActive(true);
                    touchedThis = true;
                    if (isAMask)
                    {
                        tpc.wearingMask = true;
                    }
                    if (isAnItem)
                    {
                        tpc.holdingItem = true;
                    }
                    if (isAHat)
                    {
                        tpc.wearingHat = true;
                    }
                    icon.SetActive(false);
                    bought.SetActive(true);
                    tpc.ToggleAbility(itemID, true);
                }
            }
        }

        ConvetForItemPrompt();

        curLang = PlayerPrefs.GetInt("Language", 0);
    }
    public static void AddPlayer(TPC player, int index)
    {
        Debug.Log(index + "  " + Time.timeSinceLevelLoad);
        if (singleton == null)
        {
            Debug.LogError("PlayerManager.AddPlayer(" + player.name + ", " + index.ToString() + ") was called but singleton was null! Aborting.");
            return;
        }

        singleton._AddPlayer(player, index);
    }
    IEnumerator CheckDistance(object[] paras)
    {
        ChunkChild chunk = (ChunkChild)paras[0];

        if (chara == null && PlayerManager.GetMainPlayer() != null)
        {
            chara = PlayerManager.GetMainPlayer();
        }

        if (activationDistance != origAD)
        {
            activationDistanceToUse = activationDistance * activationDistance;
            origAD = activationDistance;
        }

        if (chara)
        {
            distanceMultiplier = Mathf.Lerp(1f, 2f, (float)PlayerPrefs.GetInt("ObjectDetails", 2) / 8f);

            if ((chunk.chunkPos - chara.transform.position).sqrMagnitude <= activationDistanceToUse * distanceMultiplier)
            {
                if (!chunk.inChunk)
                {
                    chunk.inChunk = true;
                    foreach (GameObject g in chunk.chunkObjects)
                    {
                        if (g)
                        {
                            g.SetActive(true);
                        }
                    }
                }
            }
            else
            {
                if ((bool)paras[1] == true || chunk.inChunk)
                {
                    chunk.inChunk = false;
                    foreach (GameObject g in chunk.chunkObjects)
                    {
                        if (g)
                        {
                            g.SetActive(false);
                        }
                    }
                }
            }
        }
        yield return(new WaitForSeconds(intervalBetweenChecks + (float)paras[2]));

        paras[1] = false;
        paras[2] = 0f;
        StartCoroutine("CheckDistance", paras);
    }
    IEnumerator PathMovement(TPC character)
    {
        float input = Mathf.Abs(inputs[character.pID].GetAxis("LV"));

        if (Mathf.Abs(inputs[character.pID].GetAxis("LH")) > input)
        {
            input = Mathf.Abs(inputs[character.pID].GetAxis("LH"));
        }

        character.CalculateBasicAnimation(0f, input);

        int nextWaypoint = (int)Mathf.Sign(input) + currentWaypoint[character.pID];

        nextWaypoint = Mathf.Clamp(nextWaypoint, 0, waypoints.Count - 1);

        character.relative.transform.forward          = (waypoints[nextWaypoint].position - character.transform.position).normalized;
        character.relative.transform.localEulerAngles = new Vector3(0f, character.relative.transform.localEulerAngles.y, 0f);

        character.rb.velocity = Vector3.zero;
        character.rb.MovePosition(Vector3.MoveTowards(character.transform.position, waypoints[nextWaypoint].position, character.groundSpeed * Mathf.Abs(input) * Time.deltaTime));
        if ((character.transform.position - waypoints[nextWaypoint].position).sqrMagnitude < 0.1f)
        {
            currentWaypoint[character.pID] = nextWaypoint;
        }

        yield return(null);

        if (inputs[character.pID].GetButtonDown("Jump") || (nextWaypoint == currentWaypoint[character.pID]) && (nextWaypoint == 0 || nextWaypoint == waypoints.Count - 1))
        {
            character.onSpline             = false;
            character.disableControl       = false;
            coroutines[character.pID]      = null;
            delayAttachment[character.pID] = true;


            if (inputs[character.pID].GetButtonDown("Jump"))
            {
                yield return(null);

                character.onGround       = false;
                character.delayed        = true;
                character.jumpButtonDown = true;
                character.Jump();
            }

            yield return(new WaitForSeconds(0.5f));

            delayAttachment[character.pID] = false;
        }
        else
        {
            coroutines[character.pID] = StartCoroutine("PathMovement", character);
        }
    }
Exemple #14
0
    void ExitBox()
    {
        print("Exit Box");
        gameObject.transform.position                         = PlayerprevPos.transform.position;
        gameObject.transform.rotation                         = PlayerprevPos.transform.rotation;
        Player.GetComponent <Collider>().enabled              = true;
        Player.GetComponent <CharacterController>().enabled   = true;
        charMesh.GetComponent <SkinnedMeshRenderer>().enabled = true;
        Player.GetComponent <Throw>().enabled                 = true;
        //FPC.SetActive(true);
        TPC.SetActive(false);

        InBox = false;
    }
Exemple #15
0
    void CheckPSTrophies(int amount, TPC tpc)
    {
        int totalRBCount = PlayerPrefs.GetInt("RedBerryTotal", tpc.berryCount);

        totalRBCount += amount;
        PlayerPrefs.SetInt("RedBerryTotal", totalRBCount);

#if UNITY_PS4
        //
        // check trophy
        if (totalRBCount >= 100)
        {
            PS4Manager.ps4TrophyManager.UnlockTrophy((int)PS4_TROPHIES.COLLECT_100_RED_BERRIES);
        }
        //
        if (totalRBCount >= 1000)
        {
            PS4Manager.ps4TrophyManager.UnlockTrophy((int)PS4_TROPHIES.COLLECT_1000_RED_BERRIES);
        }
        //
        if (totalRBCount >= 3000)
        {
            PS4Manager.ps4TrophyManager.UnlockTrophy((int)PS4_TROPHIES.COLLECT_3000_RED_BERRIES);
        }
#endif

#if UNITY_XBOXONE
        //
        // check trophy
        if (totalRBCount >= 100)
        {
            XONEAchievements.SubmitAchievement((int)XONEACHIEVS.RED_BERRIES_LOVER);
        }
        //
        if (totalRBCount >= 1000)
        {
            XONEAchievements.SubmitAchievement((int)XONEACHIEVS.RED_BERRIES_PARADE);
        }
        //
        if (totalRBCount >= 3000)
        {
            XONEAchievements.SubmitAchievement((int)XONEACHIEVS.RED_BERRIES_CHAMPION);
        }
#endif
    }
Exemple #16
0
    IEnumerator CutsceneRoutine(PlayableDirector cutsceneToPlay)
    {
        TPC tpc = PlayerManager.GetMainPlayer();

        PlayerPrefs.SetInt("Intro2Watched", 1);
        StartScreen ss = tpc.ps.sS;

        if (cutsceneToPlay != finalCutscene)
        {
            for (int f = 1; f <= 60; f++)
            {
                AudioListener.volume = Mathf.Lerp(1f, 0f, (f * 1f) / 60f);
                ss.loadFS.color      = Color.Lerp(Color.clear, Color.white, (f * 1f) / 60f);
                yield return(null);
            }
        }
        tpc.transform.position = Vector3.up;
        tpc.anim.Play("Idle", 0);
        tpc.rb.velocity               = Vector3.zero;
        tpc.disableControl            = true;
        cameraFollower.disableControl = false;
        //    yield return new WaitForSeconds(3f);

        //    if(cutsceneToPlay == firstTearsCutscene)
        //        GameObject.FindWithTag("Pause").transform.Find("Event Text").gameObject.GetComponent<TextTriggerMain>().SetText(12);

        if (cutsceneToPlay != finalCutscene)
        {
            for (int f = 1; f <= 60; f++)
            {
                AudioListener.volume = Mathf.Lerp(0f, 1f, (f * 1f) / 60f);
                ss.loadFS.color      = Color.Lerp(Color.white, Color.clear, (f * 1f) / 60f);

                if (tpc.ps.plazaMain != null && (!tpc.ps.plazaMain.activeInHierarchy || !tpc.ps.plazaMain.transform.parent.gameObject.activeInHierarchy))
                {
                    tpc.ps.plazaMain.SetActive(true);
                    tpc.ps.plazaMain.transform.parent.gameObject.SetActive(true);
                }

                yield return(null);
            }
        }
        tpc.ps.StartCutscene(cutsceneToPlay, Vector3.up);
        //    ControlDisable(false);
    }
    void Update() {                                                 //Update() is only really used for errors and miscelaneous checks
        if (!firstPass) {
            chara = PlayerManager.GetMainPlayer();
			input = chara.input;
				
            if (chara != null) 
                charaRB = chara.gameObject.GetComponent<Rigidbody>();
            
            if (chara.gameObject.transform.Find("FollowMe").gameObject != null) {
                targetTransform = chara.gameObject.transform.Find("FollowMe").transform;
                followMe = chara.gameObject.transform.Find("FollowMe").transform;
            }

            if (chara.gameObject.transform.Find("FollowMe").gameObject != null) {
                this.transform.position = new Vector3((-distanceAway * targetTransform.transform.forward.x) + targetTransform.transform.position.x,
					distanceUp + targetTransform.transform.position.y,
                   (-distanceAway * targetTransform.transform.forward.z) + targetTransform.transform.position.z);
                
            }

            firstPass = true;

            lookAtPos = targetTransform.position;
            this.transform.position = lookAtPos - (new Vector3(this.transform.forward.x, 0f, this.transform.forward.z) * distanceAway) + (Vector3.up * distanceUp);
            lookAtPosY = targetTransform.position.y + distanceUp;
            this.transform.LookAt(lookAtPos);
        } else {
            if (!behindMode && !stationaryMode1 && !stationaryMode2 && !targetMode) {       //The camera will default to 'behindMode' if not in any particular mode
                behindMode = true;
            }
            if (cutsceneMode) {
                behindMode = false;
                targetMode = false;
                freeMode = false;
                targetMode = false;
            }

			freeX = input.GetAxis("RH");
			freeY = -input.GetAxis ("RV");
            if (freeInvertXAxis)
                freeX *= -1f;
            if(freeInvertYAxis || stationaryMode1 || stationaryMode2)
                freeY *= -1f;
        }
    }
    void OnTriggerEnter(Collider other)
    {
        if (!insideThisTrigger && other.gameObject == PlayerManager.GetMainPlayer().gameObject&& !PlayerManager.GetMainPlayer().challengeWarping&& !PlayerManager.GetMainPlayer().disableControl&& (entTrig == null || entTrig.isInsideThis))
        {
            //     if (level == "Level5")
            //       Debug.Log("ENTER LEVEL LOAD");

            if (entTrig)
            {
                entTrig.keepOn = true;
            }

            tpc = other.gameObject.GetComponent <TPC>();
            //    tpc.ps.ShowLevelTitle(level);

            if (!SceneManager.GetSceneByName(level).isLoaded)
            {
                tpcBeaver = PlayerManager.GetPlayer(1);
                cam       = tpc.cam.GetComponent <CameraFollower>();
                StartCoroutine(Loadinglevel());
            }
            else
            {
                if (fullSceneObject == null)
                {
                    FindFullLevel();
                }
                if (fullSceneObject != null)
                {
                    odm.ActivateObject(fullSceneObject);
                }

                StartCoroutine("WaitToDeact");
                //   if (noncolliderzone != null)
                //       odm.DeactivateObject(noncolliderzone, null);
            }

            /*    if (lptCollider != null)
             *  {
             *      lptCollider.gameObject.SetActive(false);
             *      lptCollider.enabled = true;
             *      lptCollider.gameObject.SetActive(true);
             *  }*/
        }
    }
Exemple #19
0
    private void Start()
    {
        tpc         = PlayerManager.GetMainPlayer();
        ps          = tpc.ps;
        animator    = GetComponent <Animator>();
        audioSource = GetComponent <AudioSource>();

        pfxEM         = pfx.GetComponent <ParticleSystem>().emission;
        pfxEM.enabled = false;

        if (sleepingFlowerNPC != null)
        {
            flowerAnim = sleepingFlowerNPC.GetComponent <Animator>();
        }

        //    if(PlayerPrefs.GetInt("Portal" + portalID.ToString(), 0) == 1)
        //        animator.SetBool("Activated", true);
    }
    IEnumerator CheckDistance()
    {
        if (tpc == null)
        {
            tpc = PlayerManager.GetMainPlayer();
        }
        if (tpc != null)
        {
            if (Vector3.Distance(this.transform.position, tpc.transform.position) <= distanceToStart)
            {
                if (!entered)
                {
                    entered = true;
                    if (this.gameObject.activeInHierarchy)
                    {
                        StartCoroutine("Vibrate");
                    }
                }
            }
            else
            {
                if (entered)
                {
                    entered = false;
                    StopCoroutine("Vibrate");
                }
            }
        }

        for (float f = 0f; f < 1f; f += Time.deltaTime * Time.timeScale)
        {
            while (DataManager.isSuspended)
            {
                yield return(null);
            }

            yield return(null);
        }

        StartCoroutine("CheckDistance");
    }
Exemple #21
0
    void EnterBox()
    {
        PressF.SetActive(true);
        if (Input.GetKeyDown(KeyCode.F) && InBox == false)
        {
            print("Enters Box");
            PlayerprevPos.transform.position         = gameObject.transform.position;//Save Position
            PlayerprevPos.transform.rotation         = gameObject.transform.rotation;
            Player.GetComponent <Collider>().enabled = false;
            charMesh.GetComponent <SkinnedMeshRenderer>().enabled = false;
            TPC.SetActive(true);
            //FPC.SetActive(false);
            Player.GetComponent <MeshRenderer>().enabled = false;
            Player.GetComponent <Throw>().enabled        = false;
            gameObject.transform.position = box.transform.position; //go into box
            gameObject.transform.rotation = box.transform.rotation; //rotate player to look out of box
            Player.GetComponent <CharacterController>().enabled = false;

            InBox = true;
        }
    }
    void Start()
    {
        foreach (GameObject go in GameObject.FindGameObjectsWithTag("Player"))
        {
            if (go.name == "Woodle Character")
            {
                woodle = go;
            }
        }
        tpc = woodle.GetComponent <TPC>();

        berries = new GameObject[this.transform.childCount];
        int b = 0;

        foreach (Transform t in transform)
        {
            berries[b] = t.gameObject;
            b++;
        }

        textMain = GameObject.FindWithTag("Pause").transform.Find("Event Text").gameObject.GetComponent <TextTriggerMain>();
    }
    void Start()
    {
        foreach (GameObject go in GameObject.FindGameObjectsWithTag("Player"))
        {
            if (go.name == "Woodle Character")
            {
                woodle = go;
            }
        }
        tpc = woodle.GetComponent <TPC>();

        berries          = new GameObject[this.transform.childCount];
        collectedBerries = new bool[berries.Length];
        int b = 0;

        foreach (Transform t in transform)
        {
            berries[b]          = t.gameObject;
            collectedBerries[b] = false;
            b++;
        }
    }
Exemple #24
0
    public void CageBroken()
    {
        if (cageID != -1)
        {
            PlayerPrefs.SetInt("Cage" + cageID.ToString(), 1);

            CagedNPCManager.RunThroughNPCs();

            if (cageID >= 4)
            {
                CountFreedFlowers();
            }
            //    CagedNPCManager.SpecialCaseCheck(cageID);
        }

        audioSource.enabled = true;

        npcText.gameObject.transform.parent.parent.parent.parent.gameObject.GetComponent <NPCInteraction>().textID = freeTextID;

        if (npcAnimator != null && victoryAnimationName != "")
        {
            npcAnimator.Play(victoryAnimationName, 0);
        }

        tpc    = PlayerManager.GetMainPlayer();
        woodle = tpc.gameObject;

        StartCoroutine(BerryReward(berryReward));
        CheckPSTrophies(berryReward);

        if (npcAnimator != null)
        {
            npcRenderer = npcAnimator.GetComponentInChildren <Renderer>();
        }
        StartCoroutine(FinishInteraction());
    }
 void OnTriggerEnter(Collider other)
 {
     if (!PlayerManager.GetMainPlayer().inButtonCutscene&& other.gameObject.layer == 14 && ((buttonID == -1 && !activated) || (buttonID != -1 && PlayerPrefs.GetInt("Button" + buttonID.ToString(), 0) == 0)))
     {
         if (other.gameObject.GetComponent <AttackSettings>().activeAttack == true)
         {
             tpc  = PlayerManager.GetMainPlayer();
             camF = tpc.cam.GetComponent <CameraFollower>();
             if (cameraPosition != null || objectanimated != null)
             {
                 StartCoroutine("PlayCutscene");
             }
             if (buttonID != -1)
             {
                 PlayerPrefs.SetInt("Button" + buttonID.ToString(), 1);
             }
             //    PlayerPrefs.Save();
             if (lCol == null)
             {
                 lCol = other.gameObject.GetComponent <LeafCollision>();
             }
             if (lCol != null)
             {
                 lCol.buttonParticles.transform.SetParent(lCol.tpc.transform.parent);
                 lCol.buttonParticles.transform.position = other.ClosestPoint(this.transform.position);
                 lCol.buttonParticles.transform.LookAt(other.transform.position);
                 lCol.buttonEM.enabled = true;
                 lCol.buttonParticles.GetComponent <ParticleSystem>().Play();
                 StartCoroutine(lCol.tpc.DeactivateParticle(lCol.buttonParticles, lCol.buttonEM));
                 //    lCol.tpc.Vibrate(0.4f, 1f, 0);
                 HDRumbleMain.PlayVibrationPreset(0, "D06_Thumpp4", 1f, 0, 0.2f);
             }
             ActivateIt();
         }
     }
 }
    private void Start()
    {
        if (amount <= 0)
        {
            amount = 1;
        }
        initAmount = amount;

        tpc = PlayerManager.GetMainPlayer();

        /*
         * if (tpc.ps.enableDebugTab && berryType == BerryManagerTrigger.BerryType.blue)
         * {
         *  collected = true;
         *  if (berryType == BerryManagerTrigger.BerryType.blue)
         *  {
         *      string temp1 = PlayerPrefs.GetString(this.gameObject.scene.name + "BlueBerry");
         *      string temp2 = temp1.Remove(id, 1);
         *      string temp3 = temp2.Insert(id, "1");
         *      PlayerPrefs.SetString(this.gameObject.scene.name + "BlueBerry", temp3);
         *  }
         *  StartCoroutine("MultiCollect", tpc.initialParent.GetComponent<BerryManagerTrigger>());
         * }*/
    }
Exemple #27
0
 public void BeenHit(bool wasWindballOrDrop, int charaID)
 {
     if (anim != null && hasParam)
     {
         anim.ResetTrigger("Hurt");
         anim.SetTrigger("Hurt");
     }
     StopCoroutine("SendFlyingCoro");
     currentChara = PlayerManager.GetPlayer(charaID);
     SendFlying(wasWindballOrDrop);
     if (!infiniteHealth)
     {
         if (useBigOuchSounds)
         {
             EnemySoundManager.PlayBigOuchSound();
         }
         else
         {
             EnemySoundManager.PlayOuchSound();
         }
     }
     StopCoroutine("HitFlash");
     StartCoroutine("HitFlash");
 }
Exemple #28
0
    public IEnumerator ResetCharacter(TPC character)
    {
        character.challengeReset = true;
        if (character == PlayerManager.GetMainPlayer())
        {
            if (ps == null)
            {
                ps = character.ps;
            }

            character.disableControl = true;
            character.ExitRiverForce();
            character.ExitWaterFS();
            character.inWindCol = false;

            foreach (TPC mtpc in ps.multiTPC)
            {
                mtpc.disableControl = true;
                mtpc.ExitRiverForce();
                mtpc.ExitWaterFS();
            }
            ps.cam.disableControl = true;

            ps.cantPause = true;

            for (int f = 1; f <= 60; f++)
            {
                AudioListener.volume = Mathf.Lerp(1f, 0f, (f * 1f) / 60f);
                ps.loadFS.color      = Color.Lerp(Color.clear, Color.white, (f * 1f) / 60f);
                yield return(null);
            }

            character.transform.position = this.transform.position + Vector3.up;
            character.anim.enabled       = true;
            character.anim.SetBool("damaged", false);
            character.anim.Play("Idle", 0);
            character.onGround       = true;
            character.rb.isKinematic = true;
            ps.PositionMultiCharacters();

            ps.cam.disableControl = false;

            yield return(new WaitForSeconds(2f));

            for (int f = 59; f >= 0; f--)
            {
                AudioListener.volume = Mathf.Lerp(1f, 0f, (f * 1f) / 60f);
                ps.loadFS.color      = Color.Lerp(Color.clear, Color.white, (f * 1f) / 60f);
                yield return(null);
            }

            character.capcol.enabled = true;
            character.rb.isKinematic = false;
            character.disableControl = false;
            foreach (TPC mtpc in ps.multiTPC)
            {
                mtpc.disableControl = false;
            }
            character.rb.velocity = Vector3.zero;
            ps.cantPause          = false;

            character.challengeReset = false;
        }
        else
        {
            StartCoroutine(character.RespawnCharacterWait());
        }
    }
Exemple #29
0
    void OnTriggerStay(Collider other)
    {
        if ((other.gameObject.tag == "Player"))
        {
            //    Debug.Log(this.transform.parent.name + " " + canCollect +" "+ this.movingBerry);
            if (canCollect && !this.movingBerry)
            {
                if (collectibleType == "Berry")
                {
                    chara = other.gameObject.GetComponent <TPC>();
                    chara.berryPFX.PlayEffect(0, this.transform.position, null, Vector3.zero, false);
                    this.bagpack = chara.dayPack;
                    this.origPos = this.transform.position;
                    if (sphereCol != null)
                    {
                        sphereCol.enabled = false;
                    }
                    if (PlayerPrefs.GetInt("AllFlowers", 0) == 1)
                    {
                        value *= 2;
                    }
                    chara.berryCount += value;
                    CheckPSTrophies(value, chara);
                    BerrySpawnManager.PlayBerryNoise(false);
                    chara.UpdateBerryHUDRed();
                    this.movingBerry = true;
                    this.berryIt     = 0;
                    StartCoroutine(MoveBerry());
                }
                if (collectibleType == "BigBerry")
                {
                    chara = other.gameObject.GetComponent <TPC>();
                    chara.berryPFX.PlayEffect(0, this.transform.position, null, Vector3.zero, false);
                    this.bagpack = chara.dayPack;
                    this.origPos = this.transform.position;
                    if (sphereCol != null)
                    {
                        sphereCol.enabled = false;
                    }
                    value = 5;
                    if (PlayerPrefs.GetInt("AllFlowers", 0) == 1)
                    {
                        value = 10;
                    }
                    StartCoroutine(MultiCollect(value));
                    CheckPSTrophies(value, chara);
                    BerrySpawnManager.PlayBerryNoise(true);
                    this.movingBerry = true;
                    this.berryIt     = 0;
                    StartCoroutine(MoveBerry());
                }

                /*    if (collectibleType == "BlueBerry")
                 *  {
                 *      if (PlayerPrefs.GetInt("FirstBlueBerry", 0) == 0)
                 *      {
                 *          PlayerPrefs.SetInt("FirstBlueBerry", 1);
                 *          GameObject.FindWithTag("Pause").transform.Find("Event Text").gameObject.GetComponent<TextTriggerMain>().SetText(1);
                 *      }
                 *
                 *      chara = other.gameObject.GetComponent<TPC>();
                 *      chara.berryPFX.PlayEffect(1, this.transform.position, null, Vector3.zero, false);
                 *      this.bagpack = chara.dayPack;
                 *      this.origPos = this.transform.position;
                 *      if (sphereCol != null)
                 *          sphereCol.enabled = false;
                 *      chara.blueberryCount += value;
                 *      BerrySpawnManager.PlayBlueBerryNoise(other.gameObject.GetComponent<TPC>().pID);
                 *      chara.UpdateBerryHUDBlue();
                 *      this.movingBerry = true;
                 *      this.berryIt = 0;
                 *      StartCoroutine(MoveBerry());
                 *  }*/
            }
        }
    }
 void Start()
 {
     mainChara = PlayerManager.GetMainPlayer();
 }