An open API service indexing awesome lists of open source software.

https://github.com/neoxider/neoxidertools

Ready-to-use Unity tools that integrate easily into your project. 150+ modules for fast game development without unnecessary complexity.
https://github.com/neoxider/neoxidertools

bonus extensions tools unity

Last synced: 4 months ago
JSON representation

Ready-to-use Unity tools that integrate easily into your project. 150+ modules for fast game development without unnecessary complexity.

Awesome Lists containing this project

README

          

# Neoxider — коллекция мощных инструментов для Unity

> **RU:** Готовые решения для Unity, которые легко интегрируются в ваш проект. Более 150 модулей для быстрой разработки игр без лишних сложностей.
>
> **EN:** Ready-to-use Unity tools that integrate easily into your project. 150+ modules for fast game development without unnecessary complexity.

**Neoxider** — экосистема готовых инструментов для Unity, созданная разработчиками для разработчиков. Легко настраивается через Inspector, не требует глубокого погружения в код, но остаётся полностью прозрачной и расширяемой. Идеально подходит для прототипирования и продакшн-проектов.

**Neoxider** is an ecosystem of ready-to-use Unity tools, built by developers for developers. Easy to configure through Inspector, no deep code diving required, yet fully transparent and extensible. Perfect for prototyping and production projects.

📖 **[Полная документация →](Assets/Neoxider/Docs/README.md)** | 📌 **[PROJECT_SUMMARY →](Assets/Neoxider/PROJECT_SUMMARY.md)** | 📝 **[Changelog →](Assets/Neoxider/CHANGELOG.md)**

---

## 📑 Содержание

