Example #1
0
    void loadItems()
    {
        AdventureMeta            meta     = BaseSaver.getAdventure();
        Dictionary <string, int> treasure = meta.GetTreasureList();
        List <string>            keys     = new List <string>(treasure.Keys);

        GameObject.Find("MoneyTxt").GetComponent <Text>().text = "¥" + meta.getYen();
        for (int i = 1; i < 10; i++)
        {
            if (keys.Count >= i)
            {
                itemSubPnls[i - 1].SetActive(true);
                string img         = "I0" + i.ToString() + "Img";
                string nme         = "I0" + i.ToString() + "Name";
                string description = "I0" + i.ToString() + "Desc";
                string qty         = "I0" + i.ToString() + "Qty";

                GameObject.Find(img).GetComponent <Image>().sprite      = glossy.GetItem(keys[i - 1]).GetComponent <SpriteRenderer>().sprite;
                GameObject.Find(nme).GetComponent <Text>().text         = keys[i - 1];
                GameObject.Find(description).GetComponent <Text>().text = glossy.GetItem(keys[i - 1]).monTreas.description;
                GameObject.Find(qty).GetComponent <Text>().text         = treasure[keys[i - 1]].ToString();
            }
            else
            {
                itemSubPnls[i - 1].SetActive(false);
            }
        }
    }
Example #2
0
    IEnumerator SaveConversation(GameObject npc)
    {
        AdventureMeta meta = BaseSaver.getAdventure();
        //meta.playerPos = new PosMeta(transform.position);
        NPCMain trainerMain = npc.GetComponent <NPCMain>();

        if (trainerMain.meta.infiniteTrainer)
        {
            meta.trainer = trainerMain.getInfiniteMeta(meta);
        }
        else
        {
            meta.trainer = trainerMain.getRefinedMeta();
        }
        meta.trainer.pos        = new PosMeta(npc.transform.position);
        meta.wild               = null;
        meta.isTrainerEncounter = true;

        Debug.Log(meta.ToString());
        Debug.Log(meta.trainer.ToString());

        BaseSaver.putAdventure(meta);
        BaseSaver.putBoard(GameUtilities.getBoardState(BaseSaver.getMap(), new PosMeta(transform.position)));
        yield return(null);
    }
Example #3
0
    // Use this for initialization
    public void Start()
    {
        BaseSaver.putSaveNumber(fileIdx);
        AdventureMeta meta = BaseSaver.getAdventure();

        if (meta != null)
        {
            float pwr = 0;
            foreach (PlayerRosterMeta pM in meta.roster)
            {
                pwr += pM.getPower();
            }
            Power.GetComponent <Text>().text   = "Roster Pwr: " + Math.Round(pwr, 2).ToString();
            Temples.GetComponent <Text>().text = "Temples: " + meta.temples.Length.ToString();
            Map.GetComponent <Text>().text     = "Map: " + BaseSaver.getMap();
            MoheCnt.GetComponent <Text>().text = "Mohe #: " + (meta.roster.Length + meta.vault.Length).ToString();
            Yen.GetComponent <Text>().text     = "¥" + meta.getYen().ToString();
        }
        else
        {
            Power.GetComponent <Text>().text   = "";
            Temples.GetComponent <Text>().text = "";
            Map.GetComponent <Text>().text     = "New Save";
            MoheCnt.GetComponent <Text>().text = "";
            Yen.GetComponent <Text>().text     = "";
        }
    }
Example #4
0
    /*
     * ADVENTURE
     */

    //public static void resetAdventure()
    //{
    //  PlayerPrefs.SetString(ADVENTURE, "");
    //  PlayerPrefs.SetString(SAVE_ADVENTURE, "");

    //  Debug.Log("ADVENTURE RESET");
    //}

    public static void putAdventure(AdventureMeta info)
    {
        string json = JsonUtility.ToJson(info);

        PlayerPrefs.SetString(adjKy(ADVENTURE), json);

        Debug.Log("ADVENTURE set: " + adjKy(ADVENTURE) + ":" + json);
    }
Example #5
0
    private IEnumerator WaitForShifting(bool win, bool caughtSomething, bool killed, AdventureMeta meta)
    {
        yield return(new WaitUntil(() => !BoardManager.instance.IsThinking()));

        yield return(new WaitForSeconds(.25f));

        GameOver(win, caughtSomething, killed, meta);
    }
