コード例 #1
0
ファイル: HeroArcher.cs プロジェクト: xSan4es/TD2DCosmos
    public override void setDamage()
    {
        InfoHero tempPrefab = GameController.pool.launchPrefab(NameHero.Arrow, new Vector2(myTransform.position.x, myTransform.position.y), myTransform.rotation);

        tempPrefab.myRefScript.takeDamage(forceOfAttack, typeOfAttack);
        tempPrefab.myRefScript.setTarget(target);
    }
コード例 #2
0
    public static void AnimatedAttack(InfoHero target)
    {
        target.script.TakeDamage(hero.skillDamage[tempSkill]);

        switch (tempSkill)
        {
        case 0:
        {
            hero.script.FirstSkill();
            break;
        }

        case 1:
        {
            hero.script.SecondSkill();
            break;
        }

        case 2:
        {
            hero.script.ThirdSkill();
            break;
        }

        case 3:
        {
            hero.script.FourthSkill();
            break;
        }
        }

        isActivatedSkill = false;
        Time.timeScale   = 1f;
    }
コード例 #3
0
 public static void TakeHeroInfo(InfoHero hero)
 {
     for (int i = 0; i < 4; i++)
     {
         img[i].sprite       = hero.img[i];
         description[i].text = hero.description[i];
     }
     GameController.hero = hero;
 }
コード例 #4
0
ファイル: Hero.cs プロジェクト: xSan4es/elves-vs-orcs
    public int[] skillDamage    = new int[4]; // в подальшому це буде об'єкти класу Skill, де будуть прописані вже всякі фішечки (фіз. чи маг. урон/манакост т.д.)

    protected void Start()
    {
        myTransform = transform;
        animator    = myTransform.GetComponent <Animator>();

        myInfo             = new InfoHero();
        myInfo.img         = skills;
        myInfo.description = description; //така інфа потім буде зчитуватись з бд
        myInfo.skillDamage = skillDamage;
        myInfo.script      = gameObject.GetComponent <Hero>();

        health = maxHealth;
    }
コード例 #5
0
    private void Start()
    {
        pool = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <Pool>();

        humanTower.myGameObject = GameObject.FindGameObjectWithTag("HumanTower");
        humanTower.myRefScript  = humanTower.myGameObject.GetComponent <TDObject>();
        humanTower.myTransform  = humanTower.myGameObject.transform;
        targetMonstr            = humanTower;

        monstrTower.myGameObject = GameObject.FindGameObjectWithTag("MonstrTower");
        monstrTower.myRefScript  = monstrTower.myGameObject.GetComponent <TDObject>();
        monstrTower.myTransform  = monstrTower.myGameObject.transform;
        targetHuman = monstrTower;
    }
コード例 #6
0
ファイル: Pool.cs プロジェクト: xSan4es/TD2DCosmos
    public InfoHero launchPrefab(NameHero nameHero, Vector2 vectorXY, Quaternion rot)
    {
        InfoHero tempPrefab = new InfoHero();

        foreach (InfoHero prefab in heroesInPool[(int)nameHero])
        {
            if (!prefab.myGameObject.activeInHierarchy)
            {
                Vector3 tempVector = new Vector3(vectorXY.x, vectorXY.y, prefab.myTransform.position.z);

                prefab.myTransform.position = tempVector;
                prefab.myTransform.rotation = rot;
                prefab.myGameObject.SetActive(true);

                tempPrefab = prefab;
                break;
            }
        }
        return(tempPrefab);
    }
コード例 #7
0
ファイル: Pool.cs プロジェクト: xSan4es/TD2DCosmos
    private void Awake()
    {
        heroesInPool = new List <InfoHero> [heroesGM.Length];

        for (int i = 0; i < heroesInPool.Length; i++)
        {
            heroesInPool[i] = new List <InfoHero>();

            for (int j = 0; j < countHeroes[i]; j++)
            {
                GameObject tempGO = Instantiate(heroesGM[i]);
                tempGO.SetActive(false);

                InfoHero tempInfoHero = new InfoHero();
                tempInfoHero.myGameObject = tempGO;
                tempInfoHero.myTransform  = tempGO.transform;
                tempInfoHero.myRefScript  = tempGO.GetComponent <TDObject>();


                heroesInPool[i].Add(tempInfoHero);
                heroesInPool[i][j].myTransform.SetParent(objectsParent);
            }
        }
    }
