Beispiel #1
0
    public static void Play_EvilMonster_2(Character evilMonsterCharacter)
    {
        UIBlack.Show();
        OvermapHandler.StopOvermapRunning();
        Dialogue dialogue = Dialogue.GetInstance();

        dialogue.SetDialogueActions(new List <Action>()
        {
            () => {
                dialogue.Show();
                dialogue.ShowLeftCharacter(GameAssets.i.s_PlayerDialogueSprite, false);
                dialogue.ShowLeftCharacterName(GameData.GetCharacterName(Character.Type.Player));
                dialogue.ShowLeftText("You're not getting away this time!");
                dialogue.ShowRightCharacter(GameAssets.i.s_EvilMonsterPortrait, true);
                dialogue.ShowRightCharacterName(GameData.GetCharacterName(Character.Type.EvilMonster));
                dialogue.HideRightText();
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("Mwahahaha let's see!");
            },
            () => {
                GameData.state = GameData.State.FightingEvilMonster_2;
                BattleHandler.LoadEnemyEncounter(evilMonsterCharacter, evilMonsterCharacter.enemyEncounter);
            },
        }, true);
    }
Beispiel #2
0
    public static void Play_EvilMonster_3(Character evilMonsterCharacter)
    {
        UIBlack.Show();
        OvermapHandler.StopOvermapRunning();
        Dialogue dialogue = Dialogue.GetInstance();

        dialogue.SetDialogueActions(new List <Action>()
        {
            () => {
                dialogue.Show();
                dialogue.ShowLeftCharacter(GameAssets.i.s_PlayerDialogueSprite, false);
                dialogue.ShowLeftCharacterName(GameData.GetCharacterName(Character.Type.Player));
                dialogue.ShowLeftText("Back again!");
                dialogue.ShowRightCharacter(GameAssets.i.s_EvilMonsterPortrait, true);
                dialogue.ShowRightCharacterName(GameData.GetCharacterName(Character.Type.EvilMonster));
                dialogue.HideRightText();
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("Now you're becoming a nuisance!");
            },
            () => {
                dialogue.ShowRightText("This time I'll end you!");
            },
            () => {
                GameData.state = GameData.State.FightingEvilMonster_3;
                BattleHandler.LoadEnemyEncounter(evilMonsterCharacter, evilMonsterCharacter.enemyEncounter);
            },
        }, true);
    }
    private void HandleInteractionWithPlayer()
    {
        switch (character.type)
        {
        default:
            // Battle!
            BattleHandler.LoadEnemyEncounter(character, character.enemyEncounter);
            break;

        case Character.Type.Enemy_MinionOrange: {
            if (character.subType == Character.SubType.Enemy_HurtMeDaddy)
            {
                // Special enemy
                Cutscenes.Play_HurtMeDaddy(character);
            }
            else
            {
                // Normal battle
                BattleHandler.LoadEnemyEncounter(character, character.enemyEncounter);
            }
            break;
        }

        case Character.Type.Enemy_MinionRed: {
            if (character.subType == Character.SubType.Enemy_HurtMeDaddy_2)
            {
                // Special enemy
                Cutscenes.Play_HurtMeDaddy_2(character);
            }
            else
            {
                // Normal battle
                BattleHandler.LoadEnemyEncounter(character, character.enemyEncounter);
            }
            break;
        }

        case Character.Type.EvilMonster: {
            Cutscenes.Play_EvilMonster_1(character);
            break;
        }

        case Character.Type.EvilMonster_2: {
            Cutscenes.Play_EvilMonster_2(character);
            break;
        }

        case Character.Type.EvilMonster_3: {
            Cutscenes.Play_EvilMonster_3(character);
            break;
        }
        }
    }
