Ejemplo n.º 1
0
    // Use this for initialization
    void Start()
    {
        AkSoundEngine.PostEvent("DEPART", gameObject);

        creaturePrefabManager = GameObject.FindGameObjectWithTag("CreaturePrefabManager").GetComponent <CreaturePrefabManager>();


        foreach (Transform child in slots.transform)
        {
            Destroy(child.gameObject);
        }


        InitialiseRecruts();


        if (isAtCapital)
        {
            InitialiseSlots();
        }
        FillSlots();

        GameObject g = GameObject.FindGameObjectWithTag("CaravaneUI");

        if (g != null)
        {
            g.GetComponent <CaravaneUI>().UpdateUI();
        }
    }
Ejemplo n.º 2
0
    public void UpdateSelectedItem(CreaturePrefabManager creaturePrefabManager)
    {
        ItemSelected(creaturePrefabManager.CreatureBackground);
        ShowCreatureOnDisplay(creaturePrefabManager.CreatureImage.sprite);

        UnsubscribeEvents();
        CurrentSelectedItem = creaturePrefabManager;
        SubscribeEvents();
    }
Ejemplo n.º 3
0
    private void Initialise()
    {
        CreaturePrefabManager prefabManager = GameObject.FindGameObjectWithTag("CreaturePrefabManager").GetComponent <CreaturePrefabManager>();

        foreach (CreaturePrefabManager.PrefabData prefabData in prefabManager.lMonsters)
        {
            ModelMonsterUI mm = prefabData.prefab.GetComponent <ModelMonsterUI>();
            allMutations.Add(new MutationData(prefabData.id, CaractMonster.NONE, mm.permanentMutation));
        }
    }
Ejemplo n.º 4
0
    // Use this for initialization
    void Start()
    {
        prefabManager = GameObject.FindGameObjectWithTag("CreaturePrefabManager").GetComponent <CreaturePrefabManager>();
        creatureData  = GameObject.FindGameObjectWithTag("CreaturesData").GetComponent <CreaturesData>();
        GameObject g = GameObject.FindGameObjectWithTag("CombatManager");

        if (g != null)
        {
            cm = g.GetComponent <CombatManager>();
        }
    }
Ejemplo n.º 5
0
    void Start()
    {
        currentNbHuman = nbCreaturePerGroup;

        bool canFight = GameObject.FindGameObjectWithTag("CombatTerrain").GetComponent <CombatTerrainInfo>().bCanFightHere;

        if (!canFight)
        {
            gameObject.SetActive(false);
        }

        GameObject rollObj = GameObject.FindGameObjectWithTag("RollProbaManager");

        if (rollObj != null)
        {
            rollProbaManager = rollObj.GetComponent <RollProbaManager>();
        }

        discoveredTip = null;

        GameObject g = GameObject.FindGameObjectWithTag("ProtoManager");

        if (g != null)
        {
            protoScript = g.GetComponent <ProtoScript>();
        }

        specialManager = GameObject.FindGameObjectWithTag("SpecialManager").GetComponent <SpecialManager>();

        caravane = GameObject.FindGameObjectWithTag("Caravane").GetComponent <Caravane>();
        fighterMouvementManager = GameObject.FindGameObjectWithTag("FighterMouvementManager").GetComponent <FighterMouvementManager>();
        creaturePrefabManager   = GameObject.FindGameObjectWithTag("CreaturePrefabManager").GetComponent <CreaturePrefabManager>();



        float rand = Random.Range(0f, 1f);


        if ((rand < rollProbaManager.specialProba.probaFight || specialManager.iaBard.bardFollow) && protoScript == null && !isBossCombat)
        {
            if (specialManager.iaBard.bardFollow)
            {
                bSpecialFight = true;
                specialType   = SpecialType.Bard;
            }
            else
            {
                float rand2 = Random.Range(0f, 1f);

                if (rand2 < rollProbaManager.specialProba.bard)
                {
                    if (!specialManager.iaBard.endStory)
                    {
                        bSpecialFight = true;
                        specialType   = SpecialType.Bard;
                    }
                }
                else if (!specialManager.iaEd.isDead && rand2 < rollProbaManager.specialProba.ed)
                {
                    bSpecialFight = true;
                    specialType   = SpecialType.Ed;
                }
                else
                {
                    bSpecialFight = true;
                    specialType   = SpecialType.Slip;
                }
            }
        }


        InstantiateMonster();
        InstantiateHuman();


        monsterGroupFighter.groupLogic = logic.GetComponent <PlayerLogic>();

        /*
         *
         * bSpecialFight = true;
         *      specialType = SpecialType.Ed;
         * humanGroupFighter.groupLogic = specialManager.iaEd;
         * ((IAEd)(humanGroupFighter.groupLogic)).groupEd = (GroupEd) humanGroupFighter;
         *
         */


        if (bSpecialFight)
        {
            if (specialType == SpecialType.Bard)
            {
                humanGroupFighter.groupLogic = specialManager.iaBard;
                ((IABard)(humanGroupFighter.groupLogic)).groupBard = (GroupBard)humanGroupFighter;
                specialManager.iaBard.combatJustStarted            = true;
            }
            else if (specialType == SpecialType.Ed)
            {
                humanGroupFighter.groupLogic = specialManager.iaEd;
                ((IAEd)(humanGroupFighter.groupLogic)).groupEd = (GroupEd)humanGroupFighter;
            }
            else
            {
                humanGroupFighter.groupLogic = specialManager.iaSlip;
                ((IASlip)(humanGroupFighter.groupLogic)).groupSlip = (GroupSlip)humanGroupFighter;
            }
        }
        else
        {
            humanGroupFighter.groupLogic = logic.GetComponent <GroupIA>();
            ((GroupIA)humanGroupFighter.groupLogic).groupHumanFighter = (GroupHumanFighter)humanGroupFighter;
        }


        RollInitiative();

        bCombatStarted = false;

        Invoke("CanStartCombat", timeBeforeStartFight);

        //Play Music
        AkSoundEngine.SetSwitch("Tension", "T2", gameObject);
        AkSoundEngine.PostEvent("Play_FightMusic", gameObject);

        for (int i = 0; i < SceneManager.sceneCount; ++i)
        {
            if (SceneManager.GetSceneAt(i).name != "Menu" && SceneManager.GetSceneAt(i).name != "CARTE")
            {
                AkSoundEngine.PostEvent(SceneManager.GetSceneAt(i).name, gameObject);
            }
        }
    }