Понедельник, 07 Октября 2024, 04:58

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Проблема с инвентарем
allodsДата: Суббота, 16 Января 2016, 20:46 | Сообщение # 21
почти ветеран
Сейчас нет на сайте
засунь хоть ы функцию или корутину хоть куда
Valik_FenkoДата: Суббота, 16 Января 2016, 20:47 | Сообщение # 22
почетный гость
Сейчас нет на сайте
Воту меня такая идея.Сделать два Lista Один чет типа префаба предметов,там скажем меч какой-то у него заданы статы и этот лист хранит их,а второй это созданные предметы,скажем игрок может слутать несколько одинаковых предметов и они будут создаватся из листа 1.Это норм идея или нагрузка слишком большая будит.Мб кто чего посоветует получше?

Сообщение отредактировал Valik_Fenko - Суббота, 16 Января 2016, 14:05
seamanДата: Суббота, 16 Января 2016, 20:47 | Сообщение # 23
старожил
Сейчас нет на сайте
Цитата
каждый раз когда я захочу создать предмет мне нужно перезаписать массив

Неверно. Почитайте еще про List. В частности про List.Add


Сообщение отредактировал seaman - Суббота, 16 Января 2016, 15:59
berilДата: Суббота, 16 Января 2016, 23:11 | Сообщение # 24
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Соеденил все темы автора в одну. Не стоит плодить однотипные темы ;)

Цитата Valik_Fenko ()
Я пока молчу про мультиплеер,но ведь для такой игры нужен динамический инвентарь,а точней итемы.То есть,убил моба - создались предметы.А как их создать програмно ,а не в ручную позапихивать в инвентарь в вышеуказаных уроках я не увидел

А что мешает то ?

к примеру у тебя класс с твоими параметрами предметов
Код
[Serializable]
public class Item
{
public string Name;
public string ID;

public Item(string name, int id)
{
Name = name;
Id= id;
}
}

Вот так создаешь программно и добавляешь в свою базу данных

Код
public class Inventory
{
List<Item> item = new List<Item>(); список, где ты хранишь все преметы инвентаря

void Start()
{
Item newItem = new Item ("Меч", 5);..создаешь программно новый предмет
item.Add(newItem);добавляешь в список
}
}


А вообще лучше создать заранее все предметы хранить их в XML или JSON и оттуда загружать в список.




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
Valik_FenkoДата: Понедельник, 18 Января 2016, 22:41 | Сообщение # 25
почетный гость
Сейчас нет на сайте
Пишу инвентарь на Gui ,пока успешно,но столкнулся с тонкостью.
Есть вот такое
if(Gui.Buttom(new rect,бла бла бла...
{
}
это проверяет нажатия на кнопку,а как мне проверить скажем наведения на неё мишкой или мб мне нид проверить что мишка зажата на кнопке.Как это сделать?
zisXДата: Понедельник, 18 Января 2016, 23:51 | Сообщение # 26
Neto Zis
Сейчас нет на сайте
Valik_Fenko, Хранить позицию кнопки в Rect и проверять находится ли позиция мышки в переменной (Rect).
А нажатия проверять так же только поставить перед этим условие нажата ли левая кнопка мыши

If(Input.GetMouseButtonDown(0))


berilДата: Вторник, 19 Января 2016, 02:27 | Сообщение # 27
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Код
Rect rect2 = new Rect(0,0,300,500);

GUI.Box(rect2, "Rect2");

if(rect1.Contains(Event.current.mousePosition))
     Debug.Log("rect1");




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
Valik_FenkoДата: Вторник, 19 Января 2016, 14:22 | Сообщение # 28
почетный гость
Сейчас нет на сайте
Мне нид сделать чтоб зажатой на иконке клавиши миши происходило одно дейсвие ,а при нажатия на неё - другое.Я написал вот так но это не работает((

Код
  if(NewRect.Contains(Event.current.mousePosition))
      {
       if(Input.GetMouseButton(0))
       {
        GUI.Label(NewRect,"Работает");
        if(Input.GetMouseButtonDown(0))
        {
         //Дейтвие
        }
       }
      }
     }
allodsДата: Вторник, 19 Января 2016, 14:47 | Сообщение # 29
почти ветеран
Сейчас нет на сайте
Почему не сделать на UI намного проще красивей итп
Valik_FenkoДата: Вторник, 19 Января 2016, 14:52 | Сообщение # 30
почетный гость
Сейчас нет на сайте
Проще,красивей.Чем ?
Не по теме.


Сообщение отредактировал Valik_Fenko - Вторник, 19 Января 2016, 14:52
Valik_FenkoДата: Вторник, 19 Января 2016, 16:04 | Сообщение # 31
почетный гость
Сейчас нет на сайте
Я посотрел урок по созданию Gui инвентаря ,но ничерта не понял =(.Как сделать перетаскивание Gui.Button?
//

Так терь появился другой вопрос.У меня есть этот самый Gui.Box с иконкой предмета он такается по экрану,но как сделать чтоб он был поверх других боксов и кнопок?


Сообщение отредактировал Valik_Fenko - Вторник, 19 Января 2016, 16:41
zisXДата: Вторник, 19 Января 2016, 17:35 | Сообщение # 32
Neto Zis
Сейчас нет на сайте
Valik_Fenko, Читать справку, хватить плодить темы.

Valik_FenkoДата: Вторник, 19 Января 2016, 17:57 | Сообщение # 33
почетный гость
Сейчас нет на сайте
В справке я ниче не нашел
berilДата: Вторник, 19 Января 2016, 18:18 | Сообщение # 34
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Реально, хватит уже плодить темы с простыми вопросами задавай их в разделе Вопрос-Ответ или в своей теме с инвентарем("Проблема с инвентарем"), куда я уже обьеденил все твои темы. Все ответы на твои вопросы, как сказали выше , есть в справке.



Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
berilДата: Вторник, 19 Января 2016, 18:20 | Сообщение # 35
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
По поводу вопроса: элементы в OnGUI отображаются по порядку, что в коде ниже всего, то и будет отображаться поверх всего



Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг