Пример #1
0
        /// <summary>
        /// Playerとアイテムのあたり判定
        /// </summary>
        /// <param name="chara">Player</param>
        /// <param name="ui">UI表示用()Debug</param>
        public void ItemCollision(CharacterBase chara, DungeonUI ui)
        {
            int           index = 0;
            DungeonHintUI hint  = ui.HintUI;

            hint.Switch(false);                     //UIを非表示

            items.ForEach(i =>
            {
                if (chara.Collision.IsCollision(i.Collisiton))
                {
                    string itemName = i.GetItem().GetItemName();
                    hint.Switch(true);                       //当たっていれば表示
                    hint.SetMessage("拾う:Space " + itemName); //表示するメッセージ
                    bool result = false;
                    if (hint.IsPush(Keys.Space))             //拾ったらもらう処理
                    {
                        result = GetItem(index, ui);
                    }
                    if (result)                     //道具欄に追加成功したらメッセージをOFF
                    {
                        hint.Switch(false);
                    }
                    return;
                }
                index++;
            });
        }
Пример #2
0
        /// <summary>
        /// ヒントUIの更新
        /// </summary>
        private void UpdateHint()
        {
            hintUI.Update();
            Vector2 pos = Vector2.Lerp(hintPos + new Vector2(200, 0), hintPos, hintUI.CurrentAlpha());

            hintUI.SetPosition(pos);             //文字位置調整

            if (onButton == ButtonEnum.NULL)     //マウスがボタン上でない場合
            {
                hintUI.Switch(false);            //表示しない
                return;
            }

            hintUI.Switch(true);                        //表示する
            hintUI.SetMessage(hint[(int)onButton]);     //Hint文字設定
        }