コード例 #8
0
ファイル: TDObject.cs プロジェクト: xSan4es/TD2DCosmos
 public virtual void setTarget(InfoHero target)
 {
     this.target = target;
 }
コード例 #9
0
    public static void fight()
    {
        int   i        = 0;
        float distance = 1000;
        int   target   = 0;

        if (humanHeroes.Count == 0)
        {
            targetMonstr = humanTower;
        }
        else
        {
            i        = 0;
            distance = 1000;
            target   = 0;

            foreach (InfoHero tempInfoHero in humanHeroes)
            {
                float tempDistance = distanceBetweenPoints(new Vector2(tempInfoHero.myTransform.position.x, tempInfoHero.myTransform.position.y), monstrCreate);
                if (tempDistance < distance)
                {
                    distance = tempDistance;
                    target   = i;
                }
                i++;
            }

            targetMonstr = humanHeroes[target];
        }

        foreach (InfoHero tempInfoHero in monstrHeroes)
        {
            tempInfoHero.myRefScript.setTarget(targetMonstr);
        }

        if (monstrHeroes.Count == 0)
        {
            targetHuman = monstrTower;
        }
        else
        {
            i        = 0;
            distance = 1000;
            target   = 0;
            foreach (InfoHero tempInfoHero in monstrHeroes)
            {
                float tempDistance = distanceBetweenPoints(new Vector2(tempInfoHero.myTransform.position.x, tempInfoHero.myTransform.position.y), humanCreate);
                if (tempDistance < distance)
                {
                    distance = tempDistance;
                    target   = i;
                }
                i++;
            }

            targetHuman = monstrHeroes[target];
        }

        foreach (InfoHero tempInfoHero in humanHeroes)
        {
            tempInfoHero.myRefScript.setTarget(targetHuman);
        }
    }
コード例 #10
0
    void Start()
    {
        float s = Random.Range(2f, 6f);

        speedhero = new InfoHero(s);
    }
