Exemplo n.º 1
0
    public void initData(JsonObject playerdata, int heroId = 0)
    {
        Debug.Log("进入其他玩家信息界面");

        tip.text = playerdata["name"].ToString();
        Dictionary <int, JsonObject> heroarr = HeroManager.getInstance().getHeros();
        int index = 0;

        if (heroId > 0)
        {
            if (heroarr.ContainsKey(heroId))
            {
                JsonObject hero = heroarr [heroId];
                addHero(hero);
                OnChangeHero(hero);
            }
        }
        else
        {
            foreach (KeyValuePair <int, JsonObject> kvp in heroarr)
            {
                addHero(kvp.Value);
                if (index == 0)
                {
                    OnChangeHero(kvp.Value);
                }
                index++;
            }
            skeletonGraphic.Func = new callBackFunJ <JsonObject> (OnChangeHero);
        }

        //HeroStyle.heroarr = HeroManager.getInstance ().getHerosArrayList ();
    }
Exemplo n.º 2
0
 /// <summary>
 /// hero回合初始化
 /// </summary>
 public void SetHeroRound()
 {
     Debug.Log("heroRound");
     heroRound = true;
     HeroManager.Instance().SetHeroRound();
     EnemyManager.Instance().SetEnemyInit();
 }
Exemplo n.º 3
0
 public void onClose()
 {
     for (int i = 0; i < heroHeadList.Count; i++)
     {
         //Button btn = equips [kvp.Key];
         IconBase icon = (IconBase)heroHeadList[i];
         if (icon != null)
         {
             PoolManager.getInstance().addToPool(icon.type, icon);
         }
     }
     heroHeadList.Clear();
     for (int i = 0; i < equipedList.Count; i++)
     {
         //Button btn = equips [kvp.Key];
         IconBase icon = (IconBase)equipedList[i];
         if (icon != null)
         {
             PoolManager.getInstance().addToPool(icon.type, icon);
         }
     }
     equipedList.Clear();
     this.gameObject.SetActive(false);
     this.transform.SetParent(null);
     HeroManager.getInstance().initData(DataManager.playerData);
     BagManager.getInstance().initData(DataManager.playerData);
 }
Exemplo n.º 4
0
    public void AnimateMovement(HeroManager hero)
    {
        if (animator == null)
        {
            OnAvatarCreated();
            return;
        }

        string       animation = Idle;
        HeroMovement h         = hero.heroMovement;

        if (h.xzMovement != Vector3.zero)
        {
            if (h.xMove)
            {
                animation = Run;
            }
            if (h.zMove)
            {
                if (h.zMotion > 0)
                {
                    if (h.isWalking)
                    {
                        animation = Walk;
                    }
                    else
                    {
                        animation = Run;
                    }
                }
                else
                {
                    animation = BackPedal;
                }
            }
        }

        if (!h.isGrounded)
        {
            if (h.yMovement.y > 0)
            {
                animation = Fall;
            }
            else
            {
                animation = Fall;
            }
        }

        if (hero.heroCombat.health == 0)
        {
            animation = Death;
        }

        if (lastMovementAnim != animation)
        {
            CmdStartAnimation(animation);
        }
        lastMovementAnim = animation;
    }
Exemplo n.º 5
0
    void Awake()
    {
        //get buff asset
        this.debuff = Resources.Load <DebuffAsset>("SO Assets/Debuff/Stun");

        //attach icon to Hero UI
        this.debuffIcon = debuff.icon;

        hero = gameObject.GetComponent <HeroManager>();

        //enable heroPanel instance
        hero.heroPanel.SetActive(true);

        List <Button> skillsButton = gameObject.GetComponentInChildren <HeroPanel>().skillsBtn;


        for (int i = 0; i < skillsButton.Count; i++)
        {
            skillsButton[i].interactable = false;
            skillTypeTemp = skillsButton[i].GetComponent <Ability>().skillType;
            skillsButton[i].GetComponent <Ability>().skillType = Type.Stunned;
        }

        //disable heroPanel again after setting colliders off
        gameObject.GetComponent <HeroManager>().heroPanel.SetActive(false);

        //change color
        origColor = hero.transform.Find("HeroUI").gameObject.transform.Find("Image").GetComponent <Image>().color;
        hero.transform.Find("HeroUI").gameObject.transform.Find("Image").GetComponent <Image>().color = Color.gray;
    }