Example #6
0
    public void PopulateShop()
    {
        shopActive = true;
        Debug.Log("PopulateShop");
        Glossary      glossy   = PauseManager.instance.glossaryObj.GetComponent <Glossary>();
        List <string> defeated = GameUtilities.getInteractedWith(glossy, false, true);

        if (defeated.Contains("Gaia Temple Leader Audrey") && !shopOwnersStock.ContainsKey("Stim"))
        {
            shopOwnersStock.Add("Stim", 150);
        }

        if (shopitemSubPnls == null)
        {
            shopitemSubPnls = new GameObject[] {
                GameObject.Find("ShopItemPnl01"),
                GameObject.Find("ShopItemPnl02"),
                GameObject.Find("ShopItemPnl03"),
                GameObject.Find("ShopItemPnl04"),
                GameObject.Find("ShopItemPnl05"),
                GameObject.Find("ShopItemPnl06"),
                GameObject.Find("ShopItemPnl07"),
                GameObject.Find("ShopItemPnl08"),
                GameObject.Find("ShopItemPnl09")
            };
        }

        AdventureMeta meta = BaseSaver.getAdventure();

        Dictionary <string, int> treasure      = meta.GetTreasureList();
        List <string>            inventoryKeys = new List <string>(treasure.Keys);
        List <string>            shopKeys      = new List <string>(shopOwnersStock.Keys);

        GameObject.Find("MoneyTxt").GetComponent <Text>().text = "¥" + meta.getYen();
        for (int i = 1; i < 10; i++)
        {
            if (shopKeys.Count >= i)
            {
                shopitemSubPnls[i - 1].SetActive(true);
                string img         = "SI0" + i.ToString() + "Img";
                string nme         = "SI0" + i.ToString() + "Name";
                string description = "SI0" + i.ToString() + "Desc";
                string qty         = "SI0" + i.ToString() + "Qty";
                string cost        = "SI0" + i.ToString() + "Cost";

                GameObject.Find(img).GetComponent <Image>().sprite      = glossy.GetItem(shopKeys[i - 1]).GetComponent <SpriteRenderer>().sprite;
                GameObject.Find(nme).GetComponent <Text>().text         = shopKeys[i - 1];
                GameObject.Find(description).GetComponent <Text>().text = glossy.GetItem(shopKeys[i - 1]).monTreas.description;
                GameObject.Find(qty).GetComponent <Text>().text         = treasure.ContainsKey(shopKeys[i - 1]) ? treasure[shopKeys[i - 1]].ToString() : "0";
                GameObject.Find(cost).GetComponent <Text>().text        = "¥" + shopOwnersStock[shopKeys[i - 1]].ToString();
            }
            else
            {
                shopitemSubPnls[i - 1].SetActive(false);
            }
        }
    }
Example #7
0
    public void EditedRosterNickname(UnityEngine.UI.Text nickname_edit)
    {
        Debug.Log("Submitting Nickname: " + nickname_edit.text);
        AdventureMeta playerMeta = BaseSaver.getAdventure();

        playerMeta.roster[currentRosterMonster].nickname = nickname_edit.text;
        BaseSaver.putAdventure(playerMeta);
        rosterInput.GetComponent <InputField>().text = "";
        loadRosterInfo(currentRosterMonster + 1);
    }
Example #8
0
    public static int getNPCYenValue(AdventureMeta meta)
    {
        int value = 0;

        foreach (PlayerRosterMeta mohe in meta.roster)
        {
            value += mohe.lvl + mohe.maxHealth;
        }
        return(value);
    }
Example #9
0
    public static AdventureMeta UseItem(TreasureMain itemToUse, AdventureMeta meta, int rosterPos, List <SkillMeta> skills)
    {
        /*
         * Verify item is in the list
         * update adventure meta
         */
        if (itemToUse != null)
        {
            switch (itemToUse.monTreas.effects)
            {
            case MonTreasMeta.Type.Exp:
                meta.roster[rosterPos].exp += itemToUse.monTreas.value;
                break;

            case MonTreasMeta.Type.Heal:
                Debug.Log("Healing: " + itemToUse.monTreas.value.ToString());
                //For some reason, there's a bug here
                //meta.roster[rosterPos].curHealth += itemToUse.monTreas.value;
                meta.roster[rosterPos].curHealth += 10;
                if (meta.roster[rosterPos].curHealth > meta.roster[rosterPos].maxHealth)
                {
                    meta.roster[rosterPos].curHealth = meta.roster[rosterPos].maxHealth;
                }
                break;

            //case MonTreasMeta.Type.Money:
            //meta.addYen(itemToUse.monTreas.value);
            //break;
            case MonTreasMeta.Type.Revive:
                if (meta.roster[rosterPos].curHealth <= 0)
                {
                    meta.roster[rosterPos].curHealth = meta.roster[rosterPos].maxHealth / 2;
                }
                break;

            case MonTreasMeta.Type.Skills:
                PanelManager.instance.FillSkills();
                break;

            case MonTreasMeta.Type.Stats:
                meta.roster[rosterPos].AddToLowest(1);
                break;

            case MonTreasMeta.Type.XBuff:
                BoardManager.instance.buff(itemToUse.monTreas.value);
                break;

            default:
                break;
            }
        }


        return(meta);
    }
Example #10
0
    IEnumerator StartIntro(Glossary glossy, AdventureMeta meta)
    {
        /*
         * Make color = black
         * move to center
         * shake
         * Make color = normal
         */
        //HideBoard();
        yield return(new WaitForSeconds(.5f));

        GameObject toCopy   = introPanel.transform.Find("Image").gameObject;
        GameObject descObj  = introPanel.transform.Find("Desc").gameObject;
        Color      oldColor = toCopy.GetComponent <Image>().color;

        if (meta.isTrainerEncounter)
        {
            toCopy.GetComponent <Image>().sprite = genericTrainer;
        }
        else
        {
            toCopy.GetComponent <Image>().sprite = glossy.GetMonsterImage(meta.wild.name);
            toCopy.GetComponent <Image>().color  = Color.black;
        }
        descObj.GetComponent <Text>().text = "";

        //GameObject character = Instantiate(toCopy, toCopy.transform.position, Quaternion.identity);
        iTween.MoveTo(toCopy, new Vector3(descObj.transform.position.x, toCopy.transform.position.y, toCopy.transform.position.z), 1f);
        yield return(new WaitForSeconds(1f));

        if (!meta.isTrainerEncounter)
        {
            iTween.ShakePosition(toCopy, new Vector3(1, 0, 0), .2f);
        }
        yield return(new WaitForSeconds(1f));

        //iTween.ValueTo(introPanel, iTween.Hash(
        //"from", 0,
        //"to", 1,
        //"time", .5f,
        //"onupdatetarget", gameObject,
        //"onupdate", "RevealCharacter"));
        toCopy.GetComponent <Image>().color = oldColor;
        if (meta.isTrainerEncounter)
        {
            descObj.GetComponent <Text>().text = "Challenged By : " + meta.trainer.name;
        }
        else
        {
            descObj.GetComponent <Text>().text = "Wild " + meta.wild.name + " Found!";
        }
    }
