コード例 #1
0
ファイル: BattleHero.cs プロジェクト: TimonYoon/Dev
    void OnDisable()
    {
        onDie    -= OnDie;
        onRevive -= OnRevive;
        onChangedCanResurrect             -= OnChangedCanResurrect;
        skeletonAnimation.state.Interrupt -= OnInterruptAnimation;

        isSuperArmor  = false;
        isBlockMove   = false;
        isBlockAttack = false;
        airborne      = false;
        notTargeting  = false;

        //if(objHPGauge)
        //    objHPGauge.SetActive(false);

        //hp게이지 도로 풀로 보냄
        if (objHPGauge)
        {
            HPGauge ui1 = objHPGauge.GetComponent <HPGauge>();
            ui1.Init(null);
            objHPGauge.SetActive(false);
            objHPGauge = null;
        }
    }
コード例 #2
0
ファイル: BattleHero.cs プロジェクト: TimonYoon/Dev
    public override void SetBattleGroup(BattleGroup _battleGroup)
    {
        if (battleGroup)
        {
            battleGroup.blueTeamList.Remove(this);
            battleGroup.redTeamList.Remove(this);

            //기존 배틀그룹 관련 콜백 등록 해제
            battleGroup.onChangedBattlePhase -= OnChangedBattlePhase;

            if (buffController && !string.IsNullOrEmpty(battleGroup.dungeonID))
            {
                buffController.DetachBuff(GameDataManager.dungeonBaseDataDic[battleGroup.dungeonID].buffID);
            }
        }

        base.SetBattleGroup(_battleGroup);

        if (battleGroup)
        {
            //배틀그룹 관련 콜백 등록
            battleGroup.onChangedBattlePhase += OnChangedBattlePhase;
        }

        if (!battleGroup)
        {
            //Despawn();
            return;
        }


        //팀원 추가 될 때 콜백. 패시브 버프 처럼 등장하면서 부터 적용되어야 하는 것들을 위해 필요
        if (team == Team.Red)
        {
            battleGroup.redTeamList.onAdd += OnAddHeroToTeamList;
        }
        else if (team == Team.Blue)
        {
            battleGroup.blueTeamList.onAdd += OnAddHeroToTeamList;
        }

        //hp게이지 달아주기
        if (!objHPGauge)
        {
            objHPGauge = Battle.GetObjectInPool(Battle.hpGaugePrefab.name);
            if (!objHPGauge)
            {
                objHPGauge      = Instantiate(Battle.hpGaugePrefab, battleGroup.canvasUIBattleCharacter.transform);
                objHPGauge.name = Battle.hpGaugePrefab.name;
                Battle.AddObjectToPool(objHPGauge);
            }
        }

        objHPGauge.transform.SetParent(battleGroup.canvasUIBattleCharacter.transform);
        objHPGauge.SetActive(true);
        HPGauge ui = objHPGauge.GetComponent <HPGauge>();

        ui.Init(this);

        UpdateActiveState();
    }