Exemplo n.º 6
0
    }    //Override UseAbility

    //Seal of Light Replica
    void SealOfLightTrigger(HeroManager attacker, HeroManager defender)
    {
        targetCount = GameManager.Instance.EnemyHeroList(attacker).Count;
        GameManager.Instance.AttackAll(attacker, defender);
        base.UseAbilityRandom(attacker, defender, targetCount);
        Debug.Log("Seal of Light trigger");
    }
Exemplo n.º 7
0
    public void addHero(JsonObject herodata)
    {
        JsonObject staticdata = HeroManager.getInstance().getHeroStaticData(herodata);
        IconBase   icon       = (IconBase)PoolManager.getInstance().getGameObject(staticdata["color"].ToString());

        icon.init(herodata).Func = new callBackFunc <JsonObject> (onClickHead);
        //icon.init (equip).Func = new callBackFunc<JsonObject> (onClickStone);
        icon.transform.SetParent(content);
        //icon.transform.localScale = new Vector3 (0.5f,0.5f,0.5f);
        icon.transform.localScale = new Vector3(1.0f, 1.0f, 1.0f);
        Button btn = icon.GetComponent <Button> ();

        /**string name = staticdata ["name"].ToString ();
         * if (content.childCount == 0) {
         *      heroHeadDemo.transform.FindChild ("Text").GetComponent<Text>().text = name;
         *      heroHeadDemo.transform.SetParent (content.transform);
         *      btn = heroHeadDemo;
         *      OnChangeHero(herodata,heroHeadDemo);
         * } else {
         *      btn = (Button)GameObject.Instantiate (heroHeadDemo,heroHeadDemo.transform.position,heroHeadDemo.transform.rotation,heroHeadDemo.transform.parent);
         *      btn.interactable = true;
         *      btn.transform.FindChild ("Text").GetComponent<Text>().text = name;
         *
         *      //btn.transform.SetParent (content.transform);
         * }**/
        heroHeadList.Add(btn);
        //btn.onClick.AddListener(delegate() {
        //	JsonObject data = herodata;
        //
        //
        //});
    }
Exemplo n.º 8
0
 public EntitiesManager(HeroItemManager heroItemManager, SkillManager skillManager, ShipManager shipManager, HeroManager heroManager)
 {
     HeroItemManager = heroItemManager;
     SkillManager    = skillManager;
     ShipManager     = shipManager;
     HeroManager     = heroManager;
 }
Exemplo n.º 9
0
    public override void UseAbility(HeroManager attacker, HeroManager defender)
    {
        GameManager.Instance.AttackAll(attacker, defender);

        List <HeroManager> enemyHeroList = GameManager.Instance.EnemyHeroList(attacker);

        //find highest defense among enemies
        int maxAttack = 0;
        int temp      = 0;

        foreach (HeroManager enemyHero in enemyHeroList)
        {
            temp = enemyHero.attack;
            if (temp > maxAttack)
            {
                maxAttack = temp;
            }
        }

        int bonus = maxAttack;

        //deal damage to all enemies with the bonus
        foreach (HeroManager enemyHero in enemyHeroList)
        {
            GameManager.Instance.DealDamage(bonus, attacker, enemyHero);
        }


        // //TEST CODE
        // GameManager.Instance.Attack (attacker, defender);

        base.UseAbility(attacker, defender);
    }    //UseAbility
    /// <summary>
    /// Saves the game.
    /// </summary>
    public void SaveGame()
    {
        var save = new SaveGame();

        if (HeroManager != null)
        {
            HeroManager.Save(ref save);
        }
        if (AbilityManager != null)
        {
            AbilityManager.Save(ref save);
        }
        if (RosterManager != null)
        {
            RosterManager.Save(ref save);
        }
        if (InventoryManager != null)
        {
            InventoryManager.Save(ref save);
        }
        if (WorldManager != null)
        {
            WorldManager.Save(ref save);
        }
        save.LastRewardTime = lastRewardTime;
        save.IsFilled       = true;

        SaveGameManager.SaveGame(save);
    }