Example #11
0
    public void ResetAll(int save)
    {
        Debug.Log("ResetAll");
        Glossary glossy = GameObject.Find("Glossary").GetComponent <Glossary>();

        SoftReset(save);
        BaseSaver.setMapName("ShallowGrove");
        AdventureMeta meta = new AdventureMeta();

        meta.roster = returnTestRoster(glossy);
        meta.vault  = new PlayerRosterMeta[0];
        BaseSaver.putAdventure(meta);
        newScene = true;
    }
Example #12
0
    IEnumerator HealSave()
    {
        AdventureMeta meta = GameObject.FindWithTag("Player").GetComponent <PlayerMain>().playerMeta;

        meta.trainer = null;
        //meta.playerPos = new PosMeta(GameObject.Find("PlayerHero").transform.position);
        foreach (PlayerRosterMeta monster in meta.roster)
        {
            monster.curHealth = monster.maxHealth;
        }
        BaseSaver.putAdventure(meta);
        BaseSaver.putBoard(GameUtilities.getBoardState(BaseSaver.getMap(), new PosMeta(GameObject.FindWithTag("Player").transform.position)));
        BaseSaver.saveState();
        yield return(null);
    }
Example #13
0
    IEnumerator SaveItem(GameObject item)
    {
        AdventureMeta meta = BaseSaver.getAdventure();

        if (item.GetComponent <TreasureMain>().monTreas.effects == MonTreasMeta.Type.Money)
        {
            meta.addYen(item.GetComponent <TreasureMain>().monTreas.value);
        }
        else
        {
            meta.AddToTreasureList(item.name, 1);
        }
        BaseSaver.putAdventure(meta);
        yield return(null);
    }
Example #14
0
    public void VaultClick(int pos)
    {
        SFXManager.instance.PlaySFX(Clip.Select);
        AdventureMeta adventure = BaseSaver.getAdventure();

        if (adventure.vault.Length > pos)
        {
            if (vaultDeleting)
            {
                if (vaultDeleteBuffer[0] != -1)
                {
                    Debug.Log("Attempt to remove at: " + pos.ToString());
                    if (vaultDeleteBuffer[0] == pos)
                    {
                        Debug.Log("Removing at: " + pos.ToString());
                        List <PlayerRosterMeta> vList = new List <PlayerRosterMeta>(adventure.vault);
                        vList.RemoveAt(pos);
                        adventure.vault = vList.ToArray();
                        BaseSaver.putAdventure(adventure);
                    }
                    //adventure.vault = adventure.vault.Skip(pos+1).ToArray();
                    notVaultDeleting();
                    loadVault();
                }
                else
                {
                    vaultDeleteBuffer[0] = pos;
                    string     posStr  = pos + 1 < 10 ? 0 + (pos + 1).ToString() : (pos + 1).ToString();
                    GameObject clicked = GameObject.Find("VBk" + posStr);
                    clicked.AddComponent <Outline>();
                    clicked.GetComponent <Outline>().enabled     = true;
                    clicked.GetComponent <Outline>().effectColor = new Color(.871f, .376f, .318f);
                }
            }
            else
            {
                vaultPos  = pos;
                vaultSwap = true;
                vaultPnl.SetActive(false);
                rosterPnl.SetActive(true);
                loadRoster();
            }
        }
    }
Example #15
0
    void populateCatchPanel(bool monsterDead, bool monsterEscape, PlayerRosterMeta monsterFaught)
    {
        Debug.Log("populateCatchPanel: " + monsterDead.ToString() + ":" + monsterEscape.ToString());

        if (monsterDead)
        {
            GameObject.Find("CDead").SetActive(true);
        }
        else
        {
            GameObject.Find("CDead").SetActive(false);
        }

        if (monsterEscape)
        {
            GameObject.Find("CEscape").SetActive(true);
        }
        else
        {
            GameObject.Find("CEscape").SetActive(false);
        }

        AdventureMeta meta = BaseSaver.getAdventure();

        Glossary glossy = PanelManager.instance.glossaryObj.GetComponent <Glossary>();

        GameObject.Find("CImg").GetComponent <Image>().sprite        = glossy.GetMonsterImage(monsterFaught.name);
        GameObject.Find("CName").GetComponent <Text>().text          = monsterFaught.name;
        GameObject.Find("CHealth").GetComponent <Image>().fillAmount = (float)monsterFaught.curHealth / (float)monsterFaught.maxHealth;
        GameObject.Find("CHealthTxt").GetComponent <Text>().text     = monsterFaught.curHealth.ToString() + "/" + monsterFaught.maxHealth.ToString();
        GameObject.Find("Clvl").GetComponent <Text>().text           = monsterFaught.lvl.ToString();

        for (int i = 0; i < 4; i++)
        {
            if (monsterFaught.skills.Length > i)
            {
                GameObject.Find("CSk0" + (i + 1) + "C").GetComponent <Text>().text = monsterFaught.skills[i];
            }
            else
            {
                GameObject.Find("CSk0" + (i + 1) + "C").SetActive(false);
            }
        }
    }
