Пример #1
0
        // Start is called before the first frame update
        void Start()
        {
            IsSearch = false;
            IsUse    = true;

            eria_         = GetComponent <SphereCollider>();
            eria_.enabled = false;

            mesh_         = GetComponent <MeshRenderer>();
            mesh_.enabled = false;

            skillDraw_ = FindObjectOfType <UI_Skill>();

            updateAreaSize_ = areaSizeMAX_ / areaMaxTime_;
            canselSize_     = areaSizeMAX_ / (areaMaxTime_ / cancelTime_);
        }
Пример #2
0
        /// <summary>
        /// サーチ停止
        /// </summary>
        public void Stop()
        {
            if (IsUse)
            {
                return;
            }
            if (!IsSearch)
            {
                return;
            }
            if (canselSize_ > transform.localScale.x)
            {
                return;
            }

            //コライダーを無効にする
            eria_.enabled        = false;
            mesh_.enabled        = false;
            transform.localScale = new Vector3(0.001f, 0.001f, 0.001f);

            // スキルのインターバル設定
            SkillIntervalTimeCount_ = skillIntervalTime_;

            // UIにサーチがクールタイムになったことを知らせる
            if (skillDraw_ == null)
            {
                skillDraw_ = FindObjectOfType <UI_Skill>();
            }
            skillDraw_.StartCoolTime();

            // サーチ中フラグを無効化
            IsSearch = false;

            // スキル効果時間の設定
            for (int i = 0; i < enemySearchInfo_.Count; i++)
            {
                // 既に効果時間が設定されているものはパス
                if (enemySearchInfo_[i].skillEffectTime_ > 0f)
                {
                    continue;
                }

                // そうでなければスキル効果時間を設定
                enemySearchInfo_[i].isInSearchArea   = false;
                enemySearchInfo_[i].skillEffectTime_ = skillEffectTime_;
            }
        }
Пример #3
0
 void Start()
 {
     ObjectEventDispatcher.dispatcher.addEventListener(EventTypeName.DIU_FEIDAO, DiuFeidao);
     ObjectEventDispatcher.dispatcher.addEventListener(EventTypeName.DISTORY_FEIDAO, HasShouDao);
     if (!_uiskill)
     {
         _uiskill = GetComponent <UI_Skill>();
     }
     if (!_hzdate)
     {
         _hzdate = GetComponent <HZDate>();
     }
     if (!_player)
     {
         _player = GlobalTools.FindObjByName("player");
     }
     _uiskill.SetHZDate(_hzdate);
 }
Пример #4
0
    public void Build(List <SkillBase> skills, Action <int> callback_OnSelected)
    {
        int index = 0;

        foreach (var s in skills)
        {
            var type = s.skillinfo.skilltype;

            if (!positions.ContainsKey(s.skillinfo.skilltype))
            {
                var container = parentcontainers.CreateDefaultSubObject <UI_SkillContainer>("Parent::Container_" + type, model_parent_containers);
                container.skilltype = type;
                positions.Add(type, container);
                positions[type].SubdivisionName.text = s.skillinfo.skilltype.ToString();
            }

            var parent = positions[type];
            var info   = s.skillinfo;

            var ui = parent.parent.CreateDefaultSubObject <UI_Skill>("Skill::Container:_ " + info.skill_name, model_skill);
            ui.Initialize(index, callback_OnSelected);
            ui.Set_SkillInfo(info);
            ui.Refresh();
            s.SetUI(ui);
            ui.OnUI_Unselect();

            if (!oneshot)
            {
                oneshot = true;
                first   = ui;
                ConfigurateFirst(ui.gameObject);
            }

            index++;
        }
    }
Пример #5
0
 public void SetUI(UI_Skill _ui) => ui_skill       = _ui;