Exemplo n.º 11
0
 void Start()
 {
     manager = GetComponent <HeroManager>();
     manager.valuesSys.HurtByPhysical(20);
     manager.SetPackage(0, 0, "1");
     manager.SetEquip(EquipmentType.weapon, "1");
 }
Exemplo n.º 12
0
        public IActionResult Index()
        {
            HeroManager HM     = new HeroManager();
            var         heroes = HM.GetAll;

            return(View(heroes));
        }
Exemplo n.º 13
0
    void OnEnable()
    {
        H = this;
        //HSP = GameObject.FindGameObjectWithTag("HSpawnPoint").transform;

        _hero = PlayerPrefs.GetInt("Hero");

        for (int i = 0; i < 4; i++)
        {
            Heroes[i].SetActive(false);
        }

        switch (_hero)
        {
            case 0:
                Debug.Log("I am from Ionia");
                Heroes[0].SetActive(true);
                break;
            case 1:
                Debug.Log("I am from Athens");
                Heroes[1].SetActive(true);
                break;
            case 2:
                Debug.Log("I am from Sparta");
                Heroes[2].SetActive(true);
                break;
            case 3:
                Debug.Log("I am Greek");
                Heroes[3].SetActive(true);
                break;
        }

        CurrentHero = Heroes[_hero];
        //Instantiate(CurrentHero, HSP.position, HSP.rotation);
    }
Exemplo n.º 14
0
    public void Spell(HeroManager targetEnemy, int damage, int elseTarget)
    {
        AttackToEnemy(targetEnemy, damage);

        if (elseTarget > 0)
        {
            List <HeroManager> newEnemyList = new List <HeroManager>();
            newEnemyList.Add(enemy1);
            newEnemyList.Add(enemy2);
            newEnemyList.Add(enemy3);
            newEnemyList.Add(enemy4);
            newEnemyList.Add(enemy5);
            newEnemyList.Add(enemy6);

            newEnemyList.Remove(targetEnemy);
            int targetCount = elseTarget;
            while (targetCount > 0)
            {
                if (newEnemyList.Count > 0)
                {
                    HeroManager newEnemy = newEnemyList[Random.Range(0, newEnemyList.Count - 1)];
                    if (newEnemy.isLive == true)
                    {
                        AttackToEnemy(newEnemy, damage);
                        targetCount--;
                    }
                    newEnemyList.Remove(newEnemy);
                }
                else
                {
                    targetCount = 0;
                }
            }
        }
    }
