コード例 #1
0
ファイル: Hero.cs プロジェクト: kaiyunxue/AzerothAllStar
 protected override void Awake()
 {
     base.Awake();
     test = new FrontTest(this);
     test.StartForntTest();
     this.hatredCurve = hatredTemplate.heroCurve;
     if (gameObject.layer == 8)
     {
         inputListener = GameController.LeftInputListener;
     }
     else
     {
         inputListener = GameController.RightInputListener;
     }
     animator     = gameObject.GetComponent <Animator>();
     skillManager = gameObject.GetComponent <ISkillManager>();
     heroRegister = gameObject.GetComponent <HerosRegistrar>();
     state        = gameObject.GetComponent <State>();
     audioCtrler  = GetComponent <AudioController>();
 }
コード例 #2
0
    protected virtual KOFItem getMaxHatredObject()
    {
        HerosRegistrar enemyRegister = null;

        if (gameObject.layer == 8)
        {
            enemyRegister = GameController.register.RightHero.HeroRegister;
        }
        else if (gameObject.layer == 9)
        {
            enemyRegister = GameController.register.LeftHero.HeroRegister;
        }
        else
        {
            Debug.LogError(gameObject.name + ": Can't find its layer");
        }
        float   maxHatredVal = 0;
        KOFItem target       = null;

        foreach (var v in enemyRegister.GetAllGameItems())
        {
            if (v.GetComponent <KOFItem>() == null)
            {
                Debug.LogError("代码写的不好,需要改------- 不是一个有效的kofitem");
            }
            else
            {
                float distance  = Vector3.Distance(transform.position, v.transform.position);
                float hatredVal = v.GetComponent <KOFItem>().hatredCurve.Evaluate(distance);
                if (hatredVal > maxHatredVal)
                {
                    maxHatredVal = hatredVal;
                    target       = v.GetComponent <KOFItem>();
                }
            }
        }
        return(target);
    }