コード例 #11
0
    public void LoadGameConfig()
    {
        var objJson = SimpleJSON_DatDz.JSON.Parse(loadJson(gameConfig));

        //Debug.Log(objJson);
        Debug.Log("<color=yellow>Done: </color>LoadGameConfig !");
        if (objJson != null)
        {
            GameConfig.Instance.GoldStart       = objJson["GoldStart"].AsLong;
            GameConfig.Instance.CoinStart       = objJson["CoinStart"].AsInt;
            GameConfig.Instance.GoldMinerAmount = objJson["GoldMinerAmount"].AsInt;
            for (int i = 0; i < GameConfig.Instance.RatioBorn.Length; i++)
            {
                GameConfig.Instance.RatioBorn[i] = objJson["RatioBorn"][i].AsFloat;
            }
            GameConfig.Instance.OwnLand1         = objJson["OwnLand1"].AsInt;
            GameConfig.Instance.OwnLand2         = objJson["OwnLand2"].AsInt;
            GameConfig.Instance.RatioBornAdd     = objJson["RatioBornAdd"].AsFloat;
            GameConfig.Instance.TimeDestroy      = objJson["TimeDestroy"].AsFloat;
            GameConfig.Instance.Timeday          = objJson["Timeday"].AsFloat;
            GameConfig.Instance.TimeAd           = objJson["TimeAd"].AsFloat;
            GameConfig.Instance.Rgold            = objJson["Rgold"].AsFloat;
            GameConfig.Instance.CapGold0         = objJson["CapGold0"].AsInt;
            GameConfig.Instance.CapGoldUp        = objJson["CapGoldUp"].AsFloat;
            GameConfig.Instance.PriceGoldUp      = objJson["PriceGoldUp"].AsInt;
            GameConfig.Instance.Bloodlv0         = objJson["Bloodlv0"].AsLong;
            GameConfig.Instance.Bloodratio       = objJson["Bloodratio"].AsFloat;
            GameConfig.Instance.PriceBlood0      = objJson["PriceBlood0"].AsLong;
            GameConfig.Instance.PriceBloodUp     = objJson["PriceBloodUp"].AsFloat;
            GameConfig.Instance.Ri               = objJson["Ri"].AsFloat;
            GameConfig.Instance.Wi               = objJson["Wi"].AsFloat;
            GameConfig.Instance.BuildTime        = objJson["BuildTime"].AsFloat;
            GameConfig.Instance.UpgradeTime      = objJson["UpgradeTime"].AsFloat;
            GameConfig.Instance.Hi               = objJson["Hi"].AsFloat;
            GameConfig.Instance.Med              = objJson["Med"].AsFloat;
            GameConfig.Instance.Lo               = objJson["Lo"].AsFloat;
            GameConfig.Instance.health1          = objJson["health1"].AsFloat;
            GameConfig.Instance.dam1             = objJson["dam1"].AsFloat;
            GameConfig.Instance.UnitRange        = objJson["UnitRange"].AsFloat;
            GameConfig.Instance.hitspeed1        = objJson["hitspeed1"].AsFloat;
            GameConfig.Instance.speed_medium     = objJson["speed_medium"].AsFloat;
            GameConfig.Instance.speed_hard       = objJson["speed_hard"].AsFloat;
            GameConfig.Instance.Price01          = objJson["Price01"].AsLong;
            GameConfig.Instance.CapWar01         = objJson["CapWar01"].AsInt;
            GameConfig.Instance.TimeCanon        = objJson["TimeCanon"].AsFloat;
            GameConfig.Instance.Timecanonsurvive = objJson["Timecanonsurvive"].AsFloat;
            GameConfig.Instance.TimeUp           = objJson["TimeUp"].AsInt;
            GameConfig.Instance.LandUP           = objJson["LandUP"].AsInt;
            GameConfig.Instance.LandDiv          = objJson["LandDiv"].AsInt;

            GameConfig.Instance.AtkWalk    = objJson["AtkWalk"].AsInt;
            GameConfig.Instance.AtkFly     = objJson["AtkFly"].AsInt;
            GameConfig.Instance.AtkMele    = objJson["AtkMele"].AsInt;
            GameConfig.Instance.AtkArcher  = objJson["AtkArcher"].AsInt;
            GameConfig.Instance.HlthWalk   = objJson["HlthWalk"].AsInt;
            GameConfig.Instance.HlthFly    = objJson["HlthFly"].AsInt;
            GameConfig.Instance.HlthMele   = objJson["HlthMele"].AsInt;
            GameConfig.Instance.HlthArcher = objJson["HlthArcher"].AsInt;

            GameConfig.Instance.Pb1    = objJson["Pb1"].AsInt;
            GameConfig.Instance.Pbrate = objJson["Pbrate"].AsFloat;

            GameConfig.Instance.ID_UnityAds_ios  = objJson["ID_UnityAds_ios"];
            GameConfig.Instance.ID_Inter_android = objJson["ID_Inter_android"];
            GameConfig.Instance.ID_Inter_ios     = objJson["ID_Inter_ios"];
            GameConfig.Instance.ID_Banner_ios    = objJson["ID_Banner_ios"];
            GameConfig.Instance.kProductID50     = objJson["kProductID50"];
            GameConfig.Instance.kProductID300    = objJson["kProductID300"];
            GameConfig.Instance.kProductID5000   = objJson["kProductID5000"];
            GameConfig.Instance.link_ios         = objJson["link_ios"];
            GameConfig.Instance.link_android     = objJson["link_android"];
            GameConfig.Instance.string_Share     = objJson["string_Share"];
            for (int j = 0; j < objJson["speech"].Count; j++)
            {
                GameConfig.Instance.lsSpeech.Add(objJson["speech"][j]);
            }
            for (int t = 0; t < objJson["heroes"].Count; t++)
            {
                InfoHero _info = new InfoHero();
                _info.ID        = objJson["heroes"][t]["id"].AsInt;
                _info.nameHero  = objJson["heroes"][t]["Name"];
                _info.info      = objJson["heroes"][t]["Info"];
                _info.health    = objJson["heroes"][t]["health1"].AsFloat;
                _info.dame      = objJson["heroes"][t]["dam1"].AsFloat;
                _info.hitSpeed  = objJson["heroes"][t]["hitspeed1"].AsFloat;
                _info.range     = objJson["heroes"][t]["range"].AsFloat;
                _info.speed     = objJson["heroes"][t]["speed1"].AsFloat;
                _info.rangeBoom = objJson["heroes"][t]["rangeBoom"].AsFloat;
                _info.dameDead  = objJson["heroes"][t]["dameDead"].AsFloat;
                _info.price     = objJson["heroes"][t]["Price01"].AsInt;
                int _t = objJson["heroes"][t]["xCapWar"].AsInt;
                if (_t == 0)
                {
                    _info.capWar = objJson["heroes"][t]["CapWar01"].AsInt * GameConfig.Instance.Hi;
                }
                else if (_t == 1)
                {
                    _info.capWar = objJson["heroes"][t]["CapWar01"].AsInt * GameConfig.Instance.Med;
                }
                else if (_t == 2)
                {
                    _info.capWar = objJson["heroes"][t]["CapWar01"].AsInt * GameConfig.Instance.Lo;
                }
                _info.isMom       = objJson["heroes"][t]["isMom"].AsBool;
                _info.isBaby      = objJson["heroes"][t]["isBaby"].AsBool;
                _info.idMom       = objJson["heroes"][t]["idMom"].AsInt;
                _info.idBaby      = objJson["heroes"][t]["idBaby"].AsInt;
                _info.speedBullet = objJson["heroes"][t]["speedBullet"].AsFloat;
                if (objJson["heroes"][t]["type"].AsInt == 1)
                {
                    _info.typeHero = TypeHero.ChemThuong;
                }
                else if (objJson["heroes"][t]["type"].AsInt == 2)
                {
                    _info.typeHero = TypeHero.ChemBay;
                }
                else if (objJson["heroes"][t]["type"].AsInt == 3)
                {
                    _info.typeHero = TypeHero.CungThuong;
                }
                else if (objJson["heroes"][t]["type"].AsInt == 4)
                {
                    _info.typeHero = TypeHero.CungBay;
                }
                else if (objJson["heroes"][t]["type"].AsInt == 5)
                {
                    _info.typeHero = TypeHero.Canon;
                }
                GameConfig.Instance.lsInfoHero.Add(_info);
                if (_info.ID < 31)
                {
                    EquipRD eq = new EquipRD();
                    eq.eHealth       = Random.Range(1, 11);
                    eq.eAtk          = Random.Range(1, 11);
                    eq.eHit_Speed    = Random.Range(1, 11);
                    eq.eConstruction = Random.Range(1, 11);
                    eq.eCost         = Random.Range(1, 11);
                    GameConfig.Instance.lsRdEquip.Add(eq);
                    Equipment equipment = new Equipment();
                    equipment.IDHero = _info.ID;
                    GameConfig.Instance.lsEquip.Add(equipment);
                }
            }

            for (int t = 0; t < objJson["listMap"].Count; t++)
            {
                Vector2[] arrMap = new Vector2[objJson["listMap"][t][0].Count];
                for (int k = 0; k < objJson["listMap"][t][0].Count; k++)
                {
                    arrMap[k] = new Vector2(objJson["listMap"][t][0][k].AsInt, objJson["listMap"][t][1][k].AsInt);
                }
                GameConfig.Instance.listMap.Add(arrMap);
            }
        }

        var objJson2 = SimpleJSON_DatDz.JSON.Parse(loadJson(listStory));

        if (objJson2 != null)
        {
            for (int j = 0; j < objJson2["ListStory"].Count; j++)
            {
                GameConfig.Instance.lsStory.Add(objJson2["ListStory"][j]);
            }

            for (int j = 0; j < objJson2["listNameIsLand"].Count; j++)
            {
                GameConfig.Instance.lsNameIsLand.Add(objJson2["listNameIsLand"][j]);
            }
        }

        gameManager.SetActive(true);
    }