Beispiel #4
0
    public static void Play_Tank_BeforeJoin()
    {
        // First meeting with Tank
        UIBlack.Show();
        OvermapHandler.StopOvermapRunning();
        Dialogue  dialogue      = Dialogue.GetInstance();
        Character tankCharacter = GameData.GetCharacter(Character.Type.Tank);

        dialogue.SetDialogueActions(new List <Action>()
        {
            () => {
                dialogue.Show();
                dialogue.ShowLeftCharacter(GameAssets.i.s_PlayerDialogueSprite, false);
                dialogue.ShowLeftCharacterName(GameData.GetCharacterName(Character.Type.Player));
                dialogue.ShowRightCharacter(GameAssets.i.s_TankPortrait, true);
                //dialogue.ShowRightCharacterName(GameData.GetCharacterName(Character.Type.Tank));
                dialogue.ShowRightCharacterName("???");
                dialogue.ShowLeftText("Greetings!");
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("Entrance to the town is restricted");
            },
            () => {
                dialogue.ShowLeftActiveTalkerHideRight("But I need to get past to get to the Evil Castle to defeat the Evil Monster!");
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("There are reports of Evil Minions roaming these lands, no one is allowed in until they are taken care of");
            },
            () => {
                dialogue.ShowLeftActiveTalkerHideRight("Some short guys? I took care of them!");
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("I don't believe you!");
            },
            () => {
                dialogue.ShowRightText("Show me your skills!");
            },
            () => {
                GameData.state = GameData.State.FightingTank;
                BattleHandler.LoadEnemyEncounter(tankCharacter, tankCharacter.enemyEncounter);
            },
        }, true);
    }
Beispiel #5
0
    public static void Play_HurtMeDaddy_2(Character character)
    {
        // Second Minion
        OvermapHandler.StopOvermapRunning();
        UIBlack.Show();
        Dialogue dialogue = Dialogue.GetInstance();

        dialogue.SetDialogueActions(new List <Action>()
        {
            () => {
                dialogue.Show();
                dialogue.ShowLeftCharacter(GameAssets.i.s_PlayerDialogueSprite, true);
                dialogue.ShowLeftCharacterName(GameData.GetCharacterName(Character.Type.Player));
                dialogue.ShowRightCharacter(GameAssets.i.s_EnemyMinionRedPortrait, false);
                dialogue.ShowRightText("Hey you! Have you seen a short guy around here?");
                dialogue.HideRightCharacterName();
            },
            () => {
                dialogue.ShowLeftActiveTalkerHideRight("Hum...");
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("Wait a second!");
            },
            () => {
                dialogue.ShowRightText("Did you do it?!");
            },
            () => {
                dialogue.ShowRightText("You did!");
            },
            () => {
                dialogue.ShowRightText("How dare you hurt him!");
            },
            () => {
                GameData.state = GameData.State.FightingHurtMeDaddy_2;
                BattleHandler.LoadEnemyEncounter(character, character.enemyEncounter);
            },
        }, true);
    }
    private void Awake()
    {
        new BattleHandler();

        if (BattleHandler.enemyEncounter == null)
        {
            Debug.Log("#### Debug Enemy Encounter");
            GameData.EnemyEncounter enemyEncounter = new GameData.EnemyEncounter {
                enemyBattleArray = new GameData.EnemyEncounter.EnemyBattle[] {
                    new GameData.EnemyEncounter.EnemyBattle {
                        characterType = Character.Type.Enemy_MinionOrange, lanePosition = BattleHandler.LanePosition.Middle
                    },
                    new GameData.EnemyEncounter.EnemyBattle {
                        characterType = Character.Type.Enemy_MinionOrange, lanePosition = BattleHandler.LanePosition.Up
                    },
                    new GameData.EnemyEncounter.EnemyBattle {
                        characterType = Character.Type.Enemy_MinionOrange, lanePosition = BattleHandler.LanePosition.Down
                    },
                },
            };
            BattleHandler.LoadEnemyEncounter(new Character(Character.Type.Enemy_MinionOrange), enemyEncounter);
        }
    }
Beispiel #7
0
    public static void Play_HurtMeDaddy(Character character)
    {
        // First Minion
        OvermapHandler.StopOvermapRunning();
        UIBlack.Show();
        Dialogue dialogue = Dialogue.GetInstance();

        dialogue.SetDialogueActions(new List <Action>()
        {
            () => {
                dialogue.Show();
                dialogue.ShowLeftCharacter(GameAssets.i.s_PlayerDialogueSprite, true);
                dialogue.ShowLeftCharacterName(GameData.GetCharacterName(Character.Type.Player));
                dialogue.HideLeftText();
                dialogue.ShowRightCharacter(GameAssets.i.s_EnemyMinionOrangePortrait, false);
                dialogue.ShowRightText("Myah! Hurt me daddy!");
                dialogue.HideRightCharacterName();
            },
            () => {
                dialogue.ShowLeftActiveTalkerHideRight("What?");
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("Hurt me daddy!");
            },
            () => {
                dialogue.ShowLeftActiveTalkerHideRight("That's weird...");
            },
            () => {
                dialogue.ShowRightActiveTalkerHideLeft("Hurt me daddy!");
            },
            () => {
                GameData.state = GameData.State.FightingHurtMeDaddy;
                BattleHandler.LoadEnemyEncounter(character, character.enemyEncounter);
            },
        }, true);
    }