Example #16
0
    public IEnumerator WaitTrigger(float wait)
    {
        int roll = Random.Range(0, 10);

        if (roll < 1 && GetComponent <Move>().Moving() && !PauseManager.instance.IsOpen() && !DialogManager.instance.ShopActive() && !DialogManager.instance.DialogActive())
        {
            Debug.Log("Hit");

            //GetComponent<Move>().disableMove();
            AdventureMeta meta      = BaseSaver.getAdventure();
            Glossary      glossy    = GameObject.Find("PauseCanvas").GetComponent <PauseManager>().glossaryObj.GetComponent <Glossary>();
            SceneMeta     thisScene = glossy.GetScene(BaseSaver.getMap()).meta;

            List <PlayerRosterMeta> monsters = new List <PlayerRosterMeta>();
            foreach (string mons in thisScene.monsters)
            {
                if (!mons.Equals(lastMonster))
                {
                    MonsterMeta met = glossy.GetMonsterMain(mons).meta;
                    int         lvl = Random.Range(thisScene.monsterLvls[0], thisScene.monsterLvls[1]);
                    monsters.Add(MonsterMeta.returnMonster(met, lvl, true));
                }
            }

            PlayerRosterMeta[] scrbMons = monsters.ToArray();
            GameUtilities.ShuffleArray(scrbMons);

            meta.trainer            = null;
            meta.wild               = scrbMons[0];
            meta.isTrainerEncounter = false;
            lastMonster             = meta.wild.name;

            BaseSaver.putAdventure(meta);
            BaseSaver.putBoard(GameUtilities.getBoardState(BaseSaver.getMap(), new PosMeta(transform.position)));

            StartCoroutine(DialogManager.FightFlash(false));
            //Initiate.Fade("BejeweledScene", Color.black, 1.0f);
        }
        yield return(new WaitForSeconds(wait));

        waitingForRoll = false;
        yield return(null);
    }
Example #17
0
    void loadVault()
    {
        AdventureMeta meta = BaseSaver.getAdventure();

        //VBk01
        for (int i = 0 + pageDistance; i < 24 + pageDistance; i++)
        {
            GameObject vMohe;
            GameObject vMoheLvlOut;
            GameObject vMoheLvl;
            if ((i + 1) < 10)
            {
                vMohe       = GameObject.Find("VMon0" + (i + 1).ToString());
                vMoheLvlOut = GameObject.Find("LvlOutline0" + (i + 1).ToString());
                vMoheLvl    = GameObject.Find("VMonLvl0" + (i + 1).ToString());
            }
            else
            {
                vMohe       = GameObject.Find("VMon" + (i + 1).ToString());
                vMoheLvlOut = GameObject.Find("LvlOutline" + (i + 1).ToString());
                vMoheLvl    = GameObject.Find("VMonLvl" + (i + 1).ToString());
            }
            if (meta.vault == null)
            {
                meta.vault = new PlayerRosterMeta[0];
                BaseSaver.putAdventure(meta);
            }
            if (meta.vault.Length > i)
            {
                vMohe.GetComponent <Image>().enabled       = true;
                vMohe.GetComponent <Image>().sprite        = glossy.GetMonsterImage(meta.vault[i].name);
                vMoheLvlOut.GetComponent <Image>().enabled = true;
                vMoheLvl.GetComponent <Text>().enabled     = true;
                vMoheLvl.GetComponent <Text>().text        = meta.vault[i].lvl.ToString();
            }
            else
            {
                vMohe.GetComponent <Image>().enabled       = false;
                vMoheLvlOut.GetComponent <Image>().enabled = false;
                vMoheLvl.GetComponent <Text>().enabled     = false;
            }
        }
    }
Example #18
0
    void loadRoster()
    {
        AdventureMeta meta = BaseSaver.getAdventure();

        for (int i = 1; i < 7; i++)
        {
            if (meta.roster.Length >= i)
            {
                Debug.Log("I: " + i.ToString());
                Debug.Log("Monster Name: " + meta.roster[i - 1].name);
                rosterSubPnls[i - 1].SetActive(true);
                string img       = "M0" + i.ToString() + "Img";
                string health    = "M0" + i.ToString() + "Health";
                string healthTxt = "M0" + i.ToString() + "HealthTxt";
                string mName     = "M0" + i.ToString() + "Name";
                string mLvl      = "M0" + i.ToString() + "lvl";
                string mExp      = "M0" + i.ToString() + "Exp";
                string mExpTxt   = "M0" + i.ToString() + "ExpTxt";
                string mPowTxt   = "M0" + i.ToString() + "Pow";

                int[] lvlCalc = MonsterMeta.CalcLvl(meta.roster[i - 1], glossy.GetMonsterMain(meta.roster[i - 1].name).meta.lvlSpeed);

                GameObject.Find(img).GetComponent <Image>().sprite = glossy.GetMonsterImage(meta.roster[i - 1].name);

                GameObject.Find(health).GetComponent <Image>().fillAmount = (meta.roster[i - 1].curHealth / (float)meta.roster[i - 1].maxHealth);
                GameObject.Find(healthTxt).GetComponent <Text>().text     = meta.roster[i - 1].curHealth.ToString() + " / " + meta.roster[i - 1].maxHealth.ToString();

                GameObject.Find(mExp).GetComponent <Image>().fillAmount = (lvlCalc[1] / (float)lvlCalc[2]);
                GameObject.Find(mExpTxt).GetComponent <Text>().text     = (lvlCalc[2] - lvlCalc[1]).ToString();

                GameObject.Find(mName).GetComponent <Text>().text = meta.roster[i - 1].nickname.Length > 0 ? meta.roster[i - 1].nickname : meta.roster[i - 1].name;
                GameObject.Find(mLvl).GetComponent <Text>().text  = lvlCalc[0].ToString();

                Debug.Log("Power: " + meta.roster[i - 1].getPower().ToString("0.00"));

                GameObject.Find(mPowTxt).GetComponent <Text>().text = "POW: <color=#ff0000>" + meta.roster[i - 1].getPower().ToString("0.00") + "</color>";
            }
            else
            {
                rosterSubPnls[i - 1].SetActive(false);
            }
        }
    }
