Пример #1
0
    private void AddWeapon(EWeaponId pWeapon)
    {
        switch (brainiacs.ItemManager.GetWeaponCathegory(pWeapon))
        {
        case EWeaponCathegory.None:
            return;

        case EWeaponCathegory.HeroBasic:
            EHero hero = brainiacs.HeroManager.GetHeroOfWeapon(pWeapon);
            AddHeroBasicWeapon(hero);
            return;

        case EWeaponCathegory.HeroSpecial:
            hero = brainiacs.HeroManager.GetHeroOfWeapon(pWeapon);
            AddHeroSpecialWeapon(hero);
            return;

        case EWeaponCathegory.MapBasic:
            AddMapWeapon(pWeapon);
            return;

        case EWeaponCathegory.MapSpecial:
            AddMapWeaponSpecial(pWeapon);
            return;
        }
        Debug.LogError("Couldnt add weapon " + pWeapon);
    }
Пример #2
0
 public PlayerScoreInfo(PlayerStats pStats)
 {
     PlayerNumber = pStats.Info.Number;
     Name         = pStats.Info.Name;
     Hero         = pStats.Info.Hero;
     Kills        = pStats.Kills;
     Deaths       = pStats.Deaths;
 }
Пример #3
0
    public PlayerWeaponSpecial(Player pOwner, HeroSpecialWeaponConfig pConfig, EHero pHero) :
        base(pOwner, pConfig.Id, pConfig.SpecialWeaponInfo.InHandInfo, pConfig.VisualInfo)
    {
        hero   = pHero;
        prefab = pConfig.SpecialWeaponInfo.Prefab;

        //Game.Instance.PlayerManager.OnAllPlayersAdded.AddAction(InstantiatePrefab);
        InstantiatePrefab();
    }
Пример #4
0
 internal void Update(PlayerInitInfo pNewInfo)
 {
     Number       = pNewInfo.Number;
     Hero         = pNewInfo.Hero;
     Name         = pNewInfo.Name;
     Color        = pNewInfo.Color;
     PlayerType   = pNewInfo.PlayerType;
     PhotonPlayer = pNewInfo.PhotonPlayer;
     IsReady      = pNewInfo.IsReady;
 }
Пример #5
0
    public HeroConfig GetHeroConfig(EHero pHero)
    {
        heroConfigMap.TryGetValue(pHero, out HeroConfig config);
        if (config == null)
        {
            Debug.LogError($"No config for hero {pHero} found");
            heroConfigMap.TryGetValue(EHero.Tesla, out config);
        }

        return(config);
    }
Пример #6
0
 //DEBUG INIT
 public PlayerInitInfo(
     int pNumber, EHero pHero, string pName,
     EPlayerColor pColor, EPlayerType pPlayerType,
     EKeyset pKeyset            = EKeyset.None,
     PhotonPlayer pPhotonPlayer = null)
 {
     Number       = pNumber;
     Hero         = pHero;
     Name         = pName;
     Color        = pColor;
     PlayerType   = pPlayerType;
     PhotonPlayer = pPhotonPlayer;
     Keyset       = pKeyset;
 }
Пример #7
0
    internal void AddHeroBasicWeapon(EHero pHero)
    {
        HeroBasicWeaponConfig config =
            brainiacs.ItemManager.GetHeroBasicWeaponConfig(pHero);

        if (config == null)
        {
            Debug.LogError($"Added weapon was null");
            return;
        }
        PlayerWeaponProjectile weaponProjectile =
            new PlayerWeaponProjectile(player, config);

        weapon.AddWeapon(weaponProjectile);
    }
Пример #8
0
    internal void AddHeroSpecialWeapon(EHero pHero)
    {
        //Debug.Log("AddHeroSpecialWeapon " + pHero);

        HeroSpecialWeaponConfig config =
            brainiacs.ItemManager.GetHeroSpecialWeaponConfig(pHero);

        if (config == null)
        {
            Debug.LogError($"Added weapon was null");
            return;
        }

        PlayerWeaponSpecial weaponSpecial = new PlayerWeaponSpecial(player, config, pHero);

        weapon.AddWeapon(weaponSpecial);
    }
Пример #9
0
    //method define how to spawn player
    //after spawn get Iplayer or its derived class
    //set which num is player belong
    //return gameobject
    private GameObject SpawnPlayer(EHero hero, Transform spawnPos, int numPlayer, EColor color)
    {
        GameObject tempObject;

        tempObject = Instantiate(GameManager.instance.attribution.allHeroPrefab [(int)hero], spawnPos);
        IPlayer temp = null;

        temp = tempObject.GetComponent <IPlayer> ( );
        if (temp != null)
        {
            players.Add(temp);
            temp.SetNumPlayer(numPlayer);
            temp.Color            = color;
            temp.Init             = true;
            temp.PlayerController = this;
            temp.Start( );
        }
        tempObject.name  = temp.NumPlayer;
        tempObject.layer = LayerMask.NameToLayer("Player" + color.ToString( ));
        return(tempObject);
    }
