Skip to content

(RU) HelperFramework

Dark-A-l edited this page Nov 8, 2019 · 10 revisions

Страница в разработке!

static partial class HelperFramework

Namespace: Pixeye.Framework.HelperFramework

Версия фреймворка: 2019.9.21
Последнее обновление статьи: [2019.9.23]

Описание

HelperFramework - вспомогательный класс фреймворка. В нем содержится множество методов расширений, которые облегчат вашу жизнь! :D Они могут быть разбросаны по разным файлам, поэтому, возможно, Вы встретите их и в других статьях.

Методы расширения первым параметром содержит this. Для более подробной информации о методах расширения, обратитесь к справочнику языка C#.


Файл HelperFramework.cs
Последнее изменение файла: [2019.02.24], [2019.09.23]

Внимание! данный файл имеет устаревшие методы

ACTORS

Table 1. ACTORS
Метод Описание
List<int> FindValidNodes(this List<PoolNode> list, int id)

…​

int FindValidNode(this List<PoolNode> list, int id, int pool)

…​

int FindInstanceID<T>(this List<T> list, T target) where T : UnityEngine.Object

…​

void Destroy(this Transform tr)

…​

ARRAYS

Table 2. ARRAYS
Тип Метод Описание

T[,]

ResizeArray<T>(this T[,] original, in int rows, in int cols)

…​

void

InsertCheck(this int[] a, int id, ref int length, ref int indexLast)

…​

void

InsertCheck(this int[] a, int id, ref int length, ref int indexLast)

…​

void

Insert<T>(ref T[] a, T val, int length, int indexLast)

…​

void

Insert(this int[] a, ref int length, ref int idLast, ref int indexLast, int id)

…​

void

Add<T>(this T[] a, T element, ref int length) where T : class

…​

void

Remove<T>(this T[] a, T element, ref int length) where T : class

…​

void

InsertionSort(int[] array)

…​

void

Quicksort(int[] array, int left, int right)

…​

void

Swap(int[] array, int left, int right)

…​

int

SearchLinear(this int[] array, int value)

…​

int

SearchBinary(this int[] array, int rightIndex, int value, int prev)

…​

RANDOM

Table 3. RANDOM
Тип Метод Описание

int

Select(this float[] vals)

…​

float

Between(this Vector2 v)

…​

float

Or(this float arg0, float arg1, float chance = 0.5f)

…​

int

Or(this int arg0, int arg1, float chance = 0.5f)

…​

int

Between(this object o, int a, int b, float chance = 0.5f)

…​

float

Between(this object o, float a, float b, float chance = 0.5f)

…​

T

RandomExcept<T>(this T[] list, T exceptVal)

…​

T

RandomExcept<T>(this List<T> list, T exceptVal)

…​

ref T

RandomRef<T>(this T[] vals)

Возвращает случайный элемент массива

T

Random<T>(this List<T> list, T[] itemsToExclude)

…​

T

Random<T>(this List<T> list)

…​

T

Select<T>(this List<T> vals) where T : IRandom

…​

T

Select<T>(this T[] vals) where T : IRandom

…​

T

Select<T>(this T[] vals, out int index) where T : IRandom

…​

T

Random<T>(this T[] vals)

…​

T

RandomDequeue<T>(this List<T> vals)

…​

TRANSFORMS

Table 4. TRANSFORMS
Тип Метод Описание

string

GetGameObjectPath(Transform transform)

…​

T

AddGet<T>(this GameObject co) where T : Component

…​

T

AddGet<T>(this Transform co) where T : Component

…​

T

Find<T>(this GameObject go, string path)

…​

Transform

FindDeep(this Transform obj, string id)

…​

List<T>

GetAll<T>(this Transform obj)

…​

T

RandomExcept<T>(this T[] list, T exceptVal)

…​

T

RandomExcept<T>(this List<T> list, T exceptVal)

…​

T

Random<T>(this List<T> list, T[] itemsToExclude)

…​

T

Random<T>(this List<T> list)

…​

T

Select<T>(this List<T> vals) where T : IRandom

…​

T

Select<T>(this T[] vals) where T : IRandom

…​

T

Select<T>(this T[] vals, out int index) where T : IRandom

…​

T

Random<T>(this T[] vals)

…​

T

RandomDequeue<T>(this List<T> vals)

…​


Файл Obj.cs
Последнее изменение файла: [2019.09.17]

Obj

Table 5. Obj
Тип Метод Описание

void

Release(this GameObject o, int poolID = 0)

Уничтожает объект. Если он в пуле, то деактивирует.

T

Get<T>(this GameObject obj, string path)

Возвращает компонент по пути path.
Альтернатива GetComponent

Get<T>(this Transform tr, string path)
Get<T>(this Behaviour obj, string path)

Файл Math.cs
Последнее изменение файла: [2019.09.19]

Math

Table 6. Math
Метод Описание
bool Every(this float step, float time);
bool Every(this int step, float time);

Возвращает true, если time кратно step

bool PlusCheck(ref this float arg0_pl, float val_pl, float clamp_pl = 1f);
bool PlusCheck(ref this int arg0_pl, int val_pl, int clamp_pl = 1);

clamp_pl - верхний порог результата.
В arg0_pl записывается результат сложения с val_pl.
Возвращает true, если результат суммы >= clamp_pl.

bool MinusCheck(ref this float arg0_mn, float val_mn, float clamp_mn = 0f);
bool MinusCheck(ref this int arg0_mn, int val_mn, int clamp_mn = 0);

clamp_mn - нижний порог результата.
В arg0_mn записывается результат вычитания val_pl.
Возвращает true, если результат вычитания ⇐ clamp_mn.

void Plus(ref this float arg0_pl, float val_pl, float clamp_pl = 1f);
void Plus(ref this int arg0_pl, int val_pl, int clamp_pl = 1);

clamp_pl - верхний порог результата.
В arg0_pl записывается результат сложения с val_pl.

void Minus(ref this float arg0_mn, float val_mn, float clamp_mn = 0f);
void Minus(ref this int arg0_mn, int val_mn, int clamp_mn = 0);

clamp_mn - нижний порог результата.
В arg0_mn записывается результат вычитания val_pl.

Bits

Table 7. Bits
Тип Метод Описание

void

BitOn(this ref int bitToTurnOn, int value)

В bitToTurnOn записывает результат побитового сложения с value

void

BitOff(this ref int bitToTurnOff, int value)

В bitToTurnOn записывает результат побитового вычитания value

void

BitFlip(this ref int bitToFlip, int value)

Инвертирует bitToFlip

bool

BitCheck(this ref int bits, int value)

Побитовое сравнение bits с value