Exemplo n.º 15
0
    public void OnClickUp(BaseEventData eventData)
    {
        Debug.Log("OnClickUp");
        //_pTemp = ;
        //PointerEventData _PointerEventData = (PointerEventData)eventData;
        //Vector3 _p = bg.transform.InverseTransformPoint (_PointerEventData.position);
        if (clickTower != null)
        {
            clickTower.OnEndDrag(null);
            clickTower = null;
        }
        if (dragObject != null)
        {
            if (isInDrag)
            {
                ArrayList arr      = TowerManager.getInstance().getTowersList();
                bool      isChange = false;
                for (int i = 0; i < arr.Count; i++)
                {
                    Tower tower = (Tower)arr[i];
                    //if (tower.hd != null)
                    //{
                    //Image img = tower.gameObject.GetComponent<Image>();
                    float _w = Mathf.Abs(dragObject.transform.position.x - tower.transform.position.x);
                    float _h = Mathf.Abs(dragObject.transform.position.y - tower.transform.position.y);

                    if (_w < 80)
                    {
                        if (_h < 80)
                        {
                            //Vector3 _p = tower.body.transform.position;
                            //transform.position = tower.transform.position;
                            //tower.transform.SetParent (content);
                            JsonObject hd = HeroManager.getInstance().getHeroById(int.Parse(dragObject.name));

                            if (tower.isInit)
                            {
                                addHeroHead(tower.hd);
                            }
                            dragObject.transform.SetParent(null);
                            dragObject.gameObject.SetActive(false);
                            tower.initTower(hd);

                            //dragObject.transform.position = _p;
                            isChange = true;
                            break;
                        }
                    }
                    //}
                }
                if (!isChange)
                {
                    dragObject.transform.SetParent(content);
                }
            }
            isInDrag   = false;
            dragObject = null;
            //dragObject = null;
        }
    }
Exemplo n.º 16
0
 public bool AttemptQuest(HeroManager hero, out int reward, out string message)
 {
     if (completed)
     {
         message = "Quest already completed!";
         reward  = 0;
         return(true);
     }
     if (hero.GetOffense() < attackNeeded || hero.GetDefense() < defenseNeeded)
     {
         if (hero.GetOffense() < attackNeeded)
         {
             message = failMsgSword;
         }
         else
         {
             message = failMsgArmor;
         }
         hero.DecreaseHealth(-1);
         reward = questReward / 2;
         return(false);
     }
     message = successMsg;
     reward  = questReward;
     return(true);
 }
Exemplo n.º 17
0
    void BuffSteal(HeroManager attacker, HeroManager defender)
    {
        Buff[] buffs = defender.GetComponents <Buff>();

        if (buffs.Length > 0)
        {
            //Debug.Log("Debuffs Count: " +buffs.Length);

            //Get Random Buff
            int  count        = buffs.Length;
            Buff transferBuff = buffs[Random.Range(0, count)];

            //Get details
            string transferBuffName = transferBuff.buff.buff.ToString();
            //Debug.Log("Buff to be transferred: " +transferBuffName);
            int buffDuration = transferBuff.duration;

            //Transfer Buff
            GameManager.Instance.AddBuff(transferBuffName, buffDuration, defender, attacker);

            transferBuff.OnDestroy();
        }
        else
        {
            Debug.Log("No Buffs to transfer");
        }
    }
Exemplo n.º 18
0
        public bool CanHit(Hero target)
        {
            var handle = target.Handle;

            var targetPos = target.Position;

            if (!(targetPos.Distance2D(BombPosition) <= Radius))
            {
                HeroManager.Remove(handle);
                return(false);
            }
            var pred   = Prediction.PredictedXYZ(target, 250 + Game.Ping);
            var canHit = pred.Distance2D(BombPosition) <= Radius;

            if (canHit)
            {
                float underHit;
                if (!HeroManager.TryGetValue(handle, out underHit))
                {
                    HeroManager.Add(handle, Game.RawGameTime);
                }
            }
            else
            {
                HeroManager.Remove(handle);
            }
            return(canHit);
        }
Exemplo n.º 19
0
    public override void UseAbility(HeroManager attacker, HeroManager defender)
    {
        //attack and deal critical strike to all enemies
        GameManager.Instance.AttackAllCritical(attacker, defender);

        //chance to Poison
        List <HeroManager> enemies = GameManager.Instance.EnemyHeroList(attacker);

        UseAbilityRandom(attacker, defender, enemies.Count);

        //Deal Bonus Damage
        foreach (HeroManager enemy in enemies)
        {
            if (enemy.GetComponents <Debuff>() != null)
            {
                Debuff[] debuffs = enemy.GetComponents <Debuff>();
                foreach (Debuff debuff in debuffs)
                {
                    if (debuff.debuff.name == "Poison")
                    {
                        //there can only be one Stun Debuff at a time
                        int bonusDamage = attacker.defense;
                        GameManager.Instance.DealDamage(bonusDamage, attacker, enemy);
                        Debug.Log("Gouge Bonus Damage: " + bonusDamage + " " + enemy);
                    }    //if
                }        //foreach
            }            //if
        }
    }