- [No-Code условия — NeoCondition](#no-code-условия--neocondition)
- [Чем примечателен Neoxider](#чем-примечателен-neoxider)
- [Demo Scenes](#demo-scenes)
- [Demo Games](#demo-games)
- [Быстрый старт](#быстрый-старт)
- [Таблица модулей](#таблица-модулей)
- [Condition](#condition--no-code-условия) · [Tools](#tools--инструменты) · [UI](#ui--интерфейс) · [Bonus](#bonus--бонусные-системы) · [Shop](#shop--магазин) · [Save](#save--сохранения) · [Cards](#cards--карточные-игры) · [StateMachine](#statemachine--машина-состояний) · [Animations](#animations--анимации) · [Audio](#audio--звук) · [Extensions](#extensions--расширения-c) · [Editor](#editor--инструменты-редактора) · [Level](#level--уровни) · [Parallax](#parallax) · [GridSystem](#gridsystem) · [PropertyAttribute](#propertyattribute)
- [Топовые модули](#топовые-модули)
- [Установка через UPM](#установка-через-upm) — [Зависимости](#зависимости), [Основной пакет](#основной-пакет), [Ручная установка](#ручная-установка)
- [Установка Demo Scenes и NeoxiderPages](#установка-demo-scenes-и-neoxiderpages)
- [FAQ](#faq)
- [Поддержка и вклад](#поддержка-и-вклад)

---

## No-Code условия — NeoCondition

Проектируйте сложную игровую логику **без единой строчки кода**. Компонент `NeoCondition` позволяет прямо в Inspector:

- **Проверять любые данные** — HP, очки, состояние объекта, любое public поле или свойство любого компонента
- **Комбинировать условия** — AND/OR логика, инверсия (NOT), несколько проверок в одном компоненте
- **Реагировать на изменения** — события `OnTrue`, `OnFalse`, `OnResult` подключаются к любым объектам через UnityEvent
- **Проверять свойства GameObject** — `activeSelf`, `tag`, `layer` и другие — без дополнительных компонентов
- **Работать с будущими объектами** — находите объекты по имени, настраивайте условия для префабов до их спавна через Prefab Preview
- **Выбирать режим проверки** — Interval, EveryFrame, Manual; фильтр Only On Change исключает лишние срабатывания

> **Пример:** «Когда `Health.Hp <= 0` — показать Game Over» — одна настройка в Inspector, ноль строк в коде.

📖 [Документация NeoCondition →](Assets/Neoxider/Docs/Condition/NeoCondition.md)

---

## Чем примечателен Neoxider

- **Production-ready** — каждая подсистема поставляется с примерами, документацией и продуманными интеграциями
- **No-Code там, где нужно** — большинство компонентов настраиваются через Inspector и UnityEvent, но остаются расширяемыми
- **Гибридный подход** — No-Code + Code для максимальной гибкости
- **Модульность** — изоляция через Assembly Definition Files, импортируйте только нужные модули
- **Расширяемость** — наследование, интерфейсы, публичный API у каждого компонента
- **Автоматическое сохранение** — мощный модуль атрибутов сохранения, многие скрипты хранят данные автоматически
- **Документация внутри** — у каждого модуля есть собственный README в `Assets/Neoxider/Docs/`

> Обратите особое внимание модулю **Extensions**, если любите писать код — 300+ методов-расширений для C# и Unity API.
> Множество скриптов поддерживают работу через код: Singleton, ChanceSystem, Timer и другие.

---

image

## Demo Scenes
![image](https://github.com/user-attachments/assets/90c98f0c-aae2-4837-81ed-b18a10b65ed5)

## Demo Games
2025-11-02_22-31-20
image
image

---

## Быстрый старт

1. **Установите зависимости** — Unity 2022+ (рекомендуется)
2. **Импортируйте** папку `Assets/Neoxider` в проект (или через [UPM](#установка-через-upm))
3. **Добавьте системный префаб** `Prefabs/--System--.prefab` в сцену — менеджеры событий и UI
4. **Перетаскивайте компоненты** из Inspector — большинство работает без кода через UnityEvent
5. **Изучите документацию** — откройте README в `Docs/` для нужного модуля

---

## Таблица модулей

| Модуль | Описание |
|--------|----------|
| [**Condition**](#condition--no-code-условия) | No-Code условия: проверка полей, AND/OR логика, события |
| [**Tools**](#tools--инструменты) | 150+ компонентов: движение, физика, спавнеры, таймеры, ввод |
| [**UI**](#ui--интерфейс) | UI-панели, анимации кнопок, переключатели |
| [**Bonus**](#bonus--бонусные-системы) | Слоты, колесо фортуны, коллекции, награды по времени |
| [**Shop**](#shop--магазин) | Магазин, валюта, покупки |
| [**Save**](#save--сохранения) | PlayerPrefs, JSON-файлы, атрибут `[SaveField]` |
| [**Cards**](#cards--карточные-игры) | MVP-архитектура, покер, "Пьяница" |
| [**StateMachine**](#statemachine--машина-состояний) | Код + No-Code, визуальный редактор |
| [**Animations**](#animations--анимации) | Float, Color, Vector3 анимации |
| [**Audio**](#audio--звук) | AudioManager, микшер, random music |
| [**Extensions**](#extensions--расширения-c) | 300+ extension-методов |
| [**Editor**](#editor--инструменты-редактора) | Окна настроек, поиск missing scripts, авто-билд |
| [**Level**](#level--уровни) | Менеджер уровней, карта |
| [**Parallax**](#parallax) | Параллакс-слои |
| [**GridSystem**](#gridsystem) | Генерация сеток |
| [**PropertyAttribute**](#propertyattribute) | `[Button]`, `[GUIColor]`, inject-атрибуты |

---

## Модули

### Condition — No-Code условия

- **NeoCondition** — проверка любых полей/свойств компонентов и GameObject'ов через Inspector
- **AND/OR логика**, инверсия (NOT), несколько условий в одном компоненте
- **Source Mode** — чтение данных из компонентов или свойств самого GameObject (`activeSelf`, `tag`, `layer`)
- **Find By Name** — поиск объектов в сцене по имени с кешированием
- **Wait For Object + Prefab Preview** — настройка условий для префабов до спавна
- События: `OnTrue`, `OnFalse`, `OnResult(bool)`, `OnInvertedResult(bool)`

📖 [Документация →](Assets/Neoxider/Docs/Condition/NeoCondition.md)

### Tools — Инструменты

Самая большая категория — базовые "кирпичики" для построения игр:

| Подмодуль | Компоненты |
|-----------|-----------|
| **Components** | Counter, Health, ScoreManager, DialogueManager, Loot, TypewriterEffect, AttackSystem |
| **Input** | SwipeController, MouseInputManager, MouseEffect, MultiKeyEventTrigger |
| **Movement** | MovementToolkit, Follow, CameraConstraint, DistanceChecker |
| **Physics** | ExplosiveForce, ImpulseZone, MagneticField |
| **Spawner** | ObjectPool, Spawner, SimpleSpawner |
| **Managers** | Singleton, GM, EM, Bootstrap |
| **Random** | ChanceManager, ChanceSystemBehaviour |
| **Time** | Timer, TimerObject |
| **Debug** | ErrorLogger, FPS |
| **Draw** | Drawer (линии, коллайдеры) |
| **FakeLeaderboard** | Leaderboard, LeaderboardItem |
| **InteractableObject** | InteractiveObject, PhysicsEvents2D/3D |

📖 [Документация →](Assets/Neoxider/Docs/Tools/README.md) | [Physics →](Assets/Neoxider/Docs/Tools/Physics/README.md)

### UI — Интерфейс

- **UI** — менеджер UI-панелей (страниц)
- **ButtonScale / ButtonShake** — анимации кнопок
- **AnimationFly** — анимация "летящих" элементов
- **VisualToggle** — универсальный переключатель визуальных состояний
- **VariantView** — управление визуальными состояниями

📖 [Документация →](Assets/Neoxider/Docs/UI/README.md)

### Bonus — Бонусные системы

- **Slot** — слот-машина
- **WheelFortune** — колесо фортуны
- **Collection** — система коллекций
- **TimeReward** — награды по времени
- **LineRoulett** — линейная рулетка

📖 [Документация →](Assets/Neoxider/Docs/Bonus/README.md)

### Shop — Магазин

- **Shop** — центральный контроллер
- **ShopItem** — визуальное представление товара
- **Money** — система валюты
- **ButtonPrice** — кнопка с ценой
- **TextMoney** — UI отображение денег

📖 [Документация →](Assets/Neoxider/Docs/Shop/README.md)

### Save — Сохранения

- **SaveProvider** — статический API (как PlayerPrefs)
- **ISaveProvider** — интерфейс для кастомных провайдеров
- **SaveManager** — ядро системы
- **GlobalSave** — глобальное хранилище
- **SaveableBehaviour** — базовый класс для сохраняемых компонентов

📖 [Документация →](Assets/Neoxider/Docs/Save/README.md)

### Cards — Карточные игры

- **MVP архитектура**: Model, View, Presenter
- **CardComponent, DeckComponent, HandComponent, BoardComponent**
- **Poker** подмодуль с комбинациями
- **DrunkardGame** — готовая игра "Пьяница"

📖 [Документация →](Assets/Neoxider/Docs/Cards/README.md)

### StateMachine — Машина состояний

- Код-реализация через `IState` интерфейс
- No-Code конфигурация через ScriptableObject
- Система предикатов для сложных условий переходов
- Визуальный редактор в Inspector

📖 [Документация →](Assets/Neoxider/Docs/StateMachine/README.md)

### Animations — Анимации

- **FloatAnimator** — анимация float значений
- **ColorAnimator** — анимация цветов
- **Vector3Animator** — анимация векторов

📖 [Документация →](Assets/Neoxider/Docs/Animations/README.md)

### Audio — Звук

- **AMSettings** — настройки аудио менеджера
- **RandomMusicController** — контроллер случайной музыки
- **SettingMixer** — управление микшером
- **AudioSimple** — упрощенная система воспроизведения

📖 [Документация →](Assets/Neoxider/Docs/Audio/README.md)

### Extensions — Расширения C#

300+ методов-расширений:
- **Transform** — позиция, ротация, масштаб, иерархия
- **Collections** — ForEach, Shuffle, GetRandom, FindDuplicates
- **String** — CamelCase, Truncate, Bold, Rainbow, Gradient
- **Random** — Chance, WeightedIndex, RandomColor
- **Coroutine** — Delay, WaitUntil, RepeatUntil
- **Color, Audio, Screen, Layout** и многое другое

📖 [Документация →](Assets/Neoxider/Docs/Extensions/README.md)

### Editor — Инструменты редактора

- **NeoxiderSettingsWindow** — окно глобальных настроек
- **FindAndRemoveMissingScripts** — поиск потерянных скриптов
- **TextureMaxSizeChanger** — массовое изменение текстур
- **SaveProjectZip** — резервные копии проекта
- **AutoBuildName** — автоматическое именование билдов
- **NeoUpdateChecker** — автопроверка обновлений через GitHub

📖 [Документация →](Assets/Neoxider/Docs/Editor/README.md)

### Level — Уровни

- **LevelManager** — менеджер уровней
- **LevelButton** — кнопка уровня
- **Map** — карта уровней

### Parallax

- **ParallaxLayer** — параллакс с предпросмотром, зазорами, рандомизацией

### GridSystem

- **FieldGenerator** — генератор поля
- **FieldCell** — ячейка поля
- **FieldSpawner** — спавн объектов на поле

### PropertyAttribute

- `[Button]` — кнопки в Inspector из методов
- `[GUIColor]` — цветовое оформление полей
- `[RequireInterface]` — валидация интерфейсов
- Inject-атрибуты: `[GetComponent]`, `[FindInScene]`, `[LoadFromResources]`

📖 [Документация →](Assets/Neoxider/Docs/PropertyAttribute/README.md)

---

## Топовые модули

- **NeoCondition** — No-Code условия: проверяйте любые данные и стройте логику целиком в Inspector
- **Counter** — универсальный счётчик с арифметикой, событиями и автосохранением
- **SpineController** — фасад для Spine с UnityEvent-обёртками и автозаполнением
- **ParallaxLayer** — параллакс с предпросмотром и автоматической переработкой тайлов
- **DialogueManager** — диалоги с персонажами, портретами и событиями на каждой реплике
- **ChanceManager** — декларативная система вероятностей для лута и рулеток
- **ObjectPool / Spawner** — расширяемый пул с волнами и случайным выбором префабов
- **MovementToolkit** — контроллеры движения (клавиатура, мышь, 2D/3D, follow-камеры)
- **Physics** — ExplosiveForce, ImpulseZone, MagneticField с кастомными режимами
- **Timer / TimerObject** — таймеры с паузой, повтором и событиями прогресса

---

## Установка через UPM

### Зависимости

| Пакет | Способ установки |
|-------|-----------------|
| **TextMeshPro** | Автоматически через UPM |
| **AI Navigation** | Автоматически через UPM |
| **UniTask** | Git URL: `https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask` |
| **DOTween** (опционально) | [Asset Store](https://assetstore.unity.com/packages/tools/animation/dotween-hotween-v2-27676) |
| **Odin Inspector** (опционально) | Asset Store — расширенный инспектор, все компоненты работают и без него |

### Основной пакет

```
https://github.com/NeoXider/NeoxiderTools.git?path=Assets/Neoxider
```

Window -> Package Manager -> **+** -> Add package from git URL.

Конкретная версия (тег `v5.5.2`):

```
https://github.com/NeoXider/NeoxiderTools.git?path=Assets/Neoxider#v5.5.2
```

Ветка `demo` (новые функции):

```
https://github.com/NeoXider/NeoxiderTools.git?path=Assets/Neoxider#demo
```

### Ручная установка

Скопируйте папку `Assets/Neoxider` в ваш Unity-проект.

---

## Установка Demo Scenes и NeoxiderPages

После установки основного пакета через UPM, дополнительные модули доступны через **Package Manager**:

1. **Window -> Package Manager** -> найти **Neoxider Tools** (In Project)
2. В правой панели внизу — секция **Samples**
3. Нажать **Import** рядом с нужным модулем:
- **Demo Scenes** — демо-сцены и примеры использования
- **NeoxiderPages** — модуль страниц и экранов (PageManager, UIPage, UIKit)

Файлы копируются в `Assets/Samples/Neoxider Tools//`.

> Альтернативно: скачайте `.unitypackage` из [Releases](https://github.com/NeoXider/NeoxiderTools/releases)

**Быстрый вызов страниц:**

```csharp
UIKit.ShowPage("PageEnd");
// или
PM.I.ChangePageByName("PageEnd");
```

`PageSubscriber` автоматически ищет `PageId` по стандартным именам: `PageGame`, `PageWin`, `PageLose`, `PageEnd` (настраивается в Inspector).

---

## FAQ

**Можно использовать выборочно?** Да, импортируйте только нужные папки — зависимости указаны в документации каждого модуля.

**Есть примеры сцен?** Да, в папке `Demo` — минимальные сцены для каждого крупного модуля.

**Работает с 3D?** Большинство систем — да. Исключение: чисто 2D-решения вроде `ParallaxLayer`.

---

## Поддержка и вклад

Neoxider активно развивается. Нашли баг или хотите предложить модуль — открывайте issue/PR. Все изменения документируются в [Changelog](Assets/Neoxider/CHANGELOG.md).

Удачи в разработке!