Example #19
0
    public static bool CanUseItem(TreasureMain itemToUse, AdventureMeta meta, int rosterPos, List <SkillMeta> skills)
    {
        switch (itemToUse.monTreas.effects)
        {
        case MonTreasMeta.Type.Exp:
            return(false);

        case MonTreasMeta.Type.Heal:
            if (meta.roster[rosterPos].curHealth > 0)
            {
                return(true);
            }
            return(false);

        case MonTreasMeta.Type.Revive:
            if (meta.roster[rosterPos].curHealth <= 0)
            {
                return(true);
            }
            return(false);

        case MonTreasMeta.Type.Skills:
            bool hasEmpty = false;
            foreach (SkillMeta skill in skills)
            {
                if (skill.req1.has < skill.req1.req || skill.req2.has < skill.req2.req)
                {
                    hasEmpty = true;
                }
            }
            return(hasEmpty);

        case MonTreasMeta.Type.Stats:
            return(true);

        case MonTreasMeta.Type.XBuff:
            return(true);

        default:
            return(false);
        }
    }
Example #20
0
    public void PurchaseShop(int click)
    {
        Debug.Log("PurchaseShop: " + click.ToString());
        AdventureMeta meta     = BaseSaver.getAdventure();
        List <string> shopKeys = new List <string>(shopOwnersStock.Keys);
        int           money    = meta.getYen();

        if (money >= shopOwnersStock[shopKeys[click]])
        {
            meta.AddToTreasureList(shopKeys[click], 1);
            meta.addYen(-shopOwnersStock[shopKeys[click]]);
            BaseSaver.putAdventure(meta);
            GameObject.FindWithTag("Player").GetComponent <PlayerMain>().playerMeta = meta;
            PopulateShop();
        }
        else
        {
            Debug.Log("Not enough ¥");
        }
    }
Example #21
0
    public void PageDir(bool left)
    {
        SFXManager.instance.PlaySFX(Clip.Select);
        AdventureMeta meta = BaseSaver.getAdventure();

        if (left)
        {
            pageDistance -= PAGE_DIST;
            if (pageDistance < 0)
            {
                pageDistance = 0;
            }
        }
        else
        {
            if (pageDistance + PAGE_DIST < meta.vault.Length)
            {
                pageDistance += PAGE_DIST;
            }
        }
        loadVault();
    }
Example #22
0
    public NPCMeta getInfiniteMeta(AdventureMeta advMeta)
    {
        float averageLevel = 0;

        foreach (PlayerRosterMeta mohe in advMeta.roster)
        {
            averageLevel += mohe.lvl;
        }
        averageLevel = (float)Math.Ceiling((averageLevel / advMeta.roster.Length)) + meta.infiniteTrainerDiff;

        List <PlayerRosterMeta> newRoster = new List <PlayerRosterMeta>();

        for (int i = 0; i < advMeta.roster.Length; i++)
        {
            String monsterName = glossy.monsters[UnityEngine.Random.Range(0, glossy.monsters.Length - 1)].name;
            newRoster.Add(MonsterMeta.returnMonster(glossy.GetMonsterMain(monsterName).meta, (int)averageLevel, false));
        }
        NPCMeta returnMeta = new NPCMeta(meta);

        returnMeta.roster = newRoster.ToArray();
        return(returnMeta);
    }
Example #23
0
 public void EndGame(bool win, bool caught, bool killed, AdventureMeta meta)
 {
     StartCoroutine(WaitForShifting(win, caught, killed, meta));
 }
Example #24
0
    // Show the game over panel
    private void GameOver(bool win, bool caughtSomething, bool killed, AdventureMeta meta)
    {
        GameManager.instance.gameOver = true;
        boardManager.SetActive(false);
        if (GameObject.Find("MCatchPanelHolder") != null)
        {
            GameObject.Find("MCatchPanelHolder").SetActive(false);
        }

        gameOverPanel.SetActive(true);

        Text outcome = GameObject.Find("OutComeTxt").GetComponent <Text> ();

        // We have beaten a wild monster
        if (!meta.isTrainerEncounter)
        {
            if (win)
            {
                catchPanel.SetActive(true);

                if (caughtSomething)
                {
                    outcome.text = "Monster Caught!";
                    populateCatchPanel(false, false, meta.wild);
                }
                else if (killed)
                {
                    outcome.text = "Monster Slaughtered!";
                    populateCatchPanel(true, false, meta.wild);
                }
                else
                {
                    outcome.text = "Monster Escaped...";
                    populateCatchPanel(false, true, meta.wild);
                }
            }
            else
            {
                catchPanel.SetActive(false);
                outcome.text = "Wild Monster Wins...";
                restorePlayerToLastHeal();
            }
            // We have beaten a trainer
        }
        else
        {
            trainerPanel.SetActive(true);
            Glossary glossy    = PanelManager.instance.glossaryObj.GetComponent <Glossary>();
            int      yenGained = win ? GameUtilities.getNPCYenValue(meta) : 0;
            trainerPanel.GetComponent <TrainerGameoverController>().updateMonsterUI(meta.trainer, glossy, yenGained);
            if (win)
            {
                outcome.text = "Trainer Defeated";
                AdventureMeta adventure = BaseSaver.getAdventure();
                adventure.addYen(yenGained);
                adventure.UpdateTempleList(adventure.trainer.name);
                BaseSaver.putAdventure(adventure);
            }
            else
            {
                outcome.text = "Trainer Wins...";
                restorePlayerToLastHeal();
            }
        }
    }