Exemplo n.º 20
0
    }    //Disable

    public void WarriorsReturnAbility()
    {
        hero = GetComponentInParent <HeroManager>();
        Player allyPlayer      = hero.GetComponentInParent <Player>();
        int    deadHeroesCount = allyPlayer.deadHeroes.Count;

        if (hero.GetComponentInParent <Player>().isActive)
        {
            if (remainingCooldown == 0)
            {
                canUseAbility = true;

                if (deadHeroesCount > 0)
                {
                    GameObject revivedHero = allyPlayer.deadHeroes[Random.Range(0, deadHeroesCount)];
                    allyPlayer.deadHeroes.Remove(revivedHero);
                    HeroManager heroRevived = revivedHero.GetComponent <HeroManager>();

                    GameManager.Instance.ReviveHero(heroRevived);
                    heroRevived.maxHealth = 400;

                    GameManager.Instance.AddBuff("IncreaseAttack", 2, hero, heroRevived);

                    heroRevived.UpdateUI();

                    ResetCooldown();
                }
            }            //if cooldown = 0
        }
    }
Exemplo n.º 21
0
    public override void UseAbility(HeroManager attacker, HeroManager defender)
    {
        //Attack an enemy
        GameManager.Instance.Attack(attacker, defender);

        //Get allies list
        List <HeroManager> allies = GameManager.Instance.AllyHeroList(attacker);

        //Reset Skills to Max Cooldown
        defender.heroPanel.SetActive(true);
        Ability[] abilities = defender.GetComponentsInChildren <Ability>();
        foreach (Ability ability in abilities)
        {
            //Debug.Log("Abiltiies: " +ability.name);
            ability.ResetCooldown();
        }
        defender.heroPanel.SetActive(false);

        //Gain an Extra turn
        foreach (HeroManager ally in allies)
        {
            ally.hasExtraTurn = true;
        }
        GameManager.Instance.ExtraTurn(attacker);

        base.UseAbility(attacker);
    }    //UseAbility
Exemplo n.º 22
0
    void Update()
    {
        HeroManager.getInstance().changeAnimationSpeed(heroSpeed / moveSpeed);
        goldDisplayer.text       = DataController.getInstance().getGold() + "G";
        goldPerDisplayer.text    = DataController.getInstance().getGoldPerClick() + "G/클릭";
        goldPerSecDisplayer.text = DataController.getInstance().getGoldPerSec() + "G/초";

        Vector2 vec = background.mainTextureOffset;

        vec.Set(vec.x + (moveSpeed * Time.deltaTime), 0);
        background.mainTextureOffset = vec;

        if (moveItemObject != null)
        {
            //< 아이템 이동
            moveItemObject.transform.Translate(Vector3.left * (moveSpeed * 280) * Time.deltaTime);
            HeroManager.getInstance().moveToItem(moveSpeed, moveItemObject);

            //< 아이템 화면 밖으로 나가는 경우
            Vector3 itemVec = Camera.main.WorldToViewportPoint(moveItemObject.transform.position);

            if (itemVec.x < 0)
            {
                Destroy(moveItemObject);
            }
        }
    }
Exemplo n.º 23
0
    public override void UseAbility(HeroManager attacker, HeroManager defender)
    {
        GameManager.Instance.AttackCritical(attacker, defender);


        base.UseAbility(attacker, defender);
    }