Beispiel #8
0
    public static void Play_Tavern()
    {
        Window_QuestPointer.DestroyPointer(GameAssets.i.Map.Find("tavern").position);
        UIBlack.Show();
        OvermapHandler.StopOvermapRunning();
        Dialogue  dialogue = Dialogue.GetInstance();
        Character tavernAmbushCharacter = GameData.GetCharacter(Character.Type.TavernAmbush);

        dialogue.SetDialogueActions(new List <Action>()
        {
            () => {
                dialogue.Show();
                dialogue.ShowLeftCharacter(GameAssets.i.s_PlayerDialogueSprite, false);
                dialogue.ShowLeftCharacterName(GameData.GetCharacterName(Character.Type.Player));
                dialogue.ShowLeftText("Greetings!");
                dialogue.HideRightCharacter();
                dialogue.HideRightText();
                dialogue.HideRightCharacterName();
            },
            () => { dialogue.ShowLeftText("May we have some refreshments?"); },
            () => {
                UIBlack.Hide();
                dialogue.Hide();

                Vector3 playerPosition = OvermapHandler.GetInstance().GetPlayer().GetPosition();
                OvermapHandler.GetInstance().GetPlayer().GetUnitAnimation().PlayAnimForced(UnitAnim.GetUnitAnim("dSwordTwoHandedBack_IdleDown"), 1f, null);

                NPCOvermap enemyOvermap         = OvermapHandler.GetInstance().GetNPC(tavernAmbushCharacter);
                enemyOvermap.transform.position = playerPosition + new Vector3(0, -17f);
                enemyOvermap.GetUnitAnimation().PlayAnimForced(UnitAnim.GetUnitAnim("dMinion_IdleUp"), 1f, null);
                OvermapHandler.GetInstance().SpawnSmoke(enemyOvermap.GetPosition(), .3f, Vector3.one);

                NPCOvermap enemyOvermap_2         = OvermapHandler.GetInstance().GetNPC(GameData.GetCharacter(Character.Type.TavernAmbush_2));
                enemyOvermap_2.transform.position = playerPosition + new Vector3(14f, -12f);
                enemyOvermap_2.GetUnitAnimation().PlayAnimForced(UnitAnim.GetUnitAnim("dMinion_IdleUp"), 1f, null);
                OvermapHandler.GetInstance().SpawnSmoke(enemyOvermap_2.GetPosition(), .3f, Vector3.one);

                NPCOvermap enemyOvermap_3         = OvermapHandler.GetInstance().GetNPC(GameData.GetCharacter(Character.Type.TavernAmbush_3));
                enemyOvermap_3.transform.position = playerPosition + new Vector3(-14, -12f);
                enemyOvermap_3.GetUnitAnimation().PlayAnimForced(UnitAnim.GetUnitAnim("dMinion_IdleUp"), 1f, null);
                OvermapHandler.GetInstance().SpawnSmoke(enemyOvermap_3.GetPosition(), .3f, Vector3.one);

                enemyOvermap.gameObject.SetActive(false);
                enemyOvermap_2.gameObject.SetActive(false);
                enemyOvermap_3.gameObject.SetActive(false);
                FunctionTimer.Create(() => {
                    enemyOvermap.gameObject.SetActive(true);
                    enemyOvermap_2.gameObject.SetActive(true);
                    enemyOvermap_3.gameObject.SetActive(true);
                }, .45f);

                FunctionTimer.Create(() => {
                    UIBlack.Show();
                    dialogue.Show();
                    dialogue.PlayNextAction();
                }, 1.2f);
            },
            () => {
                dialogue.HideLeftText();
                dialogue.FadeLeftCharacter();
                dialogue.ShowRightCharacter(GameAssets.i.s_EnemyMinionRedPortrait, false);
                dialogue.ShowRightText("That's the one! Get him!");
            },
            () => {
                GameData.GetCharacter(Character.Type.TavernAmbush_2).isDead = true;
                GameData.GetCharacter(Character.Type.TavernAmbush_3).isDead = true;
                GameData.state = GameData.State.FightingTavernAmbush;
                BattleHandler.LoadEnemyEncounter(tavernAmbushCharacter, tavernAmbushCharacter.enemyEncounter);
            },
        }, true);
    }