Пример #10
0
    internal void Init(EHero pHero)
    {
        AddHeroBasicWeapon(pHero);
        AddHeroSpecialWeapon(pHero);

        weapon.SetDefaultWeaponActive();

        foreach (var weapon in player.InitInfo.debug_StartupWeapon)
        {
            AddWeapon(weapon);
        }

        if (DebugData.TestExtraPlayerItem)
        {
            AddWeapon(EWeaponId.Flamethrower);
            AddWeapon(EWeaponId.Special_Curie);
            AddWeapon(EWeaponId.Special_Nobel);
            AddWeapon(EWeaponId.Special_Einstein);
            AddWeapon(EWeaponId.Lasergun);
            AddWeapon(EWeaponId.MP40);
        }
    }
Пример #11
0
    public HeroBasicWeaponConfig GetHeroBasicWeaponConfig(EHero pHero)
    {
        HeroConfig heroConfig = brainiacs.HeroManager.GetHeroConfig(pHero);

        return(heroConfig.BasicWeapon);
    }
Пример #12
0
    public HeroSpecialWeaponConfig GetHeroSpecialWeaponConfig(EHero pHero)
    {
        HeroConfig heroConfig = brainiacs.HeroManager.GetHeroConfig(pHero);

        return(heroConfig.SpecialWeapon);
    }