Exemplo n.º 24
0
    void Awake()
    {
        hero = gameObject.GetComponent <HeroManager>();

        //get buff asset
        this.debuff = Resources.Load <DebuffAsset>("SO Assets/Debuff/Silence");

        //attach icon to Hero UI
        this.debuffIcon = debuff.icon;

        hero.hasSilence = true;
        hero.heroPanel.SetActive(true);


        List <Button> skillsButton = gameObject.GetComponentInChildren <HeroPanel>().skillsBtn;

        //Debug.Log("Skills Button" +skillsButton);

        //start at i=1 to select 2nd and 3rd skill
        for (int i = 1; i < skillsButton.Count; i++)
        {
            skillsButton[i].interactable = false;
            skillTypeTemp = skillsButton[i].GetComponent <Ability>().skillType;

            if (skillsButton[i].GetComponent <Ability>().skillType == Type.Active)
            {
                skillsButton[i].GetComponent <Ability>().skillType = Type.Silenced;
            }
        }

        gameObject.GetComponent <HeroManager>().heroPanel.SetActive(false);
    }
Exemplo n.º 25
0
    public override void UseAbility(HeroManager attacker, HeroManager defender)
    {
        //Remove a buff
        Buff[] buffs = defender.GetComponents <Buff>();

        if (buffs.Length > 0)
        {
            Debug.Log("Buffs: " + buffs[0]);
            Buff buff = buffs[Random.Range(0, buffs.Length)];
            //buff.OnDestroy();
            Destroy(buff);
        }

        //Reset defender abilities to MAX cooldown
        defender.heroPanel.SetActive(true);
        Ability[] abilities = defender.GetComponentsInChildren <Ability>();
        foreach (Ability ability in abilities)
        {
            //Debug.Log("Abiltiies: " +ability.name);
            ability.MaxCooldown();
        }

        defender.heroPanel.SetActive(false);

        //Critical Attack an Enemy
        GameManager.Instance.AttackCritical(attacker, defender);

        base.UseAbility(attacker);
    }
Exemplo n.º 26
0
	public virtual void UseAbility (HeroManager attacker, HeroManager defender)
	{
		
		GameManager.Instance.CheckTaunt(attacker, defender);

		if(GameManager.Instance.canTargetHero){
			
			if (abilityBuffs != null)
			{
				foreach (AbilityBuffs abilityBuff in abilityBuffs)
				{
					if(!defender.isDead)
					GameManager.Instance.AddBuffComponent(abilityBuff.buff.ToString(),abilityBuff.duration,attacker,defender);
					//Debug.Log("ABILITY BUFF SUCCESS");

				}
			}

			if (abilityDebuffs != null)
			{
				foreach (AbilityDebuffs abilityDebuffs in abilityDebuffs)
				{
					if(!defender.isDead)
					GameManager.Instance.AddDebuffComponent(abilityDebuffs.debuff.ToString(),abilityDebuffs.duration,attacker,defender);

				}
			}

			ResetCooldown();
			GameManager.Instance.ExtraTurnCheck(attacker);

		}//canTargetHero = True

	}
Exemplo n.º 27
0
	public virtual void UseAbilityRandom (HeroManager attacker, HeroManager defender, int targetCount)
	{

		if (abilityBuffs != null)
		{
			foreach (AbilityBuffs abilityBuff in abilityBuffs)
			{
				if(!defender.isDead)
				GameManager.Instance.AddBuffComponentRandom(abilityBuff.buff.ToString(),abilityBuff.duration,attacker,defender, targetCount);

			}
		}

		if (abilityDebuffs != null)
		{
			foreach (AbilityDebuffs abilityDebuffs in abilityDebuffs)
			{
				if(!defender.isDead)
				GameManager.Instance.AddDebuffComponentRandom(abilityDebuffs.debuff.ToString(),abilityDebuffs.duration,attacker,defender,targetCount);

			}
		}

		ResetCooldown();
		GameManager.Instance.ExtraTurnCheck(attacker);

	}