Example #25
0
    private void Awake()
    {
        instance  = GetComponent <PauseManager>();
        panelOpen = false;
        glossy    = glossaryObj.GetComponent <Glossary>();
        SceneMain scene = glossy.GetScene(BaseSaver.getMap());

        GameObject.Find("MenuTitle").SetActive(true);
        GameObject.Find("MenuTitle").GetComponent <Text>().text = scene.meta.name;
        StartCoroutine(WaitForAction(3f));

        GameObject map = Instantiate(scene.map, new Vector3(0, 0, 0), Quaternion.identity);

        map.SetActive(true);
        swapping = false;
        deleting = false;

        Debug.Log("PauseManager Awake");

        AdventureMeta meta  = BaseSaver.getAdventure();
        BoardMeta     board = BaseSaver.getBoard(BaseSaver.getMap());

        GameObject hero = GameObject.FindWithTag("Player");

        if (BaseSaver.getMap().Equals("ShallowGrove") && BaseSaver.getMapPrev() != "")
        {
            hero.SetActive(false);
            hero = null;
            Destroy(GameObject.FindWithTag("Player"));
        }

        if (hero == null)
        {
            // Pull the hero out of the glossary and instantiate it in the right exit/entrance tile
            GameObject nHero = null;
            string     dest  = BaseSaver.getMapConnection();
            string     prev  = BaseSaver.getMapPrev();
            Debug.Log("Prev: " + prev);
            Debug.Log("Dest: " + dest);
            foreach (GameObject exit in GameObject.FindGameObjectsWithTag("Exit"))
            {
                ExitTile tile = exit.GetComponent <ExitTile>();
                if (tile.toScene.Equals(prev + '.' + dest))
                {
                    nHero = Instantiate(glossy.hero, exit.transform.position, exit.transform.rotation, GameObject.Find("Units").transform);
                    BaseSaver.setMapConnection("");
                    BaseSaver.setMapPrevName("");
                    break;
                }
            }
            if (nHero != null)
            {
                nHero.GetComponent <PlayerMain>().playerMeta = meta;
            }
            else
            {
                Debug.Log("Hero is null!");
                nHero = Instantiate(glossy.hero, board.playerPos.ToVector3(), Quaternion.identity, GameObject.Find("Units").transform);
                nHero.GetComponent <PlayerMain>().playerMeta = meta;
            }
        }
        else
        {
            Debug.Log("Hero is not null!");
            //GameObject.FindWithTag("Player").transform.position = new Vector3(board.playerPos.x, board.playerPos.y, board.playerPos.z);
            GameObject.FindWithTag("Player").GetComponent <PlayerMain>().playerMeta = meta;
        }

        //GameObject.FindWithTag("Player").GetComponent<PlayerMain>().playerMeta = meta;
        //BoardMeta board = BaseSaver.getBoard(BaseSaver.getMap());

        //Debug.Log("Player Pos: " + GameObject.Find("PlayerHero").transform.position.ToString());

        if (board != null)
        {
            Debug.Log("Board not null");

            GameObject[] npcs  = GameObject.FindGameObjectsWithTag("NPC");
            GameObject[] items = GameObject.FindGameObjectsWithTag("Item");

            Debug.Log("board: " + board.mapName);
            Debug.Log("player pos: " + board.playerPos);

            foreach (GameObject npc in npcs)
            {
                Debug.Log("board npc: " + (new PosMeta(npc.transform.position)).ToString());
                Debug.Log("equals battle: " + meta.trainer.pos.Equals(new PosMeta(npc.transform.position)).ToString());
                foreach (NPCMeta NPCMeta in board.NPCs)
                {
                    if (NPCMeta.name.Equals(npc.GetComponent <NPCMain>().meta.name))
                    {
                        npc.GetComponent <NPCMain>().meta = new NPCMeta(NPCMeta);
                    }
                }
                if (meta.trainer != null && meta.trainer.name.Equals(npc.GetComponent <NPCMain>().meta.name))
                {
                    Debug.Log("Found: " + npc.GetComponent <NPCMain>().meta.ToString());
                    npc.GetComponent <NPCMain>().meta = new NPCMeta(meta.trainer);
                    Debug.Log("changed: " + npc.GetComponent <NPCMain>().meta.ToString());
                }
            }
            foreach (GameObject item in items)
            {
                item.GetComponent <TreasureMain>().UpdateInteractable();
            }
            //GameObject.FindWithTag("Player").transform.position = new Vector3(board.playerPos.x, board.playerPos.y, board.playerPos.z);
            BaseSaver.putBoard(GameUtilities.getBoardState(BaseSaver.getMap(), new PosMeta(GameObject.FindWithTag("Player").transform.position)));
        }
        else
        {
            Debug.Log("Board is null");
        }
    }
