示例#1
0
        public override void AddWeapon()
        {
            IWeaponFactory WeaponFactory = RTSFactory.GetWeaponFactory();
            IWeapon        Weapon        = WeaponFactory.CreateWeapon(m_BuildParam.emWeapon);

            m_BuildParam.NewCharacter.SetWeapon(Weapon);
        }
示例#2
0
        public void ShowInfo(ICamp Camp)
        {
            Show();
            m_Camp = Camp;

            // 名称
            m_CampNameTxt.text = m_Camp.GetName();
            // 训练花费
            m_TrainCostTxt.text = string.Format("AP:{0}", m_Camp.GetTrainCost());

            // 训练中信息
            ShowOnTrainInfo();
            // Icon
            IAssetFactory Factory = RTSFactory.GetAssetFactory();

            m_CampImage.sprite = Factory.LoadSprite(m_Camp.GetIconSpriteName());

            // 升级功能
            if (m_Camp.GetLevel() <= 0)
            {
                EnableLevelInfo(false);
            }
            else
            {
                EnableLevelInfo(true);
                m_CampLvTxt.text   = string.Format("等级:" + m_Camp.GetLevel());
                m_WeaponLvTxt.text = string.Format("武器等级:" + m_Camp.GetWeaponLevel());
            }
        }
示例#3
0
        public override void SetCharacterAttr()
        {
            IAttrFactory AttrFactory  = RTSFactory.GetAttrFactory();
            EnemyAttr    theEnemyAttr = AttrFactory.GetEnemyAttr(
                m_BuildParam.NewCharacter.GetAttrID());

            theEnemyAttr.SetAttrStrategy(new EnemyAttrStrategy());
            m_BuildParam.NewCharacter.SetCharacterAttr(theEnemyAttr);
        }
示例#4
0
        public override void LoadAsset(int GameObjectID)
        {
            IAssetFactory AssetFactory    = RTSFactory.GetAssetFactory();
            GameObject    EnemyGameObject = AssetFactory.LoadEnemy(m_BuildParam.NewCharacter.GetAssetName());

            EnemyGameObject.transform.position = m_BuildParam.SpawnPosition;
            EnemyGameObject.name = string.Format("Enemy[{0}]", GameObjectID);
            m_BuildParam.NewCharacter.SetGameObject(EnemyGameObject);
        }
示例#5
0
        // 设置角色能力
        public override void SetCharacterAttr()
        {
            // 获取Soldier的属性
            IAttrFactory theAttrFactory = RTSFactory.GetAttrFactory();
            SoldierAttr  theSoldierAttr = theAttrFactory.GetSoldierAttr(
                m_BuildParam.NewCharacter.GetAttrID());

            // 设置
            theSoldierAttr.SetAttrStrategy(new SoldierAttrStrategy());

            // 设置等级
            theSoldierAttr.SetSoldierLv(m_BuildParam.Lv);

            // 设置给角色
            m_BuildParam.NewCharacter.SetCharacterAttr(theSoldierAttr);
        }