Exemplo n.º 28
0
    public override void UseAbilityPassive()
    {
        Sprite permanentImmunity = Resources.Load <Sprite>("BuffIcons/PermanentImmunity");
        Sprite unluckyAkroma     = Resources.Load <Sprite>("BuffIcons/UnluckyAkroma");

        hero = GetComponentInParent <HeroManager>();

        buffPanel = hero.gameObject.GetComponentInChildren <BuffPanel>();
        //apply effect
        hero.hasPermanentImmunity = true;
        //add icon
        buffPanel.AddIcon("PermanentImmunity", permanentImmunity, 0);

        List <HeroManager> enemies = GameManager.Instance.EnemyHeroList(hero);

        foreach (HeroManager enemy in enemies)
        {
            enemy.chance -= chanceReduction;

            //AddIcon
            BuffPanel buffPanelEnemy = enemy.gameObject.GetComponentInChildren <BuffPanel>();
            buffPanelEnemy.AddIcon("UnluckyAkroma", unluckyAkroma, 0);
        }
        base.UseAbilityPassive();
    }    //UsePassive
Exemplo n.º 29
0
    void Update()
    {
        if (!hasAuthority)
        {
            return;
        }
        if (Input.GetMouseButtonDown(0))
        {
            Ray ray = camera.ScreenPointToRay(Input.mousePosition);

            if (Physics.Raycast(ray, out hit))
            {
                HeroManager tmpTarget = hit.transform.GetComponent <HeroManager> ();
                if (tmpTarget != null)                  // && target != self
                {
                    HeroManager oldTarget = target;
                    target = tmpTarget;
                    if (OnTargetChanged != null)
                    {
                        OnTargetChanged(oldTarget, target);
                    }
                }
            }
        }

        if (transform.position.y < -50)
        {
            CmdChangeHealthBy(-maxHealth);
        }
    }
Exemplo n.º 30
0
//Delayed Promise: Increase skill cooldowns of enemies by 1 with a
//chance to stun each enemy for 1-2 turns.

    public override void UseAbility(HeroManager attacker, HeroManager defender)
    {
        List <HeroManager> enemies = GameManager.Instance.EnemyHeroList(attacker);

        foreach (HeroManager enemy in enemies)
        {
            //Stun for 1-2 turns
            if (GameManager.Instance.IsChanceSuccess(attacker))
            {
                if (enemy.hasImmunity || enemy.hasPermanentImmunity)
                {
                    Debug.Log("Enemy has Immunity");
                }
                else
                {
                    GameManager.Instance.AddDebuff("Stun", Random.Range(1, 3), attacker, enemy);
                }
            }


            //Increase ability cooldowns by 1
            enemy.heroPanel.SetActive(true);
            Ability[] abilities = enemy.GetComponentsInChildren <Ability>();
            foreach (Ability ability in abilities)
            {
                Debug.Log("Ability: " + ability);
                ability.remainingCooldown++;
            }    //foreach ability
            enemy.heroPanel.SetActive(false);
        }        //foreach enemy

        base.UseAbility(attacker, defender);
    }    //UseAbility
Exemplo n.º 31
0
    public void onUse()
    {
        //HeroManager.getInstance().heroscene.selectKind.image.sprite = icon.sprite;
        if (openType == 2)          //穿装备
        {
            HeroManager.getInstance().heroscene.onEquip(this);
        }
        else if (openType == 3)            //宝石镶嵌

        {
            if (ListPanel._currentListPanel != null)
            {
                JsonObject userMessage = new JsonObject();
                userMessage.Add("stoneId", data ["id"]);
                userMessage.Add("stonePos", ListPanel._currentListPanel.stonePos);
                userMessage.Add("equipId", ListPanel._currentListPanel.openitemId);
                ServerManager.getInstance().request("area.equipHandler.addStone", userMessage, (databack) => {
                    Debug.Log(databack.ToString());
                    AudioManager.instance.playEquip();
                });
                ListPanel._currentListPanel.onClickCloseBtn();
            }
        }

        /**else if (openType == 4) {//宝石合成选择
         *      JsonObject sendMessage = new JsonObject();
         *      sendMessage.Add ("stone", data);
         *      sendMessage.Add ("pos", ListPanel._currentListPanel.stonePos);
         *      NotificationManager.getInstance ().PostNotification (null,Message.HECHENG_ADD_STONE,sendMessage);
         *      ListPanel._currentListPanel.onClickCloseBtn ();
         * }**/


        //this.transform.SetParent(HeroManager.getInstance().heroscene.selectKind.transform);
    }
