danilaxxl danilaxxl

CollectableItemData.cs

[CreateMenuItem(fileName = "newItem", menuName = "Data/Items/Collectable", order = 51]

GoloGames GoloGames

vadya_ivan, рад, что вам игра показалась интересной : )

P.S. Кстати уже доступна бесплатная демо-версия в Steam

vadya_ivan vadya_ivan

Визуал, задумка, музыка , механики, все в цель

GoloGames GoloGames

Ato_Ome, спасибо за позитивные эмоции, будем стараться : )

Ato_Ome Ato_Ome

Потрясающий результат, все так четенько, плавненько)
То ли саунд, то ли плавность напомнили мне игрушку World of Goo, удачи вам в разработке и сил побольше дойти до релиза!)

Cute Fox Cute Fox

Graphics are a little cool, good HD content. But this game doesn't cause nary interest me.
However the game is well done.

GMSD3D GMSD3D

Почему действие после всех условий выполняется?
[step another object]

Zemlaynin Zemlaynin

Jusper, Везде, но наугад строить смысла нет. Нужно разведать сперва территорию на наличие ресурсов.

Jusper Jusper

Zemlaynin, а карьеры можно будет везде запихать?
Или под них "особые" зоны будут?

Zemlaynin Zemlaynin

Это так скажем тестовое строительство, а так да у города будет зона влияния которую нужно будет расширять.

Jusper Jusper

А ссылка есть?

Jusper Jusper

Я не оч понял из скриншота, как вообще работает стройка. У игрока будет как бы поле строительства?

split97 split97

в игру нужно добавить время песочные часы в инвентаре, пока бегаешь наберается усталость и ты очень тормозной мобильный враг просто убевает

split97 split97

в игру нужно добавить время песочные часы в инвентаре, пока бегаешь наберается усталость и ты очень тормозной мобильный враг просто убевает

ViktorJaguar ViktorJaguar

Почему я нигде не могу найти нормальный туториал, где покажут как экипировать предмет (например, меч) в определенную (выделенную под оружие) ячейку???

Логотип проекта Unity

Создаем окна - класс EditorWindow

Без окон в Unity, конечно, не обойтись - не все же вешается на игровые объекты. И как прекрасно, что не всё.
Окна представлены в Unity классом EditorWindow, однако один класс сочетает в себе огромное количество возможных вариантов.

Итак, уже чуть ли не традицией, публикую тело класса:

Editor: MyWindow.cs
using UnityEditor;

public class MyWindow : EditorWindow
{
    [MenuItem("Window/My Window")]
    public static void Open()
    {
        GetWindow<MyWindow>(true, "Window Title", true);
    }

    public void OnGUI()
    {
        
    }
}

Обязательное условие всего одно - пронаследоваться от класса EditorWindow.

Для рисования внутри класса нужно создать метод void OnGUI() в котором можно рисовать любым из GUI-классов.

В качестве варианта открытия окна я использовал метод с атрибутом [MenuItem(<Путь в меню>)].
Как несложно догадаться данный атрибут добавляет пункт в меню. Условия его использования - обязательно статический метод и обязательно без параметров.

Внутри функции можно увидеть один из вариантов вызова - GetWindow<MyWindow>(true, "Window Title", true).
Однако, способов вызвать окно немаленькое количество.

Вызвать как обычную вкладку

Создаем окна - класс EditorWindow — Unity — DevTribe: инди-игры, разработка, сообщество

Окно будет выглядеть как и большинство других окон в Unity, его можно будет подстраивать к краям экрана и тому подобное.

GetWindow<TWindow>();

Вызвать как окно утилит

Создаем окна - класс EditorWindow — Unity — DevTribe: инди-игры, разработка, сообщество

Окно - прямоугольное, самостоятельное, с кнопкой закрытия

GetWindow<TWindow>(true);

Вызвать как Aux

Тоже самое, что и окно утилит, но закрывается при любом щелчке вне окна.

var window = CreateInstance<TWindow>();
window.ShowAuxWindow(new Rect(), new Vector2());

Вызвать как Popup

Создаем окна - класс EditorWindow — Unity — DevTribe: инди-игры, разработка, сообщество

Окно не будет иметь рамки и его невозможно закрыть иначе, чем через команду Close() в коде.

var window = CreateInstance<TWindow>();
window.position = new Rect();
window.ShowPopup();

Вызвать как DropDown

Тоже самое, что и Popup, но закрывается при любом щелчке вне окна. Обычно используют, когда хотят сделать списки в других окнах, и прочие подобные вещи. Увы и ах - требует указания абсолютных позиций относительно экрана, так что придется попотеть, чтобы посчитать место появления.

var window = CreateInstance<TWindow>();
window.ShowAsDropDown(new Rect(), new Vector2());

Все что вам нужно сделать, в итоге - это выбрать тип окна, и начать рисовать что пожелаете в методе OnGUI()

Смотрите также:


Комментарии

Здесь еще никто не оставил комментарий

Справка