Пример #13
0
    void Battle()
    {
        TurnSel();
        if (m_bHeroturn1)
        {
            DestroyObject(M_t_v);
            SelectMonster();
            e_hero = EHero.Hero1;
            if (m_cHeroPrefab1.Dead())
            {
                hero1Die = true;
                m_cHeroPrefab1.SetStat(Stat.EStat.HP, 0);
                m_Herolist["Hero1"].SetActive(false);
                m_bHeroturn1 = false;
                TurnSel();
                turncnt++;
            }
            else
            {
                if (m_bAttack)
                {
                    m_Herolist["Hero1"].transform.position = new Vector3(-2.15f, 0.17856f, -1.4f);
                    m_cHeroPrefab1.Attack(m_cS_Monster);
                    m_Herolist["Hero1"].transform.position = new Vector3(1.65f, 0.6285628f, -2.0f);
                    Debug.Log("ht1");
                    m_bHeroturn1 = false;
                    TurnSel();
                    turncnt++;
                }

                if (m_bskillkey)
                {
                    m_Herolist["Hero1"].transform.position = new Vector3(-2.15f, 0.17856f, -1.4f);
                    m_cHeroPrefab1.Skill(m_cS_Monster, Stat.ESkill.SKILL_1);
                    m_Herolist["Hero1"].transform.position = new Vector3(1.65f, 0.6285628f, -2.0f);
                    m_bHeroturn1 = false;
                    TurnSel();
                    turncnt++;
                }
            }
        }

        else if (m_bHeroturn2)
        {
            DestroyObject(M_t_v);
            SelectMonster();
            e_hero = EHero.Hero2;
            if (m_cHeroPrefab1.Dead())
            {
                hero1Die = true;
                m_cHeroPrefab2.SetStat(Stat.EStat.HP, 0);
                m_Herolist["Hero2"].SetActive(false);
                m_bHeroturn2 = false;
                TurnSel();
                turncnt++;
            }
            else
            {
                if (m_bAttack)
                {
                    m_Herolist["Hero2"].transform.position = new Vector3(-2.15f, 0.17856f, -0.08f);
                    m_cHeroPrefab2.Attack(m_cS_Monster);
                    m_Herolist["Hero2"].transform.position = new Vector3(1.65f, 0.6285628f, 0);
                    Debug.Log("ht1");
                    m_bHeroturn2 = false;
                    TurnSel();
                    turncnt++;
                }
                if (m_bskillkey)
                {
                    m_Herolist["Hero2"].transform.position = new Vector3(-2.15f, 0.17856f, -0.08f);
                    m_cHeroPrefab2.Skill(m_cS_Monster, Stat.ESkill.SKILL_1);
                    m_Herolist["Hero2"].transform.position = new Vector3(1.65f, 0.6285628f, 0);
                    m_bHeroturn2 = false;
                    TurnSel();
                    turncnt++;
                }
            }
        }
        else if (m_bHeroturn3)
        {
            DestroyObject(M_t_v);
            SelectMonster();
            e_hero = EHero.Hero3;
            if (m_cHeroPrefab3.Dead())
            {
                hero1Die = true;
                m_cHeroPrefab3.SetStat(Stat.EStat.HP, 0);
                m_Herolist["Hero3"].SetActive(false);
                m_bHeroturn3 = false;
                TurnSel();
                turncnt++;
            }
            else
            {
                if (m_bAttack)
                {
                    m_Herolist["Hero3"].transform.position = new Vector3(-2.15f, 0.17856f, 1.19f);
                    m_cHeroPrefab3.Attack(m_cS_Monster);
                    m_Herolist["Hero3"].transform.position = new Vector3(1.65f, 0.6285628f, 2.0f);
                    Debug.Log("ht1");
                    m_bHeroturn3 = false;
                    TurnSel();
                    turncnt++;
                }
                if (m_bskillkey)
                {
                    m_Herolist["Hero3"].transform.position = new Vector3(-2.15f, 0.17856f, 1.19f);
                    m_cHeroPrefab3.Skill(m_cS_Monster, Stat.ESkill.SKILL_1);
                    m_Herolist["Hero3"].transform.position = new Vector3(1.65f, 0.6285628f, 2.0f);
                    m_bHeroturn2 = false;
                    TurnSel();
                    turncnt++;
                }
            }
        }
        if (m_bMonsterturn1)
        {
            Debug.Log("Monster1");
            DestroyObject(M_t_v);
            SelectHero();
            SelectMonster_view(1.4f);
            MonsterMove();
            m_fTime = 0;
            m_fTime = Time.time;
            if (m_cMonsterPrefab_1.Dead())
            {
                m_cMonsterPrefab_1.SetStat(Stat.EStat.HP, 0);
                m_bMonsterturn1 = false;
                TurnSel();
                turncnt++;
            }
            else
            {
                m_Monsterlist["Monster1"].transform.position = new Vector3(m_fMonsterMoveAxisX, 1.8f, m_fMonsterMoveAxisZ);
                m_cMonsterPrefab_1.Attack(m_cS_Hero);
                ;
                if (m_fAttackDlaytime < m_fTime)
                {
                    m_Monsterlist["Monster1"].transform.position = MonsterResetPosition(m_Monsterlist["Monster1"]); Debug.Log("Monster1at");
                    m_bMonsterturn1 = false;
                    TurnSel();
                    turncnt++;
                }
                else
                {
                    return;
                }
            }
        }
        else if (m_bMonsterturn2)
        {
            Debug.Log("Monster2");
            DestroyObject(M_t_v);
            SelectMonster_view(0);
            SelectHero();
            m_fTime = 0;
            m_fTime = Time.time;
            if (m_cMonsterPrefab_2.Dead())
            {
                m_cMonsterPrefab_2.SetStat(Stat.EStat.HP, 0);
                m_bMonsterturn2 = false;
                TurnSel();
                turncnt++;
            }
            else
            {
                m_Monsterlist["Monster2"].transform.position = new Vector3(m_fMonsterMoveAxisX, 1.8f, m_fMonsterMoveAxisZ);
                m_cMonsterPrefab_2.Attack(m_cS_Hero);;
                if (m_fAttackDlaytime < m_fTime)
                {
                    m_Monsterlist["Monster2"].transform.position = MonsterResetPosition(m_Monsterlist["Monster2"]); Debug.Log("Monster2at");
                    m_bMonsterturn2 = false;
                    TurnSel();
                    turncnt++;
                }
                else
                {
                    return;
                }
            }
        }
        else if (m_bMonsterturn3)
        {
            Debug.Log("Monster3");
            DestroyObject(M_t_v);
            SelectMonster_view(-1.4f);
            SelectHero();
            m_fTime = 0;
            m_fTime = Time.time;
            if (m_cMonsterPrefab_3.Dead())
            {
                m_cMonsterPrefab_3.SetStat(Stat.EStat.HP, 0);
                m_bMonsterturn3 = false;
                TurnSel();
                turncnt++;
            }
            else
            {
                m_Monsterlist["Monster3"].transform.position = new Vector3(m_fMonsterMoveAxisX, 1.8f, m_fMonsterMoveAxisZ);
                m_cMonsterPrefab_3.Attack(m_cS_Hero);;
                if (m_fAttackDlaytime < m_fTime)
                {
                    m_Monsterlist["Monster3"].transform.position = MonsterResetPosition(m_Monsterlist["Monster3"]); Debug.Log("Monster3at");
                    m_bMonsterturn3 = false;
                    TurnSel();
                    turncnt++;
                }
                else
                {
                    return;
                }
            }
        }
    }