Example #26
0
    void loadRosterInfo(int clk)
    {
        currentRosterMonster = clk - 1;

        if (rosterNickname == null)
        {
            rosterNickname = GameObject.Find("LNickName");
        }
        if (rosterEdit == null)
        {
            rosterEdit = GameObject.Find("NickNameEdit");
        }
        if (rosterInput == null)
        {
            rosterInput = GameObject.Find("LNickNameInput");
        }
        rosterInput.SetActive(false);

        AdventureMeta    playerMeta       = BaseSaver.getAdventure();
        PlayerRosterMeta monsterMetaShort = playerMeta.roster[currentRosterMonster];
        MonsterMeta      monsterMetaLong  = glossy.GetMonsterMain(monsterMetaShort.name).meta;

        int[] lvlInfo = MonsterMeta.CalcLvl(monsterMetaShort, monsterMetaLong.lvlSpeed);

        GameObject.Find("LImg").GetComponent <Image>().sprite = glossy.GetMonsterImage(monsterMetaShort.name);
        GameObject.Find("Llvl").GetComponent <Text>().text    = lvlInfo[0].ToString();
        GameObject.Find("LName").GetComponent <Text>().text   = monsterMetaShort.name;
        rosterNickname.GetComponent <Text>().text             = "\"" + monsterMetaShort.nickname + "\"";

        GameObject.Find("HealthTxt").GetComponent <Text>().text = "Health: " + monsterMetaShort.maxHealth.ToString();
        GameObject.Find("ExpTxt").GetComponent <Text>().text    = "Exp: " + monsterMetaShort.exp.ToString();
        GameObject.Find("Stat01Txt").GetComponent <Text>().text = "Lust: " + monsterMetaShort.lust.ToString("0.00");
        GameObject.Find("Stat02Txt").GetComponent <Text>().text = "Greed: " + monsterMetaShort.greed.ToString("0.00");
        GameObject.Find("Stat03Txt").GetComponent <Text>().text = "Wrath: " + monsterMetaShort.wrath.ToString("0.00");
        GameObject.Find("Stat04Txt").GetComponent <Text>().text = "Pride: " + monsterMetaShort.pride.ToString("0.00");
        GameObject.Find("Stat05Txt").GetComponent <Text>().text = "Gluttony: " + monsterMetaShort.gluttony.ToString("0.00");
        GameObject.Find("Stat06Txt").GetComponent <Text>().text = "Sloth: " + monsterMetaShort.sloth.ToString("0.00");
        GameObject.Find("Stat07Txt").GetComponent <Text>().text = "Envy: " + monsterMetaShort.envy.ToString("0.00");
        GameObject.Find("Stat08Txt").GetComponent <Text>().text = "Lrn: " + monsterMetaLong.lvlSpeed.ToString();

        List <string>    mSkills = new List <string>(monsterMetaShort.skills);
        List <SkillMeta> sMetas  = new List <SkillMeta>(GameUtilities.parseSkills(monsterMetaShort.skills, glossy));

        for (int i = 0; i < 2; i++)
        {
            if (monsterMetaLong.strengths.Length > i)
            {
                GameObject.Find("LType" + (i + 1).ToString() + "Txt").GetComponent <Text>().text = monsterMetaLong.strengths[i].ToString();
                //GameObject.Find("LType" + (i + 1).ToString()).GetComponent<Image>().enabled = true;
                //GameObject.Find("LType" + (i+1).ToString()).GetComponent<Image>().sprite = glossy.getGemSprite(MonsterMeta.elementToGem(monsterMetaLong.strengths[i]));
            }
            else
            {
                //GameObject.Find("LType" + (i + 1).ToString()).GetComponent<Image>().enabled = false;
                GameObject.Find("LType" + (i + 1).ToString() + "Txt").GetComponent <Text>().text = "";
            }
        }

        for (int i = 0; i < 4; i++)
        {
            if (mSkills.Count > i)
            {
                GameObject.Find("Sk0" + (i + 1) + "Res01Gem").GetComponent <Image>().enabled = true;
                GameObject.Find("Sk0" + (i + 1) + "Res02Gem").GetComponent <Image>().enabled = true;

                GameObject.Find("LSk0" + (i + 1) + "C").GetComponent <Text>().text     = mSkills[i];
                GameObject.Find("LSk0" + (i + 1) + "CDesc").GetComponent <Text>().text = PanelManager.getEffectsString(sMetas[i].effects);

                GameObject.Find("Sk0" + (i + 1) + "Res01Txt").GetComponent <Text>().text    = sMetas[i].req1.req.ToString();
                GameObject.Find("Sk0" + (i + 1) + "Res01Gem").GetComponent <Image>().sprite = glossy.getGemSprite(sMetas[i].req1.gem);
                GameObject.Find("Sk0" + (i + 1) + "Res02Txt").GetComponent <Text>().text    = sMetas[i].req2.req.ToString();
                GameObject.Find("Sk0" + (i + 1) + "Res02Gem").GetComponent <Image>().sprite = glossy.getGemSprite(sMetas[i].req2.gem);
            }
            else
            {
                GameObject.Find("LSk0" + (i + 1) + "C").GetComponent <Text>().text     = "";
                GameObject.Find("LSk0" + (i + 1) + "CDesc").GetComponent <Text>().text = "";

                GameObject.Find("Sk0" + (i + 1) + "Res01Txt").GetComponent <Text>().text     = "";
                GameObject.Find("Sk0" + (i + 1) + "Res02Txt").GetComponent <Text>().text     = "";
                GameObject.Find("Sk0" + (i + 1) + "Res01Gem").GetComponent <Image>().enabled = false;
                GameObject.Find("Sk0" + (i + 1) + "Res02Gem").GetComponent <Image>().enabled = false;
            }
        }
    }