Exemplo n.º 32
0
    private void Start()
    {
        singleton = this;
        freeHeroPool = new List<HeroController> ( GetComponentsInChildren<HeroController>() );

        foreach(HeroController hero in freeHeroPool)
            hero.gameObject.active = false;
    }
Exemplo n.º 33
0
    public Player()
    {
		_soundManager = SoundManager.Instance;
		_comboManager = ComboManager.Instance;
		_inputController = InputController.Instance;
        _gameManager = GameManager.Instance;
        _buildingManager = BuildingManager.Instance;
        _eventManager = EventManager.Instance;
        heroManager = new HeroManager();
    }
    void SetDatas(HeroManager manager, List<HeroDebugData> heroDatas)
    {
        HeroDebugData data;
        HeroData hero;
        for (int i = 0; i < heroDatas.Count; i++)
        {
            hero = new HeroData();
            data = heroDatas[i];

            //set max
            for (int j = 0; j < data.equipment.Count; j++)
            {
                EquipmentItem item = new EquipmentItem();
                Property.Equip e = new Property.Equip();

                if (data.equipment[j].equipId > 0 && data.equipment[j].equipLevel > 0)
                {
                    e.templateid = (uint)data.equipment[j].equipId;
                    item.parseData(e);

                    //Debug.Log(item.equitype);
                    //set level
                    item.equiplev = data.equipment[j].equipLevel;
                    hero.equipmentList.addItem(i * 10 + j, item);
                }
            }

            //set id level
            if (data.heroId > 0 && data.heroLevel > 0)
            {
                hero.templateID = data.heroId;
                hero.guid = (long)1111111 + i;
                hero.level = data.heroLevel;
                hero.property.country = i + 1;
                hero.activate = false;
                hero.battle = i;
                hero.starLevel = data.heroStar;

                hero.parseData(hero.templateID);

                hero.refreshProperty();
                manager.addHero(hero.guid, hero);
                Debug.Log("hero is init " + i + "   resname : " + hero.resname);
            }

            if (i < 3)
                manager.fightHeroList.setFightHero(hero.battle, hero.guid);
        }
    }
        private IEnumerator RoundEnding ()
        {
            // Stop tanks from moving.
            DisableTankControl ();

            // Clear the winner from the previous round.
            m_RoundWinner = null;

            // See if there is a winner now the round is over.
            m_RoundWinner = GetRoundWinner ();

            // If there is a winner, increment their score.
            if (m_RoundWinner != null)
                m_RoundWinner.m_Wins++;

            // Now the winner's score has been incremented, see if someone has one the game.
            m_GameWinner = GetGameWinner ();

            // Get a message based on the scores and whether or not there is a game winner and display it.
            string message = EndMessage ();
            m_MessageText.text = message;

            // Wait for the specified length of time until yielding control back to the game loop.
            yield return m_EndWait;
        }
Exemplo n.º 36
0
	// Use this for initialization
	void Start () {
        heroManager = new HeroManager();
        heroManager.init(0, new Vector3(-5, -2, 0));
        HeroManager heroManager2 = new HeroManager();
        heroManager.init(1, new Vector3(5, -2, 0));
    }