Example #27
0
    void moveLocation(int clk)
    {
        StopCoroutine(WaitForExit());
        panelOpen = true;
        if (clk == -1)
        {
            notDeleting();
            notSwapping();
            if (currentLocation == Location.Main)
            {
                currentLocation = Location.None;
                clearAll();
                openPnl.SetActive(true);
                StartCoroutine(WaitForExit());
            }
            else if (currentLocation == Location.RosterInfo)
            {
                currentLocation = Location.Main;
                moveLocation(0);
            }
            else if (currentLocation == Location.Vault && vaultSwap)
            {
                notVaultSwapping();
                notVaultDeleting();
                vaultPnl.SetActive(true);
                rosterPnl.SetActive(false);
            }
            else
            {
                currentLocation = Location.Main;
                notVaultSwapping();
                notVaultDeleting();
                clearAll();
                mainPnl.SetActive(true);
            }
        }
        else
        {
            switch (currentLocation)
            {
            case Location.Main:
                switch (clk)
                {
                case 0:
                    currentLocation = Location.Roster;
                    rosterPnl.SetActive(true);
                    loadRoster();
                    break;

                case 1:
                    currentLocation = Location.Vault;
                    vaultPnl.SetActive(true);
                    loadVault();
                    break;

                case 2:
                    currentLocation = Location.Items;
                    itemsPnl.SetActive(true);
                    loadItems();
                    break;

                case 3:
                    currentLocation = Location.Status;
                    statusPnl.SetActive(true);
                    break;

                case 4:
                    currentLocation = Location.Glossary;
                    glossaryPnl.SetActive(true);
                    LoadGlossary();
                    break;

                default:
                    currentLocation = Location.None;
                    break;
                }
                break;

            case Location.Vault:
                if (vaultSwap)
                {
                    AdventureMeta meta = BaseSaver.getAdventure();
                    meta.SwitchInVault(clk - 1, vaultPos);
                    BaseSaver.putAdventure(meta);
                    GameObject.FindWithTag("Player").GetComponent <PlayerMain>().playerMeta = meta;
                    notVaultSwapping();
                    vaultPnl.SetActive(true);
                    rosterPnl.SetActive(false);
                    loadVault();
                }
                break;

            case Location.Roster:
                if (!swapping && !deleting)
                {
                    currentLocation = Location.RosterInfo;
                    rosterInfoPnl.SetActive(true);
                    loadRosterInfo(clk);
                }
                else if (swapping)
                {
                    Debug.Log("Location.Roster: ");
                    if (swapBuffer[0] == -1)
                    {
                        swapBuffer[0] = clk - 1;
                        GameObject.Find("RosterPnl0" + clk).GetComponent <Outline>().effectColor    = Color.red;
                        GameObject.Find("RosterPnl0" + clk).GetComponent <Outline>().effectDistance = new Vector2(3, -3);
                        //Debug.Log("swapBuffer[0]: " + swapBuffer[0].ToString());
                    }
                    else if (swapBuffer[0] != clk - 1)
                    {
                        GameObject.Find("RosterPnl0" + (swapBuffer[0] + 1).ToString()).GetComponent <Outline>().effectColor    = Color.black;
                        GameObject.Find("RosterPnl0" + (swapBuffer[0] + 1).ToString()).GetComponent <Outline>().effectDistance = new Vector2(1, -1);
                        swapBuffer[1] = clk - 1;
                        //Debug.Log("swapBuffer[1]: " + swapBuffer[1].ToString());
                        AdventureMeta    playerMeta = BaseSaver.getAdventure();
                        PlayerRosterMeta temp       = new PlayerRosterMeta(playerMeta.roster[swapBuffer[0]]);
                        playerMeta.roster[swapBuffer[0]] = new PlayerRosterMeta(playerMeta.roster[swapBuffer[1]]);
                        playerMeta.roster[swapBuffer[1]] = temp;
                        BaseSaver.putAdventure(playerMeta);

                        GameObject.FindWithTag("Player").GetComponent <PlayerMain>().playerMeta = playerMeta;

                        swapping = false;
                        loadRoster();
                    }
                }
                else if (deleting)
                {
                    if (deleteBuffer[0] == -1)
                    {
                        deleteBuffer[0] = clk - 1;
                        GameObject.Find("RosterPnl0" + clk).GetComponent <Outline>().effectColor    = Color.red;
                        GameObject.Find("RosterPnl0" + clk).GetComponent <Outline>().effectDistance = new Vector2(3, -3);
                    }
                    else
                    {
                        GameObject.Find("RosterPnl0" + (deleteBuffer[0] + 1).ToString()).GetComponent <Outline>().effectColor    = Color.black;
                        GameObject.Find("RosterPnl0" + (deleteBuffer[0] + 1).ToString()).GetComponent <Outline>().effectDistance = new Vector2(1, -1);
                        if (clk - 1 != deleteBuffer[0])
                        {
                            notDeleting();
                        }
                        else
                        {
                            AdventureMeta playerMeta = BaseSaver.getAdventure();

                            List <PlayerRosterMeta> roster = new List <PlayerRosterMeta>(playerMeta.roster);
                            roster.RemoveAt(deleteBuffer[0]);
                            if (playerMeta.vault.Length > 0)
                            {
                                roster.Add(playerMeta.vault[0]);
                                playerMeta.vault = playerMeta.vault.Skip(1).ToArray();
                            }
                            playerMeta.roster = roster.ToArray();
                            BaseSaver.putAdventure(playerMeta);

                            notDeleting();

                            loadRoster();
                        }
                    }
                }
                break;

            case Location.None:
                Debug.Log("Here None");
                currentLocation = Location.Main;
                mainPnl.SetActive(true);
                break;

            default:
                break;
            }
        }
    }