Elin Decompiled Documentation EA 23.306 Nightly
Loading...
Searching...
No Matches
ClassExtension Class Reference

Static Public Member Functions

static string lang (this string s)
 
static string langPlural (this string s, int i)
 
static string lang (this string s, string ref1, string ref2=null, string ref3=null, string ref4=null, string ref5=null)
 
static string[] langList (this string s)
 
static string langGame (this string s)
 
static string langGame (this string s, string ref1, string ref2=null, string ref3=null, string ref4=null)
 
static string Parentheses (this string str)
 
static string Bracket (this string str, int type=0)
 
static byte[] ToBytes (this BitArray bits)
 
static bool GetBit (this byte pByte, int bitNo)
 
static byte SetBit (this byte pByte, int bitNo, bool value)
 
static int ToInt3 (this float a)
 
static float FromInt3 (this int a)
 
static int ToInt2 (this float a)
 
static float FromInt2 (this int a)
 
static int Minimum (this int i)
 
static bool IsNull (this object o)
 
static bool IsOn (this int data, int digit)
 
static T ToEnum< T > (this int value)
 
static T ToEnum< T > (this long value)
 
static T ToEnum< T > (this string value, bool ignoreCase=true)
 
static Type ToType (this string value)
 
static T NextEnum< T > (this T src)
 
static T PrevEnum< T > (this T src)
 
static bool Within (this int v, int v2, int range)
 
static bool Within (this byte v, byte v2, byte range)
 
static int Clamp (this int v, int min, int max, bool loop=false)
 
static int ClampMin (this int v, int min)
 
static int ClampMax (this int v, int max)
 
static T ToField< T > (this string s, object o)
 
static bool HasField< T > (this object o, string name)
 
static T GetField< T > (this object o, string name)
 
static void SetField< T > (this object o, string name, T value)
 
static T GetProperty< T > (this object o, string name)
 
static void SetProperty< T > (this object o, string name, T value)
 
static void Sort< T > (this IList< T > list, Comparison< T > comparison)
 
static TValue TryGet< TValue > (this IList< TValue > array, int index, int defIndex=-1)
 
static TValue TryGet< TValue > (this IList< TValue > array, int index, bool returnNull)
 
static bool IsEmpty (this Array array)
 
static int IndexOf (this IList< Component > list, GameObject go)
 
static TValue Move< TValue > (this IList< TValue > list, TValue target, int a)
 
static IList< TValue > Copy< TValue > (this IList< TValue > list)
 
static void Each< TValue > (this IList< TValue > list, Action< TValue > action)
 
static IList< TValue > Shuffle< TValue > (this IList< TValue > list)
 
static TValue TryGetValue< TKey, TValue > (this IDictionary< TKey, TValue > source, TKey key, TValue fallback=default(TValue))
 
static TValue TryGetValue< TKey, TValue > (this IDictionary< TKey, TValue > source, TKey key, TKey key_fallback)
 
static TValue GetOrCreate< TKey, TValue > (this IDictionary< TKey, TValue > dict, TKey key, Func< TValue > func=null)
 
static TKey[] CopyKeys< TKey, TValue > (this IDictionary< TKey, TValue > dict)
 
static TValue[] CopyValues< TKey, TValue > (this IDictionary< TKey, TValue > dict)
 
static T RandomItem< T > (this IEnumerable< T > ie)
 
static TValue RandomItem< TKey, TValue > (this IDictionary< TKey, TValue > source)
 
static TValue RandomItem< TValue > (this IList< TValue > source)
 
static TValue RandomItem< TValue > (this IList< TValue > source, TValue exclude)
 
static TValue RandomItem< TValue > (this IList< TValue > source, int exclude)
 
static TValue RandomItem< TValue > (this IList< TValue > source, Func< TValue, bool > funcValid, TValue defaultValue=default(TValue))
 
static TValue RandomItemWeighted< TValue > (this IList< TValue > source, Func< TValue, float > getWeight)
 
static TValue Remainder< TValue > (this IList< TValue > source, int divider)
 
static TValue FirstItem< TKey, TValue > (this IDictionary< TKey, TValue > source)
 
static TValue LastItem< TValue > (this IList< TValue > source)
 
static TValue NextItem< TValue > (this IList< TValue > source, ref int index)
 
static int NextIndex< TValue > (this IList< TValue > source, TValue val)
 
static TValue NextItem< TValue > (this IList< TValue > source, TValue val)
 
static TValue PrevItem< TValue > (this IList< TValue > source, TValue val)
 
static TValue Clamp< TValue > (this IList< TValue > source, int i)
 
static List< T > GetList< T > (this IDictionary source)
 
static void ToDictionary< T > (this IList< UPair< T > > list, ref Dictionary< string, T > dic)
 
static T FindMax< T > (this List< T > list, Func< T, int > func)
 
static void Set< T1, T2 > (this Dictionary< T1, T2 > dic, Dictionary< T1, T2 > from)
 
static string[] SplitByNewline (this string text)
 
static string RemoveNewline (this string text)
 
static string RemoveAllTags (this string text)
 
static int Calc (this string str, int power=0, int ele=0, int p2=0)
 
static int ToInt< T > (this string str)
 
static int ToInt (this string str, Type type)
 
static int ToInt (this string str)
 
static long ToLong (this string str)
 
static float ToFloat (this string str)
 
static string StripLastPun (this string str)
 
static string StripPun (this string str, bool stripComma, bool insertSpaceForComma=false)
 
static string Repeat (this string str, int count)
 
static string StripBrackets (this string str)
 
static string TryAddExtension (this string s, string ext)
 
static bool IsEmpty (this string str)
 
static string IsEmpty (this string str, string defaultStr)
 
static string TrimNewLines (this string text)
 
static int[] SplitToInts (this string str, char separator)
 
static string[] SplitNewline (this string str)
 
static bool Contains (this string[] strs, string id)
 
static string Evalute (this string[] array, float val)
 
static string ToShortNumber (this int a)
 
static string ToFormat (this int a)
 
static string ToFormat (this long a)
 
static string ToText (this int a, bool skipIfZero=true)
 
static string TagColor (this string s, Color c, string txt)
 
static string TagColor (this string s, Color c)
 
static string TagSize (this string s, string txt, int size)
 
static string TagSize (this string s, int size)
 
static bool HasTag (this string s, string id, char splitter='/')
 
static string SetTag (this string s, string id, bool enable, char splitter='/')
 
static string AddTag (this string s, string id, char splitter='/')
 
static string RemoveTag (this string s, string id, char splitter='/')
 
static string GetFullFileNameWithoutExtension (this FileInfo fileInfo)
 
static string GetFullFileNameWithoutExtension (this string path)
 
static string Pluralize (string s)
 
static string AddArticle (this string s)
 
static string AddArticle (this string s, int num, ArticleStyle style=ArticleStyle.Default, string replace=null)
 
static string ToTitleCase (this string s, bool wholeText=false)
 
static void LoopTail< T > (this List< T > list, bool vertical=false)
 
static void SetNavigation (this Component a, Component b, bool vertical=false)
 
static void LoopSelectable (this List< Selectable > sels, bool vertical=true, bool horizonal=true, bool asGroup=true)
 
static void LoopSelectable (this Transform l, bool vertical=true, bool horizonal=true, bool asGroup=true)
 
static Color ToColor (this string s)
 
static void SetAlpha (this Image c, float a)
 
static void SetAlpha (this RawImage c, float a)
 
static Color SetAlpha (this Color c, float a)
 
static Color Multiply (this Color c, float mtp, float add)
 
static string Tag (this Color c)
 
static string ToHex (this Color c)
 
static void SetOnClick (this Button b, Action action)
 
static void SetListener (this Button.ButtonClickedEvent e, Action action)
 
static void SetAlpha (this Text text, float aloha=1f)
 
static void SetSlider (this Slider slider, float value, Func< float, string > action, bool notify)
 
static void SetSlider (this Slider slider, float value, Func< float, string > action, int min=-1, int max=-1, bool notify=true)
 
static T GetOrCreate< T > (this Component t)
 
static RectTransform Rect (this Component c)
 
static void CopyRect (this RectTransform r, RectTransform t)
 
static void ToggleActive (this Component c)
 
static void SetActive (this Component c, bool enable)
 
static void SetActive (this Component c, bool enable, Action< bool > onChangeState)
 
static Selectable GetSelectable (this GameObject go)
 
static void SetLayerRecursively (this GameObject obj, int layer)
 
static bool IsInteractable (this GameObject obj)
 
static bool IsChildOf (this GameObject c, GameObject root)
 
static bool IsPrefab (this Component c)
 
static T CreateMold< T > (this Component c, string name=null)
 
static Transform Find (this Component c, string name=null)
 
static T Find< T > (this Component c, string name=null, bool recursive=false)
 
static GameObject FindTagInParents (this Component c, string tag, bool includeInactive=true)
 
static T GetComponentInChildrenExcludSelf< T > (this Transform c)
 
static List< T > GetComponentsInDirectChildren< T > (this Transform comp, bool includeInactive=true)
 
static List< T > GetComponentsInDirectChildren< T > (this Component comp, bool includeInactive=true)
 
static T GetComponentInDirectChildren< T > (this Component comp)
 
static void DestroyChildren (this Component component, bool destroyInactive=false, bool ignoreDestroy=true)
 
static bool IsMouseOver (this RectTransform r, Camera cam)
 
static void RebuildLayout (this Component c, bool recursive=false)
 
static void RebuildLayoutTo< T > (this Component c)
 
static void RebuildLayoutTo (this Component c, Component target)
 
static void SetRect (this RectTransform r, float x, float y, float w, float h, float pivotX, float pivotY, float minX, float minY, float maxX, float maxY)
 
static void SetPivot (this RectTransform r, float x, float y)
 
static void SetAnchor (this RectTransform r, float minX, float minY, float maxX, float maxY)
 
static void _SetAnchor (this RectTransform _rect, RectPosition anchor)
 
static void SetAnchor (this RectTransform _rect, RectPosition anchor=RectPosition.Auto)
 
static RectPosition GetAnchor (this RectTransform _rect)
 
static Transform GetLastChild (this Transform trans)
 
static Vector2 ToVector2 (this Vector3 self)
 
static void SetScale (this SpriteRenderer renderer, float size)
 
static void LookAt2D (this Transform self, Transform target, Vector2 forward)
 
static void LookAt2D (this Transform self, Vector3 target, Vector2 forward)
 
static float Distance (this Transform t, Vector2 pos)
 
static Vector3 Plus (this Vector3 v, Vector2 v2)
 
static Vector3 SetZ (this Vector3 v, float a)
 
static Vector3 SetY (this Vector3 v, float a)
 
static Vector3 PlusX (this Vector3 v, float a)
 
static Vector3 PlusY (this Vector3 v, float a)
 
static Vector3 PlusZ (this Vector3 v, float a)
 
static void SetPosition (this Transform transform, float x, float y, float z)
 
static void SetPositionX (this Transform transform, float x)
 
static void SetPositionY (this Transform transform, float y)
 
static void SetPositionZ (this Transform transform, float z)
 
static void AddPosition (this Transform transform, float x, float y, float z)
 
static void AddPositionX (this Transform transform, float x)
 
static void AddPositionY (this Transform transform, float y)
 
static void AddPositionZ (this Transform transform, float z)
 
static void SetLocalPosition (this Transform transform, float x, float y, float z)
 
static void SetLocalPositionX (this Transform transform, float x)
 
static void SetLocalPositionY (this Transform transform, float y)
 
static void SetLocalPositionZ (this Transform transform, float z)
 
static void AddLocalPosition (this Transform transform, float x, float y, float z)
 
static void AddLocalPositionX (this Transform transform, float x)
 
static void AddLocalPositionY (this Transform transform, float y)
 
static void AddLocalPositionZ (this Transform transform, float z)
 
static void SetLocalScale (this Transform transform, float x, float y, float z)
 
static void SetLocalScaleX (this Transform transform, float x)
 
static void SetLocalScaleY (this Transform transform, float y)
 
static void SetLocalScaleZ (this Transform transform, float z)
 
static void AddLocalScale (this Transform transform, float x, float y, float z)
 
static void AddLocalScaleX (this Transform transform, float x)
 
static void AddLocalScaleY (this Transform transform, float y)
 
static void AddLocalScaleZ (this Transform transform, float z)
 
static void SetEulerAngles (this Transform transform, float x, float y, float z)
 
static void SetEulerAnglesX (this Transform transform, float x)
 
static void SetEulerAnglesY (this Transform transform, float y)
 
static void SetEulerAnglesZ (this Transform transform, float z)
 
static void AddEulerAngles (this Transform transform, float x, float y, float z)
 
static void AddEulerAnglesX (this Transform transform, float x)
 
static void AddEulerAnglesY (this Transform transform, float y)
 
static void AddEulerAnglesZ (this Transform transform, float z)
 
static void SetLocalEulerAngles (this Transform transform, float x, float y, float z)
 
static void SetLocalEulerAnglesX (this Transform transform, float x)
 
static void SetLocalEulerAnglesY (this Transform transform, float y)
 
static void SetLocalEulerAnglesZ (this Transform transform, float z)
 
static void AddLocalEulerAngles (this Transform transform, float x, float y, float z)
 
static void AddLocalEulerAnglesX (this Transform transform, float x)
 
static void AddLocalEulerAnglesY (this Transform transform, float y)
 
static void AddLocalEulerAnglesZ (this Transform transform, float z)
 
static void ToggleKeyword (this Material m, string id, bool enable)
 
static void ForeachReverse< T > (this IList< T > items, Action< T > action)
 
static void ForeachReverse< T > (this IList< T > items, Func< T, bool > action)
 
static float ClampAngle (this float angle)
 
static Vector3 Random (this Vector3 v)
 
static T Instantiate< T > (this T s)
 
static int GetRuntimeEventCount (this UnityEventBase unityEvent)
 

Static Public Attributes

static IPluralize pluralizer = new Pluralizer()
 

Static Private Member Functions

static float GetForwardDiffPoint (Vector2 forward)
 

Static Private Attributes

static Vector3 vector3
 

Detailed Description

Definition at line 14 of file ClassExtension.cs.

Member Function Documentation

◆ _SetAnchor()

static void ClassExtension._SetAnchor ( this RectTransform  _rect,
RectPosition  anchor 
)
inlinestatic

Definition at line 1572 of file ClassExtension.cs.

1573 {
1574 switch (anchor)
1575 {
1576 case RectPosition.TopCenter:
1577 _rect.SetAnchor(0.5f, 1f, 0.5f, 1f);
1578 break;
1579 case RectPosition.BottomCenter:
1580 _rect.SetAnchor(0.5f, 0f, 0.5f, 0f);
1581 break;
1582 case RectPosition.TopLEFT:
1583 _rect.SetAnchor(0f, 1f, 0f, 1f);
1584 break;
1585 case RectPosition.TopRIGHT:
1586 _rect.SetAnchor(1f, 1f, 1f, 1f);
1587 break;
1588 case RectPosition.BottomLEFT:
1589 _rect.SetAnchor(0f, 0f, 0f, 0f);
1590 break;
1591 case RectPosition.BottomRIGHT:
1592 _rect.SetAnchor(1f, 0f, 1f, 0f);
1593 break;
1594 case RectPosition.Left:
1595 _rect.SetAnchor(0f, 0.5f, 0f, 0.5f);
1596 break;
1597 case RectPosition.Right:
1598 _rect.SetAnchor(1f, 0.5f, 1f, 0.5f);
1599 break;
1600 default:
1601 _rect.SetAnchor(0.5f, 0.5f, 0.5f, 0.5f);
1602 break;
1603 }
1604 }
RectPosition
Definition: RectPosition.cs:2

◆ AddArticle() [1/2]

static string ClassExtension.AddArticle ( this string  s)
inlinestatic

Definition at line 1005 of file ClassExtension.cs.

1006 {
1007 if (!Lang.setting.addArticle || s.Length < 1)
1008 {
1009 return s;
1010 }
1011 char c = s.ToLower()[0];
1012 s = ((c == 'a' || c == 'i' || c == 'u' || c == 'e' || c == 'o') ? "an " : "a ") + s;
1013 return s;
1014 }
bool addArticle
Definition: LangSetting.cs:30
Definition: Lang.cs:6
static LangSetting setting
Definition: Lang.cs:54

References LangSetting.addArticle, and Lang.setting.

◆ AddArticle() [2/2]

static string ClassExtension.AddArticle ( this string  s,
int  num,
ArticleStyle  style = ArticleStyle::Default,
string  replace = null 
)
inlinestatic

Definition at line 1016 of file ClassExtension.cs.

1017 {
1018 if (!Lang.setting.addArticle || s.Length < 1)
1019 {
1020 return s;
1021 }
1022 char c = s[0];
1023 string text = ((num >= 2) ? (num.ToFormat() + " ") : ((c == 'a' || c == 'i' || c == 'u' || c == 'e' || c == 'o') ? "an " : "a "));
1024 if (num >= 2 && Lang.setting.pluralize)
1025 {
1026 s = ((replace.IsEmpty() || !s.Contains(replace) || s.Contains("limestone stone")) ? Pluralize(s) : s.Replace(replace, Pluralize(replace)));
1027 }
1028 return style switch
1029 {
1030 ArticleStyle.The => "_the".lang().ToTitleCase() + " " + ((num > 1) ? (num + " ") : "") + s,
1031 ArticleStyle.None => ((num > 1) ? (num.ToFormat() + " ") : "") + s.ToTitleCase(),
1032 _ => text + s,
1033 };
1034 }
ArticleStyle
Definition: ArticleStyle.cs:2
static string Pluralize(string s)
bool pluralize
Definition: LangSetting.cs:32

References LangSetting.addArticle, Pluralize(), LangSetting.pluralize, and Lang.setting.

◆ AddEulerAngles()

static void ClassExtension.AddEulerAngles ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1898 of file ClassExtension.cs.

1899 {
1900 vector3.Set(transform.eulerAngles.x + x, transform.eulerAngles.y + y, transform.eulerAngles.z + z);
1901 transform.eulerAngles = vector3;
1902 }
static Vector3 vector3

References vector3.

◆ AddEulerAnglesX()

static void ClassExtension.AddEulerAnglesX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1904 of file ClassExtension.cs.

1905 {
1906 vector3.Set(transform.eulerAngles.x + x, transform.eulerAngles.y, transform.eulerAngles.z);
1907 transform.eulerAngles = vector3;
1908 }

References vector3.

◆ AddEulerAnglesY()

static void ClassExtension.AddEulerAnglesY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1910 of file ClassExtension.cs.

1911 {
1912 vector3.Set(transform.eulerAngles.x, transform.eulerAngles.y + y, transform.eulerAngles.z);
1913 transform.eulerAngles = vector3;
1914 }

References vector3.

◆ AddEulerAnglesZ()

static void ClassExtension.AddEulerAnglesZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1916 of file ClassExtension.cs.

1917 {
1918 vector3.Set(transform.eulerAngles.x, transform.eulerAngles.y, transform.eulerAngles.z + z);
1919 transform.eulerAngles = vector3;
1920 }

References vector3.

◆ AddLocalEulerAngles()

static void ClassExtension.AddLocalEulerAngles ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1946 of file ClassExtension.cs.

1947 {
1948 vector3.Set(transform.localEulerAngles.x + x, transform.localEulerAngles.y + y, transform.localEulerAngles.z + z);
1949 transform.localEulerAngles = vector3;
1950 }

References vector3.

◆ AddLocalEulerAnglesX()

static void ClassExtension.AddLocalEulerAnglesX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1952 of file ClassExtension.cs.

1953 {
1954 vector3.Set(transform.localEulerAngles.x + x, transform.localEulerAngles.y, transform.localEulerAngles.z);
1955 transform.localEulerAngles = vector3;
1956 }

References vector3.

◆ AddLocalEulerAnglesY()

static void ClassExtension.AddLocalEulerAnglesY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1958 of file ClassExtension.cs.

1959 {
1960 vector3.Set(transform.localEulerAngles.x, transform.localEulerAngles.y + y, transform.localEulerAngles.z);
1961 transform.localEulerAngles = vector3;
1962 }

References vector3.

◆ AddLocalEulerAnglesZ()

static void ClassExtension.AddLocalEulerAnglesZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1964 of file ClassExtension.cs.

1965 {
1966 vector3.Set(transform.localEulerAngles.x, transform.localEulerAngles.y, transform.localEulerAngles.z + z);
1967 transform.localEulerAngles = vector3;
1968 }

References vector3.

◆ AddLocalPosition()

static void ClassExtension.AddLocalPosition ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1802 of file ClassExtension.cs.

1803 {
1804 vector3.Set(transform.localPosition.x + x, transform.localPosition.y + y, transform.localPosition.z + z);
1805 transform.localPosition = vector3;
1806 }

References vector3.

◆ AddLocalPositionX()

static void ClassExtension.AddLocalPositionX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1808 of file ClassExtension.cs.

1809 {
1810 vector3.Set(transform.localPosition.x + x, transform.localPosition.y, transform.localPosition.z);
1811 transform.localPosition = vector3;
1812 }

References vector3.

◆ AddLocalPositionY()

static void ClassExtension.AddLocalPositionY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1814 of file ClassExtension.cs.

1815 {
1816 vector3.Set(transform.localPosition.x, transform.localPosition.y + y, transform.localPosition.z);
1817 transform.localPosition = vector3;
1818 }

References vector3.

◆ AddLocalPositionZ()

static void ClassExtension.AddLocalPositionZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1820 of file ClassExtension.cs.

1821 {
1822 vector3.Set(transform.localPosition.x, transform.localPosition.y, transform.localPosition.z + z);
1823 transform.localPosition = vector3;
1824 }

References vector3.

◆ AddLocalScale()

static void ClassExtension.AddLocalScale ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1850 of file ClassExtension.cs.

1851 {
1852 vector3.Set(transform.localScale.x + x, transform.localScale.y + y, transform.localScale.z + z);
1853 transform.localScale = vector3;
1854 }

References vector3.

◆ AddLocalScaleX()

static void ClassExtension.AddLocalScaleX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1856 of file ClassExtension.cs.

1857 {
1858 vector3.Set(transform.localScale.x + x, transform.localScale.y, transform.localScale.z);
1859 transform.localScale = vector3;
1860 }

References vector3.

◆ AddLocalScaleY()

static void ClassExtension.AddLocalScaleY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1862 of file ClassExtension.cs.

1863 {
1864 vector3.Set(transform.localScale.x, transform.localScale.y + y, transform.localScale.z);
1865 transform.localScale = vector3;
1866 }

References vector3.

◆ AddLocalScaleZ()

static void ClassExtension.AddLocalScaleZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1868 of file ClassExtension.cs.

1869 {
1870 vector3.Set(transform.localScale.x, transform.localScale.y, transform.localScale.z + z);
1871 transform.localScale = vector3;
1872 }

References vector3.

◆ AddPosition()

static void ClassExtension.AddPosition ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1754 of file ClassExtension.cs.

1755 {
1756 vector3.Set(transform.position.x + x, transform.position.y + y, transform.position.z + z);
1757 transform.position = vector3;
1758 }

References vector3.

◆ AddPositionX()

static void ClassExtension.AddPositionX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1760 of file ClassExtension.cs.

1761 {
1762 vector3.Set(transform.position.x + x, transform.position.y, transform.position.z);
1763 transform.position = vector3;
1764 }

References vector3.

◆ AddPositionY()

static void ClassExtension.AddPositionY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1766 of file ClassExtension.cs.

1767 {
1768 vector3.Set(transform.position.x, transform.position.y + y, transform.position.z);
1769 transform.position = vector3;
1770 }

References vector3.

◆ AddPositionZ()

static void ClassExtension.AddPositionZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1772 of file ClassExtension.cs.

1773 {
1774 vector3.Set(transform.position.x, transform.position.y, transform.position.z + z);
1775 transform.position = vector3;
1776 }

References vector3.

◆ AddTag()

static string ClassExtension.AddTag ( this string  s,
string  id,
char  splitter = '/' 
)
inlinestatic

Definition at line 962 of file ClassExtension.cs.

963 {
964 if (!s.HasTag(id, splitter))
965 {
966 s = s + (s.IsEmpty() ? "" : ((object)splitter))?.ToString() + id;
967 }
968 return s;
969 }

◆ Bracket()

static string ClassExtension.Bracket ( this string  str,
int  type = 0 
)
inlinestatic

Definition at line 56 of file ClassExtension.cs.

57 {
58 return type switch
59 {
60 -1 => str,
61 1 => "「" + str + "」",
62 2 => "『" + str + "』",
63 3 => "《" + str + "》",
64 4 => "(" + str + ")",
65 _ => "_bracketLeft".lang() + str + "_bracketRight".lang(),
66 };
67 }

◆ Calc()

static int ClassExtension.Calc ( this string  str,
int  power = 0,
int  ele = 0,
int  p2 = 0 
)
inlinestatic

Definition at line 671 of file ClassExtension.cs.

672 {
673 return Cal.Calcuate(str.Replace("p2", p2.ToString() ?? "").Replace("p", power.ToString() ?? "").Replace("e", ele.ToString() ?? "")
674 .Replace(";", ","));
675 }

◆ Clamp()

static int ClassExtension.Clamp ( this int  v,
int  min,
int  max,
bool  loop = false 
)
inlinestatic

Definition at line 183 of file ClassExtension.cs.

184 {
185 if (v < min)
186 {
187 v = ((!loop) ? min : max);
188 }
189 else if (v > max)
190 {
191 v = ((!loop) ? max : min);
192 }
193 return v;
194 }

◆ Clamp< TValue >()

static TValue ClassExtension.Clamp< TValue > ( this IList< TValue >  source,
int  i 
)
inlinestatic

Definition at line 584 of file ClassExtension.cs.

585 {
586 if (i < 0)
587 {
588 i = 0;
589 }
590 else if (i >= source.Count)
591 {
592 i = source.Count - 1;
593 }
594 return source[i];
595 }

◆ ClampAngle()

static float ClassExtension.ClampAngle ( this float  angle)
inlinestatic

Definition at line 1999 of file ClassExtension.cs.

2000 {
2001 if (angle < 0f)
2002 {
2003 return 360f - (0f - angle) % 360f;
2004 }
2005 return angle % 360f;
2006 }

◆ ClampMax()

static int ClassExtension.ClampMax ( this int  v,
int  max 
)
inlinestatic

Definition at line 205 of file ClassExtension.cs.

206 {
207 if (v <= max)
208 {
209 return v;
210 }
211 return max;
212 }

◆ ClampMin()

static int ClassExtension.ClampMin ( this int  v,
int  min 
)
inlinestatic

Definition at line 196 of file ClassExtension.cs.

197 {
198 if (v >= min)
199 {
200 return v;
201 }
202 return min;
203 }

◆ Contains()

static bool ClassExtension.Contains ( this string[]  strs,
string  id 
)
inlinestatic

Definition at line 835 of file ClassExtension.cs.

836 {
837 if (strs == null || strs.Length == 0)
838 {
839 return false;
840 }
841 for (int i = 0; i < strs.Length; i++)
842 {
843 if (strs[i] == id)
844 {
845 return true;
846 }
847 }
848 return false;
849 }

◆ Copy< TValue >()

static IList< TValue > ClassExtension.Copy< TValue > ( this IList< TValue >  list)
inlinestatic

Definition at line 336 of file ClassExtension.cs.

337 {
338 return list.ToList();
339 }

◆ CopyKeys< TKey, TValue >()

static TKey[] ClassExtension.CopyKeys< TKey, TValue > ( this IDictionary< TKey, TValue >  dict)
inlinestatic

Definition at line 394 of file ClassExtension.cs.

395 {
396 TKey[] array = new TKey[dict.Keys.Count];
397 dict.Keys.CopyTo(array, 0);
398 return array;
399 }

◆ CopyRect()

static void ClassExtension.CopyRect ( this RectTransform  r,
RectTransform  t 
)
inlinestatic

Definition at line 1300 of file ClassExtension.cs.

1301 {
1302 r.pivot = t.pivot;
1303 r.sizeDelta = t.sizeDelta;
1304 r.anchorMin = t.anchorMin;
1305 r.anchorMax = t.anchorMax;
1306 r.anchoredPosition = t.anchoredPosition;
1307 }

◆ CopyValues< TKey, TValue >()

static TValue[] ClassExtension.CopyValues< TKey, TValue > ( this IDictionary< TKey, TValue >  dict)
inlinestatic

Definition at line 401 of file ClassExtension.cs.

402 {
403 TValue[] array = new TValue[dict.Keys.Count];
404 dict.Values.CopyTo(array, 0);
405 return array;
406 }

◆ CreateMold< T >()

static T ClassExtension.CreateMold< T > ( this Component  c,
string  name = null 
)
inlinestatic
Type Constraints
T :Component 

Definition at line 1373 of file ClassExtension.cs.

1373 : Component
1374 {
1375 T result = null;
1376 for (int i = 0; i < c.transform.childCount; i++)
1377 {
1378 T component = c.transform.GetChild(i).GetComponent<T>();
1379 if ((bool)component && (name.IsEmpty() || name == component.name))
1380 {
1381 component.gameObject.SetActive(value: false);
1382 result = component;
1383 break;
1384 }
1385 }
1386 c.DestroyChildren();
1387 return result;
1388 }

◆ DestroyChildren()

static void ClassExtension.DestroyChildren ( this Component  component,
bool  destroyInactive = false,
bool  ignoreDestroy = true 
)
inlinestatic

Definition at line 1495 of file ClassExtension.cs.

1496 {
1497 if (!component || !component.transform)
1498 {
1499 Debug.LogWarning("DestroyChlidren:" + component);
1500 return;
1501 }
1502 for (int num = component.transform.childCount - 1; num >= 0; num--)
1503 {
1504 GameObject gameObject = component.transform.GetChild(num).gameObject;
1505 if ((!ignoreDestroy || !(gameObject.tag == "IgnoreDestroy")) && (destroyInactive || gameObject.activeSelf))
1506 {
1507 UnityEngine.Object.DestroyImmediate(gameObject);
1508 }
1509 }
1510 }

References Debug.

◆ Distance()

static float ClassExtension.Distance ( this Transform  t,
Vector2  pos 
)
inlinestatic

Definition at line 1688 of file ClassExtension.cs.

1689 {
1690 return Vector3.Distance(t.position, pos);
1691 }

◆ Each< TValue >()

static void ClassExtension.Each< TValue > ( this IList< TValue >  list,
Action< TValue >  action 
)
inlinestatic

Definition at line 341 of file ClassExtension.cs.

342 {
343 for (int num = list.Count - 1; num >= 0; num--)
344 {
345 action(list[num]);
346 }
347 }

◆ Evalute()

static string ClassExtension.Evalute ( this string[]  array,
float  val 
)
inlinestatic

Definition at line 851 of file ClassExtension.cs.

852 {
853 return array[(int)Mathf.Clamp((float)(array.Length - 1) * val, 0f, array.Length - 1)];
854 }

◆ Find()

static Transform ClassExtension.Find ( this Component  c,
string  name = null 
)
inlinestatic

Definition at line 1390 of file ClassExtension.cs.

1391 {
1392 return c.Find<Transform>(name);
1393 }

◆ Find< T >()

static T ClassExtension.Find< T > ( this Component  c,
string  name = null,
bool  recursive = false 
)
inlinestatic
Type Constraints
T :Component 

Definition at line 1395 of file ClassExtension.cs.

1395 : Component
1396 {
1397 if (recursive)
1398 {
1399 T[] componentsInChildren = c.transform.GetComponentsInChildren<T>();
1400 foreach (T val in componentsInChildren)
1401 {
1402 if (name == null || name == val.name)
1403 {
1404 return val;
1405 }
1406 }
1407 return null;
1408 }
1409 for (int j = 0; j < c.transform.childCount; j++)
1410 {
1411 T component = c.transform.GetChild(j).GetComponent<T>();
1412 if ((bool)component && (name == null || name == component.name))
1413 {
1414 return component;
1415 }
1416 }
1417 return null;
1418 }

◆ FindMax< T >()

static T ClassExtension.FindMax< T > ( this List< T >  list,
Func< T, int >  func 
)
inlinestatic

Definition at line 619 of file ClassExtension.cs.

620 {
621 int num = int.MinValue;
622 T result = default(T);
623 foreach (T item in list)
624 {
625 int num2 = func(item);
626 if (num2 > num)
627 {
628 num = num2;
629 result = item;
630 }
631 }
632 return result;
633 }

References item.

◆ FindTagInParents()

static GameObject ClassExtension.FindTagInParents ( this Component  c,
string  tag,
bool  includeInactive = true 
)
inlinestatic

Definition at line 1420 of file ClassExtension.cs.

1421 {
1422 Transform transform = c.transform;
1423 for (int i = 0; i < transform.childCount; i++)
1424 {
1425 Transform child = transform.GetChild(i);
1426 if ((includeInactive || child.gameObject.activeSelf) && child.tag == tag)
1427 {
1428 return child.gameObject;
1429 }
1430 }
1431 if ((bool)transform.parent)
1432 {
1433 return transform.parent.FindTagInParents(tag, includeInactive);
1434 }
1435 return null;
1436 }

◆ FirstItem< TKey, TValue >()

static TValue ClassExtension.FirstItem< TKey, TValue > ( this IDictionary< TKey, TValue >  source)
inlinestatic

Definition at line 510 of file ClassExtension.cs.

511 {
512 if (source == null)
513 {
514 return default(TValue);
515 }
516 return source[source.First().Key];
517 }

◆ ForeachReverse< T >() [1/2]

static void ClassExtension.ForeachReverse< T > ( this IList< T >  items,
Action< T >  action 
)
inlinestatic

Definition at line 1982 of file ClassExtension.cs.

1983 {
1984 for (int num = items.Count - 1; num >= 0; num--)
1985 {
1986 action(items[num]);
1987 }
1988 }

◆ ForeachReverse< T >() [2/2]

static void ClassExtension.ForeachReverse< T > ( this IList< T >  items,
Func< T, bool >  action 
)
inlinestatic

Definition at line 1990 of file ClassExtension.cs.

1991 {
1992 int num = items.Count - 1;
1993 while (num >= 0 && !action(items[num]))
1994 {
1995 num--;
1996 }
1997 }

◆ FromInt2()

static float ClassExtension.FromInt2 ( this int  a)
inlinestatic

Definition at line 105 of file ClassExtension.cs.

106 {
107 return (float)a / 100f;
108 }

◆ FromInt3()

static float ClassExtension.FromInt3 ( this int  a)
inlinestatic

Definition at line 95 of file ClassExtension.cs.

96 {
97 return (float)a / 1000f;
98 }

◆ GetAnchor()

static RectPosition ClassExtension.GetAnchor ( this RectTransform  _rect)
inlinestatic

Definition at line 1613 of file ClassExtension.cs.

1614 {
1615 Vector3 position = _rect.position;
1616 int width = Screen.width;
1617 int height = Screen.height;
1618 bool flag = position.y > (float)height * 0.5f;
1619 if (position.x > (float)width * 0.3f && position.x < (float)width * 0.7f)
1620 {
1621 if (position.y > (float)height * 0.3f && position.y < (float)height * 0.7f)
1622 {
1623 return RectPosition.Center;
1624 }
1625 if (!flag)
1626 {
1627 return RectPosition.BottomCenter;
1628 }
1629 return RectPosition.TopCenter;
1630 }
1631 if (position.x < (float)width * 0.5f)
1632 {
1633 if (!flag)
1634 {
1635 return RectPosition.BottomLEFT;
1636 }
1637 return RectPosition.TopLEFT;
1638 }
1639 if (!flag)
1640 {
1641 return RectPosition.BottomRIGHT;
1642 }
1643 return RectPosition.TopRIGHT;
1644 }

◆ GetBit()

static bool ClassExtension.GetBit ( this byte  pByte,
int  bitNo 
)
inlinestatic

Definition at line 76 of file ClassExtension.cs.

77 {
78 return (pByte & (1 << bitNo)) != 0;
79 }

◆ GetComponentInChildrenExcludSelf< T >()

static T ClassExtension.GetComponentInChildrenExcludSelf< T > ( this Transform  c)
inlinestatic
Type Constraints
T :Component 

Definition at line 1438 of file ClassExtension.cs.

1438 : Component
1439 {
1440 for (int i = 0; i < c.childCount; i++)
1441 {
1442 T component = c.GetChild(i).GetComponent<T>();
1443 if ((bool)component)
1444 {
1445 return component;
1446 }
1447 }
1448 return null;
1449 }

◆ GetComponentInDirectChildren< T >()

static T ClassExtension.GetComponentInDirectChildren< T > ( this Component  comp)
inlinestatic
Type Constraints
T :Component 

Definition at line 1481 of file ClassExtension.cs.

1481 : Component
1482 {
1483 Transform transform = comp.transform;
1484 for (int i = 0; i < transform.childCount; i++)
1485 {
1486 T component = transform.GetChild(i).GetComponent<T>();
1487 if ((bool)component)
1488 {
1489 return component;
1490 }
1491 }
1492 return null;
1493 }

◆ GetComponentsInDirectChildren< T >() [1/2]

static List< T > ClassExtension.GetComponentsInDirectChildren< T > ( this Component  comp,
bool  includeInactive = true 
)
inlinestatic
Type Constraints
T :Component 

Definition at line 1466 of file ClassExtension.cs.

1466 : Component
1467 {
1468 List<T> list = new List<T>();
1469 Transform transform = comp.transform;
1470 for (int i = 0; i < transform.childCount; i++)
1471 {
1472 T component = transform.GetChild(i).GetComponent<T>();
1473 if ((bool)component && (includeInactive || component.gameObject.activeInHierarchy))
1474 {
1475 list.Add(component);
1476 }
1477 }
1478 return list;
1479 }

◆ GetComponentsInDirectChildren< T >() [2/2]

static List< T > ClassExtension.GetComponentsInDirectChildren< T > ( this Transform  comp,
bool  includeInactive = true 
)
inlinestatic
Type Constraints
T :Component 

Definition at line 1451 of file ClassExtension.cs.

1451 : Component
1452 {
1453 List<T> list = new List<T>();
1454 Transform transform = comp.transform;
1455 for (int i = 0; i < transform.childCount; i++)
1456 {
1457 T component = transform.GetChild(i).GetComponent<T>();
1458 if ((bool)component && (includeInactive || component.gameObject.activeInHierarchy))
1459 {
1460 list.Add(component);
1461 }
1462 }
1463 return list;
1464 }

◆ GetField< T >()

static T ClassExtension.GetField< T > ( this object  o,
string  name 
)
inlinestatic

Definition at line 229 of file ClassExtension.cs.

230 {
231 return (T)o.GetType().GetField(name).GetValue(o);
232 }

◆ GetForwardDiffPoint()

static float ClassExtension.GetForwardDiffPoint ( Vector2  forward)
inlinestaticprivate

Definition at line 1665 of file ClassExtension.cs.

1666 {
1667 if (object.Equals(forward, Vector2.up))
1668 {
1669 return 90f;
1670 }
1671 object.Equals(forward, Vector2.right);
1672 return 0f;
1673 }

References forward.

Referenced by LookAt2D().

◆ GetFullFileNameWithoutExtension() [1/2]

static string ClassExtension.GetFullFileNameWithoutExtension ( this FileInfo  fileInfo)
inlinestatic

Definition at line 986 of file ClassExtension.cs.

987 {
988 return fileInfo.Directory.FullName + "/" + Path.GetFileNameWithoutExtension(fileInfo.Name);
989 }

◆ GetFullFileNameWithoutExtension() [2/2]

static string ClassExtension.GetFullFileNameWithoutExtension ( this string  path)
inlinestatic

Definition at line 991 of file ClassExtension.cs.

992 {
993 return new FileInfo(path).GetFullFileNameWithoutExtension();
994 }

◆ GetLastChild()

static Transform ClassExtension.GetLastChild ( this Transform  trans)
inlinestatic

Definition at line 1646 of file ClassExtension.cs.

1647 {
1648 return trans.GetChild(trans.childCount - 1);
1649 }

◆ GetList< T >()

static List< T > ClassExtension.GetList< T > ( this IDictionary  source)
inlinestatic

Definition at line 597 of file ClassExtension.cs.

598 {
599 List<T> list = new List<T>();
600 foreach (object value in source.Values)
601 {
602 if (value is T)
603 {
604 list.Add((T)value);
605 }
606 }
607 return list;
608 }

◆ GetOrCreate< T >()

static T ClassExtension.GetOrCreate< T > ( this Component  t)
inlinestatic
Type Constraints
T :Component 

Definition at line 1285 of file ClassExtension.cs.

1285 : Component
1286 {
1287 T val = t.gameObject.GetComponent<T>();
1288 if (!val)
1289 {
1290 val = t.gameObject.AddComponent<T>();
1291 }
1292 return val;
1293 }

◆ GetOrCreate< TKey, TValue >()

static TValue ClassExtension.GetOrCreate< TKey, TValue > ( this IDictionary< TKey, TValue >  dict,
TKey  key,
Func< TValue >  func = null 
)
inlinestatic

Definition at line 383 of file ClassExtension.cs.

384 {
385 TValue val = dict.TryGetValue(key);
386 if (val == null)
387 {
388 val = ((func != null) ? func() : Activator.CreateInstance<TValue>());
389 dict.Add(key, val);
390 }
391 return val;
392 }

◆ GetProperty< T >()

static T ClassExtension.GetProperty< T > ( this object  o,
string  name 
)
inlinestatic

Definition at line 239 of file ClassExtension.cs.

240 {
241 return (T)o.GetType().GetProperty(name).GetValue(o);
242 }

◆ GetRuntimeEventCount()

static int ClassExtension.GetRuntimeEventCount ( this UnityEventBase  unityEvent)
inlinestatic

Definition at line 2021 of file ClassExtension.cs.

2022 {
2023 Type typeFromHandle = typeof(UnityEventBase);
2024 Assembly assembly = Assembly.GetAssembly(typeFromHandle);
2025 Type type = assembly.GetType("UnityEngine.Events.InvokableCallList");
2026 Type type2 = assembly.GetType("UnityEngine.Events.BaseInvokableCall");
2027 Type type3 = typeof(List<>).MakeGenericType(type2);
2028 FieldInfo field = typeFromHandle.GetField("m_Calls", BindingFlags.Instance | BindingFlags.NonPublic);
2029 FieldInfo field2 = type.GetField("m_RuntimeCalls", BindingFlags.Instance | BindingFlags.NonPublic);
2030 object value = field.GetValue(unityEvent);
2031 object value2 = field2.GetValue(value);
2032 return (int)type3.GetProperty("Count").GetValue(value2, null);
2033 }

◆ GetSelectable()

static Selectable ClassExtension.GetSelectable ( this GameObject  go)
inlinestatic

Definition at line 1331 of file ClassExtension.cs.

1332 {
1333 return go.GetComponentInChildren<Selectable>();
1334 }

◆ HasField< T >()

static bool ClassExtension.HasField< T > ( this object  o,
string  name 
)
inlinestatic

Definition at line 219 of file ClassExtension.cs.

220 {
221 FieldInfo field = o.GetType().GetField(name);
222 if (field != null)
223 {
224 return typeof(T).IsAssignableFrom(field.FieldType);
225 }
226 return false;
227 }

◆ HasTag()

static bool ClassExtension.HasTag ( this string  s,
string  id,
char  splitter = '/' 
)
inlinestatic

Definition at line 951 of file ClassExtension.cs.

952 {
953 return s.Split(splitter).Contains(id);
954 }

◆ IndexOf()

static int ClassExtension.IndexOf ( this IList< Component >  list,
GameObject  go 
)
inlinestatic

Definition at line 303 of file ClassExtension.cs.

304 {
305 if (!go)
306 {
307 return -1;
308 }
309 for (int i = 0; i < list.Count; i++)
310 {
311 if (list[i].gameObject == go)
312 {
313 return i;
314 }
315 }
316 return -1;
317 }

◆ Instantiate< T >()

static T ClassExtension.Instantiate< T > ( this T  s)
inlinestatic
Type Constraints
T :ScriptableObject 

Definition at line 2013 of file ClassExtension.cs.

2013 : ScriptableObject
2014 {
2015 string name = s.name;
2016 T val = UnityEngine.Object.Instantiate(s);
2017 val.name = name;
2018 return val;
2019 }

◆ IsChildOf()

static bool ClassExtension.IsChildOf ( this GameObject  c,
GameObject  root 
)
inlinestatic

Definition at line 1355 of file ClassExtension.cs.

1356 {
1357 if (c.transform == root.transform)
1358 {
1359 return true;
1360 }
1361 if ((bool)c.transform.parent)
1362 {
1363 return c.transform.parent.gameObject.IsChildOf(root);
1364 }
1365 return false;
1366 }

◆ IsEmpty() [1/3]

static bool ClassExtension.IsEmpty ( this Array  array)
inlinestatic

Definition at line 294 of file ClassExtension.cs.

295 {
296 if (array != null)
297 {
298 return array.Length == 0;
299 }
300 return true;
301 }

◆ IsEmpty() [2/3]

static bool ClassExtension.IsEmpty ( this string  str)
inlinestatic

Definition at line 792 of file ClassExtension.cs.

793 {
794 if (str != null)
795 {
796 return str == "";
797 }
798 return true;
799 }

◆ IsEmpty() [3/3]

static string ClassExtension.IsEmpty ( this string  str,
string  defaultStr 
)
inlinestatic

Definition at line 801 of file ClassExtension.cs.

802 {
803 if (str != null && !(str == ""))
804 {
805 return str;
806 }
807 return defaultStr;
808 }

◆ IsInteractable()

static bool ClassExtension.IsInteractable ( this GameObject  obj)
inlinestatic

Definition at line 1345 of file ClassExtension.cs.

1346 {
1347 Selectable selectable = (obj ? obj.GetComponent<Selectable>() : null);
1348 if ((bool)selectable)
1349 {
1350 return selectable.interactable;
1351 }
1352 return false;
1353 }

◆ IsMouseOver()

static bool ClassExtension.IsMouseOver ( this RectTransform  r,
Camera  cam 
)
inlinestatic

Definition at line 1512 of file ClassExtension.cs.

1513 {
1514 return RectTransformUtility.RectangleContainsScreenPoint(r, Input.mousePosition, cam);
1515 }

◆ IsNull()

static bool ClassExtension.IsNull ( this object  o)
inlinestatic

Definition at line 123 of file ClassExtension.cs.

124 {
125 return o == null;
126 }

◆ IsOn()

static bool ClassExtension.IsOn ( this int  data,
int  digit 
)
inlinestatic

Definition at line 128 of file ClassExtension.cs.

129 {
130 BitArray32 bitArray = default(BitArray32);
131 bitArray.SetInt(data);
132 return bitArray[digit];
133 }
void SetInt(int i)
Definition: BitArray32.cs:89

References BitArray32.SetInt().

◆ IsPrefab()

static bool ClassExtension.IsPrefab ( this Component  c)
inlinestatic

Definition at line 1368 of file ClassExtension.cs.

1369 {
1370 return c.gameObject.scene.name == null;
1371 }

◆ lang() [1/2]

static string ClassExtension.lang ( this string  s)
inlinestatic

Definition at line 20 of file ClassExtension.cs.

21 {
22 return Lang.Get(s);
23 }
static string Get(string id)
Definition: Lang.cs:93

References Lang.Get().

◆ lang() [2/2]

static string ClassExtension.lang ( this string  s,
string  ref1,
string  ref2 = null,
string  ref3 = null,
string  ref4 = null,
string  ref5 = null 
)
inlinestatic

Definition at line 31 of file ClassExtension.cs.

32 {
33 return Lang.Parse(s, ref1, ref2, ref3, ref4, ref5);
34 }
static string Parse(string idLang, string val1, string val2=null, string val3=null, string val4=null, string val5=null)
Definition: Lang.cs:149

References Lang.Parse().

◆ langGame() [1/2]

static string ClassExtension.langGame ( this string  s)
inlinestatic

Definition at line 41 of file ClassExtension.cs.

42 {
43 return Lang.Game.Get(s);
44 }
static LangGame Game
Definition: Lang.cs:48
string Get(string id)
Definition: SourceLang.cs:12

References Lang.Game, and SourceLang< T >.Get().

◆ langGame() [2/2]

static string ClassExtension.langGame ( this string  s,
string  ref1,
string  ref2 = null,
string  ref3 = null,
string  ref4 = null 
)
inlinestatic

Definition at line 46 of file ClassExtension.cs.

47 {
48 return Lang.Game.Parse(s, ref1, ref2, ref3, ref4);
49 }
string Parse(string idLang, string val1, string val2=null, string val3=null, string val4=null)
Definition: SourceLang.cs:43

References Lang.Game, and SourceLang< T >.Parse().

◆ langList()

static string[] ClassExtension.langList ( this string  s)
inlinestatic

Definition at line 36 of file ClassExtension.cs.

37 {
38 return Lang.GetList(s);
39 }
static string[] GetList(string id)
Definition: Lang.cs:116

References Lang.GetList().

◆ langPlural()

static string ClassExtension.langPlural ( this string  s,
int  i 
)
inlinestatic

Definition at line 25 of file ClassExtension.cs.

26 {
27 string text = Lang.Get(s);
28 return Lang.Parse((i <= 1 || !Lang.setting.pluralize) ? text : pluralizer.Pluralize(text), i.ToString() ?? "");
29 }
static IPluralize pluralizer

References Lang.Get(), Lang.Parse(), LangSetting.pluralize, pluralizer, and Lang.setting.

◆ LastItem< TValue >()

static TValue ClassExtension.LastItem< TValue > ( this IList< TValue >  source)
inlinestatic

Definition at line 519 of file ClassExtension.cs.

520 {
521 if (source.Count != 0)
522 {
523 return source[source.Count - 1];
524 }
525 return default(TValue);
526 }

◆ LookAt2D() [1/2]

static void ClassExtension.LookAt2D ( this Transform  self,
Transform  target,
Vector2  forward 
)
inlinestatic

Definition at line 1675 of file ClassExtension.cs.

1676 {
1677 self.LookAt2D(target.position, forward);
1678 }

References forward.

◆ LookAt2D() [2/2]

static void ClassExtension.LookAt2D ( this Transform  self,
Vector3  target,
Vector2  forward 
)
inlinestatic

Definition at line 1680 of file ClassExtension.cs.

1681 {
1682 float forwardDiffPoint = GetForwardDiffPoint(forward);
1683 Vector3 vector = target - self.position;
1684 float num = Mathf.Atan2(vector.y, vector.x) * 57.29578f;
1685 self.rotation = Quaternion.AngleAxis(num - forwardDiffPoint, Vector3.forward);
1686 }
static float GetForwardDiffPoint(Vector2 forward)

References forward, and GetForwardDiffPoint().

◆ LoopSelectable() [1/2]

static void ClassExtension.LoopSelectable ( this List< Selectable >  sels,
bool  vertical = true,
bool  horizonal = true,
bool  asGroup = true 
)
inlinestatic

Definition at line 1111 of file ClassExtension.cs.

1112 {
1113 for (int i = 0; i < sels.Count; i++)
1114 {
1115 Selectable selectable = sels[i];
1116 Selectable selectable2 = sels[0];
1117 Navigation navigation = selectable.navigation;
1118 if (horizonal)
1119 {
1120 navigation.selectOnRight = ((i + 1 < sels.Count) ? sels[i + 1] : selectable2);
1121 }
1122 if (asGroup)
1123 {
1124 for (int j = i + 1; j < sels.Count; j++)
1125 {
1126 if (sels[j].transform.position.y < selectable.transform.position.y)
1127 {
1128 selectable2 = sels[j];
1129 break;
1130 }
1131 }
1132 }
1133 else
1134 {
1135 selectable2 = ((i + 1 < sels.Count) ? sels[i + 1] : selectable2);
1136 }
1137 if (vertical)
1138 {
1139 navigation.selectOnDown = selectable2;
1140 }
1141 selectable.navigation = navigation;
1142 }
1143 for (int num = sels.Count - 1; num >= 0; num--)
1144 {
1145 Selectable selectable3 = sels[num];
1146 Selectable selectable4 = sels[sels.Count - 1];
1147 Navigation navigation2 = selectable3.navigation;
1148 if (horizonal)
1149 {
1150 navigation2.selectOnLeft = ((num > 0) ? sels[num - 1] : selectable4);
1151 }
1152 if (asGroup)
1153 {
1154 int num2 = sels.Count - 1;
1155 for (int num3 = num - 1; num3 >= 0; num3--)
1156 {
1157 if (sels[num3].transform.position.y > selectable3.transform.position.y)
1158 {
1159 num2 = num3;
1160 break;
1161 }
1162 }
1163 int num4 = num2;
1164 while (num4 >= 0 && !(sels[num4].transform.position.y > sels[num2].transform.position.y))
1165 {
1166 selectable4 = sels[num4];
1167 num4--;
1168 }
1169 }
1170 else
1171 {
1172 selectable4 = ((num > 0) ? sels[num - 1] : selectable4);
1173 }
1174 if (vertical)
1175 {
1176 navigation2.selectOnUp = ((selectable4 == selectable3) ? sels[sels.Count - 1] : selectable4);
1177 }
1178 navigation2.mode = Navigation.Mode.Explicit;
1179 selectable3.navigation = navigation2;
1180 }
1181 }

◆ LoopSelectable() [2/2]

static void ClassExtension.LoopSelectable ( this Transform  l,
bool  vertical = true,
bool  horizonal = true,
bool  asGroup = true 
)
inlinestatic

Definition at line 1183 of file ClassExtension.cs.

1184 {
1185 List<Selectable> list = l.GetComponentsInChildren<Selectable>().ToList();
1186 for (int num = list.Count - 1; num >= 0; num--)
1187 {
1188 if (!list[num].interactable || list[num].navigation.mode == Navigation.Mode.None)
1189 {
1190 list.RemoveAt(num);
1191 }
1192 }
1193 list.LoopSelectable(vertical, horizonal, asGroup);
1194 }

◆ LoopTail< T >()

static void ClassExtension.LoopTail< T > ( this List< T >  list,
bool  vertical = false 
)
inlinestatic
Type Constraints
T :Selectable 

Definition at line 1063 of file ClassExtension.cs.

1063 : Selectable
1064 {
1065 if (list.Count > 1)
1066 {
1067 Navigation navigation = list[0].navigation;
1068 Navigation navigation2 = list[list.Count - 1].navigation;
1069 if (vertical)
1070 {
1071 navigation.selectOnUp = list[list.Count - 1];
1072 navigation2.selectOnDown = list[0];
1073 }
1074 else
1075 {
1076 navigation.selectOnLeft = list[list.Count - 1];
1077 navigation2.selectOnRight = list[0];
1078 }
1079 list[0].navigation = navigation;
1080 list[list.Count - 1].navigation = navigation2;
1081 }
1082 }

◆ Minimum()

static int ClassExtension.Minimum ( this int  i)
inlinestatic

Definition at line 110 of file ClassExtension.cs.

111 {
112 if (i != 0)
113 {
114 if (i <= 0)
115 {
116 return -1;
117 }
118 return 1;
119 }
120 return 0;
121 }

◆ Move< TValue >()

static TValue ClassExtension.Move< TValue > ( this IList< TValue >  list,
TValue  target,
int  a 
)
inlinestatic

Definition at line 319 of file ClassExtension.cs.

320 {
321 int num = list.IndexOf(target);
322 int num2 = num + a;
323 if (num2 < 0)
324 {
325 num2 = list.Count - 1;
326 }
327 if (num2 >= list.Count)
328 {
329 num2 = 0;
330 }
331 list.Remove(target);
332 list.Insert(num2, target);
333 return list[num];
334 }

◆ Multiply()

static Color ClassExtension.Multiply ( this Color  c,
float  mtp,
float  add 
)
inlinestatic

Definition at line 1219 of file ClassExtension.cs.

1220 {
1221 return new Color(c.r * mtp + add, c.g * mtp + add, c.b * mtp + add, c.a);
1222 }

References Color.

◆ NextEnum< T >()

static T ClassExtension.NextEnum< T > ( this T  src)
inlinestatic
Type Constraints
T :struct 

Definition at line 155 of file ClassExtension.cs.

155 : struct
156 {
157 return ((T[])Enum.GetValues(src.GetType())).NextItem(src);
158 }

◆ NextIndex< TValue >()

static int ClassExtension.NextIndex< TValue > ( this IList< TValue >  source,
TValue  val 
)
inlinestatic

Definition at line 542 of file ClassExtension.cs.

543 {
544 if (val == null)
545 {
546 return 0;
547 }
548 int num = source.IndexOf(val) + 1;
549 if (num >= source.Count)
550 {
551 num = 0;
552 }
553 return num;
554 }

◆ NextItem< TValue >() [1/2]

static TValue ClassExtension.NextItem< TValue > ( this IList< TValue >  source,
ref int  index 
)
inlinestatic

Definition at line 528 of file ClassExtension.cs.

529 {
530 index++;
531 if (index >= source.Count)
532 {
533 index = 0;
534 }
535 if (source.Count != 0)
536 {
537 return source[index];
538 }
539 return default(TValue);
540 }

◆ NextItem< TValue >() [2/2]

static TValue ClassExtension.NextItem< TValue > ( this IList< TValue >  source,
TValue  val 
)
inlinestatic

Definition at line 556 of file ClassExtension.cs.

557 {
558 int num = source.IndexOf(val) + 1;
559 if (num >= source.Count)
560 {
561 num = 0;
562 }
563 if (source.Count != 0)
564 {
565 return source[num];
566 }
567 return default(TValue);
568 }

◆ Parentheses()

static string ClassExtension.Parentheses ( this string  str)
inlinestatic

Definition at line 51 of file ClassExtension.cs.

52 {
53 return "(" + str + ")";
54 }

◆ Pluralize()

static string ClassExtension.Pluralize ( string  s)
inlinestatic

Definition at line 996 of file ClassExtension.cs.

997 {
998 if (s == "talisman")
999 {
1000 return "talismans";
1001 }
1002 return pluralizer.Pluralize(s);
1003 }

References pluralizer.

Referenced by AddArticle().

◆ Plus()

static Vector3 ClassExtension.Plus ( this Vector3  v,
Vector2  v2 
)
inlinestatic

Definition at line 1693 of file ClassExtension.cs.

1694 {
1695 v.x += v2.x;
1696 v.y += v2.y;
1697 return v;
1698 }

◆ PlusX()

static Vector3 ClassExtension.PlusX ( this Vector3  v,
float  a 
)
inlinestatic

Definition at line 1712 of file ClassExtension.cs.

1713 {
1714 v.x += a;
1715 return v;
1716 }

◆ PlusY()

static Vector3 ClassExtension.PlusY ( this Vector3  v,
float  a 
)
inlinestatic

Definition at line 1718 of file ClassExtension.cs.

1719 {
1720 v.y += a;
1721 return v;
1722 }

◆ PlusZ()

static Vector3 ClassExtension.PlusZ ( this Vector3  v,
float  a 
)
inlinestatic

Definition at line 1724 of file ClassExtension.cs.

1725 {
1726 v.z += a;
1727 return v;
1728 }

◆ PrevEnum< T >()

static T ClassExtension.PrevEnum< T > ( this T  src)
inlinestatic
Type Constraints
T :struct 

Definition at line 160 of file ClassExtension.cs.

160 : struct
161 {
162 return ((T[])Enum.GetValues(src.GetType())).PrevItem(src);
163 }

◆ PrevItem< TValue >()

static TValue ClassExtension.PrevItem< TValue > ( this IList< TValue >  source,
TValue  val 
)
inlinestatic

Definition at line 570 of file ClassExtension.cs.

571 {
572 int num = source.IndexOf(val) - 1;
573 if (num < 0)
574 {
575 num = source.Count - 1;
576 }
577 if (source.Count != 0)
578 {
579 return source[num];
580 }
581 return default(TValue);
582 }

◆ Random()

static Vector3 ClassExtension.Random ( this Vector3  v)
inlinestatic

Definition at line 2008 of file ClassExtension.cs.

2009 {
2010 return new Vector3(Rand.Range(0f - v.x, v.x), Rand.Range(0f - v.y, v.y), Rand.Range(0f - v.z, v.z));
2011 }
Definition: Rand.cs:4
static int Range(int min, int max)
Definition: Rand.cs:49

References Rand.Range().

◆ RandomItem< T >()

static T ClassExtension.RandomItem< T > ( this IEnumerable< T >  ie)
inlinestatic

Definition at line 408 of file ClassExtension.cs.

409 {
410 int num = ie.Count();
411 if (num == 0)
412 {
413 return default(T);
414 }
415 return ie.ElementAt(Rand.rnd(num));
416 }
static int rnd(int max)
Definition: Rand.cs:59

References Rand.rnd().

◆ RandomItem< TKey, TValue >()

static TValue ClassExtension.RandomItem< TKey, TValue > ( this IDictionary< TKey, TValue >  source)
inlinestatic

Definition at line 418 of file ClassExtension.cs.

419 {
420 if (source.Count != 0)
421 {
422 return source.ElementAt(Rand.rnd(source.Count)).Value;
423 }
424 return default(TValue);
425 }

References Rand.rnd().

◆ RandomItem< TValue >() [1/4]

static TValue ClassExtension.RandomItem< TValue > ( this IList< TValue >  source)
inlinestatic

Definition at line 427 of file ClassExtension.cs.

428 {
429 if (source.Count != 0)
430 {
431 return source[Rand.rnd(source.Count)];
432 }
433 return default(TValue);
434 }

References Rand.rnd().

◆ RandomItem< TValue >() [2/4]

static TValue ClassExtension.RandomItem< TValue > ( this IList< TValue >  source,
Func< TValue, bool >  funcValid,
TValue  defaultValue = default(TValue) 
)
inlinestatic

Definition at line 460 of file ClassExtension.cs.

461 {
462 for (int i = 0; i < 100; i++)
463 {
464 TValue val = source[Rand.rnd(source.Count)];
465 if (funcValid(val))
466 {
467 return val;
468 }
469 }
470 return defaultValue;
471 }

References Rand.rnd().

◆ RandomItem< TValue >() [3/4]

static TValue ClassExtension.RandomItem< TValue > ( this IList< TValue >  source,
int  exclude 
)
inlinestatic

Definition at line 441 of file ClassExtension.cs.

442 {
443 if (source.Count > 1)
444 {
445 int num;
446 do
447 {
448 num = Rand.rnd(source.Count);
449 }
450 while (num == exclude);
451 return source[num];
452 }
453 if (source.Count == 1)
454 {
455 return source[0];
456 }
457 return default(TValue);
458 }

References Rand.rnd().

◆ RandomItem< TValue >() [4/4]

static TValue ClassExtension.RandomItem< TValue > ( this IList< TValue >  source,
TValue  exclude 
)
inlinestatic

Definition at line 436 of file ClassExtension.cs.

437 {
438 return source.RandomItem(source.IndexOf(exclude));
439 }

◆ RandomItemWeighted< TValue >()

static TValue ClassExtension.RandomItemWeighted< TValue > ( this IList< TValue >  source,
Func< TValue, float >  getWeight 
)
inlinestatic

Definition at line 473 of file ClassExtension.cs.

474 {
475 if (source.Count == 0)
476 {
477 return default(TValue);
478 }
479 if (source.Count == 1)
480 {
481 return source[0];
482 }
483 float num = 0f;
484 foreach (TValue item in source)
485 {
486 num += getWeight(item);
487 }
488 float num2 = Rand.Range(0f, num);
489 num = 0f;
490 foreach (TValue item2 in source)
491 {
492 num += getWeight(item2);
493 if (num2 < num)
494 {
495 return item2;
496 }
497 }
498 return source.First();
499 }

References item, and Rand.Range().

◆ RebuildLayout()

static void ClassExtension.RebuildLayout ( this Component  c,
bool  recursive = false 
)
inlinestatic

Definition at line 1517 of file ClassExtension.cs.

1518 {
1519 if (recursive)
1520 {
1521 foreach (Transform item in c.transform)
1522 {
1523 if (item is RectTransform)
1524 {
1525 item.RebuildLayout(recursive: true);
1526 }
1527 }
1528 }
1529 LayoutRebuilder.ForceRebuildLayoutImmediate(c.transform as RectTransform);
1530 }

References item.

◆ RebuildLayoutTo()

static void ClassExtension.RebuildLayoutTo ( this Component  c,
Component  target 
)
inlinestatic

Definition at line 1541 of file ClassExtension.cs.

1542 {
1543 c.RebuildLayout();
1544 if (!(c == target) && (bool)c.transform.parent)
1545 {
1546 c.transform.parent.RebuildLayoutTo(target);
1547 }
1548 }

◆ RebuildLayoutTo< T >()

static void ClassExtension.RebuildLayoutTo< T > ( this Component  c)
inlinestatic
Type Constraints
T :Component 

Definition at line 1532 of file ClassExtension.cs.

1532 : Component
1533 {
1534 c.RebuildLayout();
1535 if ((bool)c.transform.parent && !c.transform.parent.GetComponent<T>())
1536 {
1537 c.transform.parent.RebuildLayoutTo<T>();
1538 }
1539 }

◆ Rect()

static RectTransform ClassExtension.Rect ( this Component  c)
inlinestatic

Definition at line 1295 of file ClassExtension.cs.

1296 {
1297 return c.transform as RectTransform;
1298 }

◆ Remainder< TValue >()

static TValue ClassExtension.Remainder< TValue > ( this IList< TValue >  source,
int  divider 
)
inlinestatic

Definition at line 501 of file ClassExtension.cs.

502 {
503 if (source.Count != 0)
504 {
505 return source[divider % source.Count];
506 }
507 return default(TValue);
508 }

◆ RemoveAllTags()

static string ClassExtension.RemoveAllTags ( this string  text)
inlinestatic

Definition at line 662 of file ClassExtension.cs.

663 {
664 if (string.IsNullOrEmpty(text))
665 {
666 return text;
667 }
668 return Regex.Replace(text, "<.*?>", "");
669 }

◆ RemoveNewline()

static string ClassExtension.RemoveNewline ( this string  text)
inlinestatic

Definition at line 653 of file ClassExtension.cs.

654 {
655 if (string.IsNullOrEmpty(text))
656 {
657 return text;
658 }
659 return text.Replace("\r", "").Replace("\n", "");
660 }

◆ RemoveTag()

static string ClassExtension.RemoveTag ( this string  s,
string  id,
char  splitter = '/' 
)
inlinestatic

Definition at line 971 of file ClassExtension.cs.

972 {
973 string[] array = s.Split(splitter);
974 s = "";
975 string[] array2 = array;
976 foreach (string text in array2)
977 {
978 if (!(text == id))
979 {
980 s.AddTag(text, splitter);
981 }
982 }
983 return s;
984 }

◆ Repeat()

static string ClassExtension.Repeat ( this string  str,
int  count 
)
inlinestatic

Definition at line 766 of file ClassExtension.cs.

767 {
768 StringBuilder stringBuilder = new StringBuilder();
769 for (int i = 0; i < Mathf.Abs(count); i++)
770 {
771 stringBuilder.Append(str);
772 }
773 return stringBuilder.ToString();
774 }

◆ Set< T1, T2 >()

static void ClassExtension.Set< T1, T2 > ( this Dictionary< T1, T2 >  dic,
Dictionary< T1, T2 >  from 
)
inlinestatic

Definition at line 635 of file ClassExtension.cs.

636 {
637 dic.Clear();
638 foreach (KeyValuePair<T1, T2> item in from)
639 {
640 dic[item.Key] = item.Value;
641 }
642 }

References item.

◆ SetActive() [1/2]

static void ClassExtension.SetActive ( this Component  c,
bool  enable 
)
inlinestatic

Definition at line 1314 of file ClassExtension.cs.

1315 {
1316 if (c.gameObject.activeSelf != enable)
1317 {
1318 c.gameObject.SetActive(enable);
1319 }
1320 }

Referenced by ContentQuest.RefreshTrackButtons().

◆ SetActive() [2/2]

static void ClassExtension.SetActive ( this Component  c,
bool  enable,
Action< bool >  onChangeState 
)
inlinestatic

Definition at line 1322 of file ClassExtension.cs.

1323 {
1324 if (c.gameObject.activeSelf != enable)
1325 {
1326 c.gameObject.SetActive(enable);
1327 onChangeState(enable);
1328 }
1329 }

◆ SetAlpha() [1/4]

static Color ClassExtension.SetAlpha ( this Color  c,
float  a 
)
inlinestatic

Definition at line 1213 of file ClassExtension.cs.

1214 {
1215 c.a = a;
1216 return c;
1217 }

◆ SetAlpha() [2/4]

static void ClassExtension.SetAlpha ( this Image  c,
float  a 
)
inlinestatic

Definition at line 1203 of file ClassExtension.cs.

1204 {
1205 c.color = new Color(c.color.r, c.color.g, c.color.b, a);
1206 }

References Color.

◆ SetAlpha() [3/4]

static void ClassExtension.SetAlpha ( this RawImage  c,
float  a 
)
inlinestatic

Definition at line 1208 of file ClassExtension.cs.

1209 {
1210 c.color = new Color(c.color.r, c.color.g, c.color.b, a);
1211 }

References Color.

◆ SetAlpha() [4/4]

static void ClassExtension.SetAlpha ( this Text  text,
float  aloha = 1f 
)
inlinestatic

Definition at line 1252 of file ClassExtension.cs.

1253 {
1254 text.color = new Color(text.color.r, text.color.g, text.color.b, aloha);
1255 }

References Color.

◆ SetAnchor() [1/2]

static void ClassExtension.SetAnchor ( this RectTransform  _rect,
RectPosition  anchor = RectPosition::Auto 
)
inlinestatic

Definition at line 1606 of file ClassExtension.cs.

1607 {
1608 Vector3 position = _rect.position;
1609 _rect._SetAnchor((anchor == RectPosition.Auto) ? _rect.GetAnchor() : anchor);
1610 _rect.position = position;
1611 }

◆ SetAnchor() [2/2]

static void ClassExtension.SetAnchor ( this RectTransform  r,
float  minX,
float  minY,
float  maxX,
float  maxY 
)
inlinestatic

Definition at line 1566 of file ClassExtension.cs.

1567 {
1568 r.anchorMin = new Vector2(minX, minY);
1569 r.anchorMax = new Vector2(maxX, maxY);
1570 }

◆ SetBit()

static byte ClassExtension.SetBit ( this byte  pByte,
int  bitNo,
bool  value 
)
inlinestatic

Definition at line 81 of file ClassExtension.cs.

82 {
83 if (!value)
84 {
85 return Convert.ToByte(pByte & ~(1 << bitNo));
86 }
87 return Convert.ToByte(pByte | (1 << bitNo));
88 }

◆ SetEulerAngles()

static void ClassExtension.SetEulerAngles ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1874 of file ClassExtension.cs.

1875 {
1876 vector3.Set(x, y, z);
1877 transform.eulerAngles = vector3;
1878 }

References vector3.

◆ SetEulerAnglesX()

static void ClassExtension.SetEulerAnglesX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1880 of file ClassExtension.cs.

1881 {
1882 vector3.Set(x, transform.localEulerAngles.y, transform.localEulerAngles.z);
1883 transform.eulerAngles = vector3;
1884 }

References vector3.

◆ SetEulerAnglesY()

static void ClassExtension.SetEulerAnglesY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1886 of file ClassExtension.cs.

1887 {
1888 vector3.Set(transform.localEulerAngles.x, y, transform.localEulerAngles.z);
1889 transform.eulerAngles = vector3;
1890 }

References vector3.

◆ SetEulerAnglesZ()

static void ClassExtension.SetEulerAnglesZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1892 of file ClassExtension.cs.

1893 {
1894 vector3.Set(transform.localEulerAngles.x, transform.localEulerAngles.y, z);
1895 transform.eulerAngles = vector3;
1896 }

References vector3.

◆ SetField< T >()

static void ClassExtension.SetField< T > ( this object  o,
string  name,
value 
)
inlinestatic

Definition at line 234 of file ClassExtension.cs.

235 {
236 o.GetType().GetField(name).SetValue(o, value);
237 }

◆ SetLayerRecursively()

static void ClassExtension.SetLayerRecursively ( this GameObject  obj,
int  layer 
)
inlinestatic

Definition at line 1336 of file ClassExtension.cs.

1337 {
1338 obj.layer = layer;
1339 foreach (Transform item in obj.transform)
1340 {
1341 item.gameObject.SetLayerRecursively(layer);
1342 }
1343 }

References item.

◆ SetListener()

static void ClassExtension.SetListener ( this Button::ButtonClickedEvent  e,
Action  action 
)
inlinestatic

Definition at line 1243 of file ClassExtension.cs.

1244 {
1245 e.RemoveAllListeners();
1246 e.AddListener(delegate
1247 {
1248 action();
1249 });
1250 }

References Button.

◆ SetLocalEulerAngles()

static void ClassExtension.SetLocalEulerAngles ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1922 of file ClassExtension.cs.

1923 {
1924 vector3.Set(x, y, z);
1925 transform.localEulerAngles = vector3;
1926 }

References vector3.

◆ SetLocalEulerAnglesX()

static void ClassExtension.SetLocalEulerAnglesX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1928 of file ClassExtension.cs.

1929 {
1930 vector3.Set(x, transform.localEulerAngles.y, transform.localEulerAngles.z);
1931 transform.localEulerAngles = vector3;
1932 }

References vector3.

◆ SetLocalEulerAnglesY()

static void ClassExtension.SetLocalEulerAnglesY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1934 of file ClassExtension.cs.

1935 {
1936 vector3.Set(transform.localEulerAngles.x, y, transform.localEulerAngles.z);
1937 transform.localEulerAngles = vector3;
1938 }

References vector3.

◆ SetLocalEulerAnglesZ()

static void ClassExtension.SetLocalEulerAnglesZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1940 of file ClassExtension.cs.

1941 {
1942 vector3.Set(transform.localEulerAngles.x, transform.localEulerAngles.y, z);
1943 transform.localEulerAngles = vector3;
1944 }

References vector3.

◆ SetLocalPosition()

static void ClassExtension.SetLocalPosition ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1778 of file ClassExtension.cs.

1779 {
1780 vector3.Set(x, y, z);
1781 transform.localPosition = vector3;
1782 }

References vector3.

◆ SetLocalPositionX()

static void ClassExtension.SetLocalPositionX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1784 of file ClassExtension.cs.

1785 {
1786 vector3.Set(x, transform.localPosition.y, transform.localPosition.z);
1787 transform.localPosition = vector3;
1788 }

References vector3.

◆ SetLocalPositionY()

static void ClassExtension.SetLocalPositionY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1790 of file ClassExtension.cs.

1791 {
1792 vector3.Set(transform.localPosition.x, y, transform.localPosition.z);
1793 transform.localPosition = vector3;
1794 }

References vector3.

◆ SetLocalPositionZ()

static void ClassExtension.SetLocalPositionZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1796 of file ClassExtension.cs.

1797 {
1798 vector3.Set(transform.localPosition.x, transform.localPosition.y, z);
1799 transform.localPosition = vector3;
1800 }

References vector3.

◆ SetLocalScale()

static void ClassExtension.SetLocalScale ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1826 of file ClassExtension.cs.

1827 {
1828 vector3.Set(x, y, z);
1829 transform.localScale = vector3;
1830 }

References vector3.

◆ SetLocalScaleX()

static void ClassExtension.SetLocalScaleX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1832 of file ClassExtension.cs.

1833 {
1834 vector3.Set(x, transform.localScale.y, transform.localScale.z);
1835 transform.localScale = vector3;
1836 }

References vector3.

◆ SetLocalScaleY()

static void ClassExtension.SetLocalScaleY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1838 of file ClassExtension.cs.

1839 {
1840 vector3.Set(transform.localScale.x, y, transform.localScale.z);
1841 transform.localScale = vector3;
1842 }

References vector3.

◆ SetLocalScaleZ()

static void ClassExtension.SetLocalScaleZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1844 of file ClassExtension.cs.

1845 {
1846 vector3.Set(transform.localScale.x, transform.localScale.y, z);
1847 transform.localScale = vector3;
1848 }

References vector3.

◆ SetNavigation()

static void ClassExtension.SetNavigation ( this Component  a,
Component  b,
bool  vertical = false 
)
inlinestatic

Definition at line 1084 of file ClassExtension.cs.

1085 {
1086 if (!a || !b)
1087 {
1088 return;
1089 }
1090 Selectable component = a.GetComponent<Selectable>();
1091 Selectable component2 = b.GetComponent<Selectable>();
1092 if ((bool)component && (bool)component2)
1093 {
1094 Navigation navigation = component.navigation;
1095 Navigation navigation2 = component2.navigation;
1096 if (vertical)
1097 {
1098 navigation.selectOnUp = component2;
1099 navigation2.selectOnDown = component;
1100 }
1101 else
1102 {
1103 navigation.selectOnLeft = component2;
1104 navigation2.selectOnRight = component;
1105 }
1106 component.navigation = navigation;
1107 component2.navigation = navigation2;
1108 }
1109 }

◆ SetOnClick()

static void ClassExtension.SetOnClick ( this Button  b,
Action  action 
)
inlinestatic

Definition at line 1234 of file ClassExtension.cs.

1235 {
1236 b.onClick.RemoveAllListeners();
1237 b.onClick.AddListener(delegate
1238 {
1239 action();
1240 });
1241 }

◆ SetPivot()

static void ClassExtension.SetPivot ( this RectTransform  r,
float  x,
float  y 
)
inlinestatic

Definition at line 1561 of file ClassExtension.cs.

1562 {
1563 r.pivot = new Vector2(x, y);
1564 }

◆ SetPosition()

static void ClassExtension.SetPosition ( this Transform  transform,
float  x,
float  y,
float  z 
)
inlinestatic

Definition at line 1730 of file ClassExtension.cs.

1731 {
1732 vector3.Set(x, y, z);
1733 transform.position = vector3;
1734 }

References vector3.

◆ SetPositionX()

static void ClassExtension.SetPositionX ( this Transform  transform,
float  x 
)
inlinestatic

Definition at line 1736 of file ClassExtension.cs.

1737 {
1738 vector3.Set(x, transform.position.y, transform.position.z);
1739 transform.position = vector3;
1740 }

References vector3.

◆ SetPositionY()

static void ClassExtension.SetPositionY ( this Transform  transform,
float  y 
)
inlinestatic

Definition at line 1742 of file ClassExtension.cs.

1743 {
1744 vector3.Set(transform.position.x, y, transform.position.z);
1745 transform.position = vector3;
1746 }

References vector3.

◆ SetPositionZ()

static void ClassExtension.SetPositionZ ( this Transform  transform,
float  z 
)
inlinestatic

Definition at line 1748 of file ClassExtension.cs.

1749 {
1750 vector3.Set(transform.position.x, transform.position.y, z);
1751 transform.position = vector3;
1752 }

References vector3.

◆ SetProperty< T >()

static void ClassExtension.SetProperty< T > ( this object  o,
string  name,
value 
)
inlinestatic

Definition at line 244 of file ClassExtension.cs.

245 {
246 o.GetType().GetProperty(name).SetValue(o, value);
247 }

◆ SetRect()

static void ClassExtension.SetRect ( this RectTransform  r,
float  x,
float  y,
float  w,
float  h,
float  pivotX,
float  pivotY,
float  minX,
float  minY,
float  maxX,
float  maxY 
)
inlinestatic

Definition at line 1550 of file ClassExtension.cs.

1551 {
1552 r.SetPivot(pivotX, pivotY);
1553 r.SetAnchor(minX, minY, maxX, maxY);
1554 if (w != -1f)
1555 {
1556 r.sizeDelta = new Vector2(w, h);
1557 }
1558 r.anchoredPosition = new Vector2((x == -1f) ? r.anchoredPosition.x : x, (y == -1f) ? r.anchoredPosition.y : y);
1559 }

◆ SetScale()

static void ClassExtension.SetScale ( this SpriteRenderer  renderer,
float  size 
)
inlinestatic

Definition at line 1656 of file ClassExtension.cs.

1657 {
1658 float x = renderer.bounds.size.x;
1659 float y = renderer.bounds.size.y;
1660 float x2 = size / x;
1661 float y2 = size / y;
1662 renderer.transform.localScale = new Vector3(x2, y2, 1f);
1663 }

◆ SetSlider() [1/2]

static void ClassExtension.SetSlider ( this Slider  slider,
float  value,
Func< float, string >  action,
bool  notify 
)
inlinestatic

Definition at line 1257 of file ClassExtension.cs.

1258 {
1259 slider.SetSlider(value, action, -1, -1, notify);
1260 }

◆ SetSlider() [2/2]

static void ClassExtension.SetSlider ( this Slider  slider,
float  value,
Func< float, string >  action,
int  min = -1,
int  max = -1,
bool  notify = true 
)
inlinestatic

Definition at line 1262 of file ClassExtension.cs.

1263 {
1264 slider.onValueChanged.RemoveAllListeners();
1265 slider.onValueChanged.AddListener(delegate(float a)
1266 {
1267 slider.GetComponentInChildren<Text>(includeInactive: true).text = action(a);
1268 });
1269 if (min != -1)
1270 {
1271 slider.minValue = min;
1272 slider.maxValue = max;
1273 }
1274 if (notify)
1275 {
1276 slider.value = value;
1277 }
1278 else
1279 {
1280 slider.SetValueWithoutNotify(value);
1281 }
1282 slider.GetComponentInChildren<Text>(includeInactive: true).text = action(value);
1283 }

◆ SetTag()

static string ClassExtension.SetTag ( this string  s,
string  id,
bool  enable,
char  splitter = '/' 
)
inlinestatic

Definition at line 956 of file ClassExtension.cs.

957 {
958 s = ((!enable) ? s.RemoveTag(id, splitter) : s.AddTag(id, splitter));
959 return s;
960 }

◆ SetY()

static Vector3 ClassExtension.SetY ( this Vector3  v,
float  a 
)
inlinestatic

Definition at line 1706 of file ClassExtension.cs.

1707 {
1708 v.y = a;
1709 return v;
1710 }

◆ SetZ()

static Vector3 ClassExtension.SetZ ( this Vector3  v,
float  a 
)
inlinestatic

Definition at line 1700 of file ClassExtension.cs.

1701 {
1702 v.z = a;
1703 return v;
1704 }

◆ Shuffle< TValue >()

static IList< TValue > ClassExtension.Shuffle< TValue > ( this IList< TValue >  list)
inlinestatic

Definition at line 349 of file ClassExtension.cs.

350 {
351 int num = list.Count;
352 while (num > 1)
353 {
354 int index = Rand._random.Next(num);
355 num--;
356 TValue value = list[num];
357 list[num] = list[index];
358 list[index] = value;
359 }
360 return list;
361 }
static Random _random
Definition: Rand.cs:9

References Rand._random.

◆ Sort< T >()

static void ClassExtension.Sort< T > ( this IList< T >  list,
Comparison< T >  comparison 
)
inlinestatic

Definition at line 249 of file ClassExtension.cs.

250 {
251 if (list is List<T>)
252 {
253 ((List<T>)list).Sort(comparison);
254 return;
255 }
256 List<T> list2 = new List<T>(list);
257 list2.Sort(comparison);
258 for (int i = 0; i < list.Count; i++)
259 {
260 list[i] = list2[i];
261 }
262 }

◆ SplitByNewline()

static string[] ClassExtension.SplitByNewline ( this string  text)
inlinestatic

Definition at line 644 of file ClassExtension.cs.

645 {
646 if (string.IsNullOrEmpty(text))
647 {
648 return new string[0];
649 }
650 return text.Split(new string[3] { "\r\n", "\n", "\r" }, StringSplitOptions.None);
651 }

◆ SplitNewline()

static string[] ClassExtension.SplitNewline ( this string  str)
inlinestatic

Definition at line 830 of file ClassExtension.cs.

831 {
832 return str.Split(Environment.NewLine.ToCharArray());
833 }

◆ SplitToInts()

static int[] ClassExtension.SplitToInts ( this string  str,
char  separator 
)
inlinestatic

Definition at line 819 of file ClassExtension.cs.

820 {
821 string[] array = str.Split(separator);
822 int[] array2 = new int[array.Length];
823 for (int i = 0; i < array.Length; i++)
824 {
825 array2[i] = int.Parse(array[i]);
826 }
827 return array2;
828 }

◆ StripBrackets()

static string ClassExtension.StripBrackets ( this string  str)
inlinestatic

Definition at line 776 of file ClassExtension.cs.

777 {
778 return str.Replace("\"", "").Replace("「", "").Replace("」", "")
779 .Replace("“", "")
780 .Replace("\"", "");
781 }

◆ StripLastPun()

static string ClassExtension.StripLastPun ( this string  str)
inlinestatic

Definition at line 730 of file ClassExtension.cs.

731 {
732 if (str != null)
733 {
734 return str.TrimEnd(Lang.words.period);
735 }
736 return str;
737 }
char period
Definition: Lang.cs:19
static Words words
Definition: Lang.cs:26

References Lang.Words.period, and Lang.words.

◆ StripPun()

static string ClassExtension.StripPun ( this string  str,
bool  stripComma,
bool  insertSpaceForComma = false 
)
inlinestatic

Definition at line 739 of file ClassExtension.cs.

740 {
741 StringBuilder stringBuilder = new StringBuilder();
742 foreach (char c in str)
743 {
744 if (c == Lang.words.comma)
745 {
746 if (stripComma)
747 {
748 if (insertSpaceForComma)
749 {
750 stringBuilder.Append('\u3000');
751 }
752 }
753 else
754 {
755 stringBuilder.Append(c);
756 }
757 }
758 else if (c != Lang.words.period)
759 {
760 stringBuilder.Append(c);
761 }
762 }
763 return stringBuilder.ToString();
764 }
char comma
Definition: Lang.cs:17

References Lang.Words.comma, Lang.Words.period, and Lang.words.

◆ Tag()

static string ClassExtension.Tag ( this Color  c)
inlinestatic

Definition at line 1224 of file ClassExtension.cs.

1225 {
1226 return "<color=" + $"#{(int)(c.r * 255f):X2}{(int)(c.g * 255f):X2}{(int)(c.b * 255f):X2}" + ">";
1227 }
$
Definition: ModManager.cs:87

References $.

◆ TagColor() [1/2]

static string ClassExtension.TagColor ( this string  s,
Color  c 
)
inlinestatic

Definition at line 936 of file ClassExtension.cs.

937 {
938 return "<color=" + c.ToHex() + ">" + s + "</color>";
939 }

◆ TagColor() [2/2]

static string ClassExtension.TagColor ( this string  s,
Color  c,
string  txt 
)
inlinestatic

Definition at line 931 of file ClassExtension.cs.

932 {
933 return s + "<color=" + c.ToHex() + ">" + txt + "</color>";
934 }

◆ TagSize() [1/2]

static string ClassExtension.TagSize ( this string  s,
int  size 
)
inlinestatic

Definition at line 946 of file ClassExtension.cs.

947 {
948 return "<size=" + size + ">" + s + "</size>";
949 }

◆ TagSize() [2/2]

static string ClassExtension.TagSize ( this string  s,
string  txt,
int  size 
)
inlinestatic

Definition at line 941 of file ClassExtension.cs.

942 {
943 return s + "<size=" + size + ">" + txt + "</size>";
944 }

◆ ToBytes()

static byte[] ClassExtension.ToBytes ( this BitArray  bits)
inlinestatic

Definition at line 69 of file ClassExtension.cs.

70 {
71 byte[] array = new byte[(bits.Length - 1) / 8 + 1];
72 bits.CopyTo(array, 0);
73 return array;
74 }

◆ ToColor()

static Color ClassExtension.ToColor ( this string  s)
inlinestatic

Definition at line 1196 of file ClassExtension.cs.

1197 {
1198 Color color = Color.white;
1199 ColorUtility.TryParseHtmlString("#" + s, out color);
1200 return color;
1201 }

References Color.

◆ ToDictionary< T >()

static void ClassExtension.ToDictionary< T > ( this IList< UPair< T > >  list,
ref Dictionary< string, T >  dic 
)
inlinestatic

Definition at line 610 of file ClassExtension.cs.

611 {
612 dic = new Dictionary<string, T>();
613 for (int i = 0; i < list.Count; i++)
614 {
615 dic.Add(list[i].name, list[i].value);
616 }
617 }

◆ ToEnum< T >() [1/3]

static T ClassExtension.ToEnum< T > ( this int  value)
inlinestatic

Definition at line 135 of file ClassExtension.cs.

136 {
137 return (T)Enum.ToObject(typeof(T), value);
138 }

◆ ToEnum< T >() [2/3]

static T ClassExtension.ToEnum< T > ( this long  value)
inlinestatic

Definition at line 140 of file ClassExtension.cs.

141 {
142 return (T)Enum.ToObject(typeof(T), value);
143 }

◆ ToEnum< T >() [3/3]

static T ClassExtension.ToEnum< T > ( this string  value,
bool  ignoreCase = true 
)
inlinestatic

Definition at line 145 of file ClassExtension.cs.

146 {
147 return (T)Enum.Parse(typeof(T), value, ignoreCase);
148 }

◆ ToField< T >()

static T ClassExtension.ToField< T > ( this string  s,
object  o 
)
inlinestatic

Definition at line 214 of file ClassExtension.cs.

215 {
216 return (T)o.GetType().GetField(s).GetValue(o);
217 }

◆ ToFloat()

static float ClassExtension.ToFloat ( this string  str)
inlinestatic

Definition at line 711 of file ClassExtension.cs.

712 {
713 float result = 0f;
714 try
715 {
716 if (!float.TryParse(str, out result))
717 {
718 Debug.Log("exception: ToFlat1" + str);
719 result = 1f;
720 }
721 }
722 catch
723 {
724 Debug.Log("exception: ToFlat2" + str);
725 result = 1f;
726 }
727 return result;
728 }

References Debug.

◆ ToFormat() [1/2]

static string ClassExtension.ToFormat ( this int  a)
inlinestatic

Definition at line 899 of file ClassExtension.cs.

900 {
901 return $"{a:#,0}";
902 }

References $.

◆ ToFormat() [2/2]

static string ClassExtension.ToFormat ( this long  a)
inlinestatic

Definition at line 904 of file ClassExtension.cs.

905 {
906 return $"{a:#,0}";
907 }

References $.

◆ ToggleActive()

static void ClassExtension.ToggleActive ( this Component  c)
inlinestatic

Definition at line 1309 of file ClassExtension.cs.

1310 {
1311 c.SetActive(!c.gameObject.activeSelf);
1312 }

◆ ToggleKeyword()

static void ClassExtension.ToggleKeyword ( this Material  m,
string  id,
bool  enable 
)
inlinestatic

Definition at line 1970 of file ClassExtension.cs.

1971 {
1972 if (enable)
1973 {
1974 m.EnableKeyword(id);
1975 }
1976 else
1977 {
1978 m.DisableKeyword(id);
1979 }
1980 }

◆ ToHex()

static string ClassExtension.ToHex ( this Color  c)
inlinestatic

Definition at line 1229 of file ClassExtension.cs.

1230 {
1231 return $"#{(int)(c.r * 255f):X2}{(int)(c.g * 255f):X2}{(int)(c.b * 255f):X2}";
1232 }

References $.

◆ ToInt() [1/2]

static int ClassExtension.ToInt ( this string  str)
inlinestatic

Definition at line 693 of file ClassExtension.cs.

694 {
695 if (int.TryParse(str, out var result))
696 {
697 return result;
698 }
699 return 0;
700 }

◆ ToInt() [2/2]

static int ClassExtension.ToInt ( this string  str,
Type  type 
)
inlinestatic

Definition at line 682 of file ClassExtension.cs.

683 {
684 FieldInfo field = type.GetField(str, BindingFlags.Static | BindingFlags.Public | BindingFlags.FlattenHierarchy);
685 if (field == null)
686 {
687 Debug.LogError("Field is null:" + str + "/" + type);
688 return -1;
689 }
690 return (int)field.GetValue(null);
691 }

References Debug.

◆ ToInt2()

static int ClassExtension.ToInt2 ( this float  a)
inlinestatic

Definition at line 100 of file ClassExtension.cs.

101 {
102 return (int)(a * 100f);
103 }

◆ ToInt3()

static int ClassExtension.ToInt3 ( this float  a)
inlinestatic

Definition at line 90 of file ClassExtension.cs.

91 {
92 return (int)(a * 1000f);
93 }

◆ ToInt< T >()

static int ClassExtension.ToInt< T > ( this string  str)
inlinestatic

Definition at line 677 of file ClassExtension.cs.

678 {
679 return str.ToInt(typeof(T));
680 }

◆ ToLong()

static long ClassExtension.ToLong ( this string  str)
inlinestatic

Definition at line 702 of file ClassExtension.cs.

703 {
704 if (long.TryParse(str, out var result))
705 {
706 return result;
707 }
708 return 0L;
709 }

◆ ToShortNumber()

static string ClassExtension.ToShortNumber ( this int  a)
inlinestatic

Definition at line 856 of file ClassExtension.cs.

857 {
858 if (a < 0)
859 {
860 string text;
861 if (a > -1000000)
862 {
863 if (a <= -1000)
864 {
865 return a / 1000 + "K";
866 }
867 text = a.ToString();
868 if (text == null)
869 {
870 return "";
871 }
872 }
873 else
874 {
875 text = a / 1000000 + "M";
876 }
877 return text;
878 }
879 string text2;
880 if (a < 1000000)
881 {
882 if (a >= 1000)
883 {
884 return a / 1000 + "K";
885 }
886 text2 = a.ToString();
887 if (text2 == null)
888 {
889 return "";
890 }
891 }
892 else
893 {
894 text2 = a / 1000000 + "M";
895 }
896 return text2;
897 }

◆ ToText()

static string ClassExtension.ToText ( this int  a,
bool  skipIfZero = true 
)
inlinestatic

Definition at line 909 of file ClassExtension.cs.

910 {
911 object obj;
912 if (!(a == 0 && skipIfZero))
913 {
914 if (a >= 0)
915 {
916 return "+" + a;
917 }
918 obj = a.ToString();
919 if (obj == null)
920 {
921 return "";
922 }
923 }
924 else
925 {
926 obj = "";
927 }
928 return (string)obj;
929 }

◆ ToTitleCase()

static string ClassExtension.ToTitleCase ( this string  s,
bool  wholeText = false 
)
inlinestatic

Definition at line 1036 of file ClassExtension.cs.

1037 {
1038 if (!Lang.setting.capitalize)
1039 {
1040 return s;
1041 }
1042 char[] array = s.ToCharArray();
1043 bool flag = true;
1044 for (int i = 0; i < array.Length; i++)
1045 {
1046 if (flag)
1047 {
1048 array[i] = char.ToUpper(array[i]);
1049 flag = false;
1050 }
1051 if (!wholeText)
1052 {
1053 break;
1054 }
1055 if (array[i] == ' ')
1056 {
1057 flag = true;
1058 }
1059 }
1060 return new string(array);
1061 }
bool capitalize
Definition: LangSetting.cs:34

References LangSetting.capitalize, and Lang.setting.

◆ ToType()

static Type ClassExtension.ToType ( this string  value)
inlinestatic

Definition at line 150 of file ClassExtension.cs.

151 {
152 return Type.GetType("Elona." + value + ", Assembly-CSharp");
153 }

◆ ToVector2()

static Vector2 ClassExtension.ToVector2 ( this Vector3  self)
inlinestatic

Definition at line 1651 of file ClassExtension.cs.

1652 {
1653 return new Vector2(self.x, self.z);
1654 }

◆ TrimNewLines()

static string ClassExtension.TrimNewLines ( this string  text)
inlinestatic

Definition at line 810 of file ClassExtension.cs.

811 {
812 while (text.EndsWith(Environment.NewLine))
813 {
814 text = text.Substring(0, text.Length - Environment.NewLine.Length);
815 }
816 return text;
817 }

◆ TryAddExtension()

static string ClassExtension.TryAddExtension ( this string  s,
string  ext 
)
inlinestatic

Definition at line 783 of file ClassExtension.cs.

784 {
785 if (!s.Contains("." + ext))
786 {
787 return s + "." + ext;
788 }
789 return s;
790 }

◆ TryGet< TValue >() [1/2]

static TValue ClassExtension.TryGet< TValue > ( this IList< TValue >  array,
int  index,
bool  returnNull 
)
inlinestatic

Definition at line 285 of file ClassExtension.cs.

286 {
287 if (index >= array.Count)
288 {
289 return default(TValue);
290 }
291 return array[index];
292 }

◆ TryGet< TValue >() [2/2]

static TValue ClassExtension.TryGet< TValue > ( this IList< TValue >  array,
int  index,
int  defIndex = -1 
)
inlinestatic

Definition at line 264 of file ClassExtension.cs.

265 {
266 if (array.Count != 0)
267 {
268 if (index >= array.Count)
269 {
270 if (defIndex != -1)
271 {
272 if (array.Count <= defIndex)
273 {
274 return array[Mathf.Max(0, array.Count - 1)];
275 }
276 return array[defIndex];
277 }
278 return array[Mathf.Max(0, array.Count - 1)];
279 }
280 return array[Math.Max(0, index)];
281 }
282 return default(TValue);
283 }

◆ TryGetValue< TKey, TValue >() [1/2]

static TValue ClassExtension.TryGetValue< TKey, TValue > ( this IDictionary< TKey, TValue >  source,
TKey  key,
TKey  key_fallback 
)
inlinestatic

Definition at line 373 of file ClassExtension.cs.

374 {
375 TValue value = default(TValue);
376 if (key != null && source.TryGetValue(key, out value))
377 {
378 return value;
379 }
380 return source[key_fallback];
381 }

◆ TryGetValue< TKey, TValue >() [2/2]

static TValue ClassExtension.TryGetValue< TKey, TValue > ( this IDictionary< TKey, TValue >  source,
TKey  key,
TValue  fallback = default(TValue) 
)
inlinestatic

Definition at line 363 of file ClassExtension.cs.

364 {
365 TValue value = default(TValue);
366 if (key != null && source.TryGetValue(key, out value))
367 {
368 return value;
369 }
370 return fallback;
371 }

◆ Within() [1/2]

static bool ClassExtension.Within ( this byte  v,
byte  v2,
byte  range 
)
inlinestatic

Definition at line 174 of file ClassExtension.cs.

175 {
176 if (v - v2 >= range)
177 {
178 return v - v2 < -range;
179 }
180 return true;
181 }

◆ Within() [2/2]

static bool ClassExtension.Within ( this int  v,
int  v2,
int  range 
)
inlinestatic

Definition at line 165 of file ClassExtension.cs.

166 {
167 if (v - v2 >= range)
168 {
169 return v - v2 < -range;
170 }
171 return true;
172 }

Member Data Documentation

◆ pluralizer

IPluralize ClassExtension.pluralizer = new Pluralizer()
static

Definition at line 18 of file ClassExtension.cs.

Referenced by langPlural(), and Pluralize().

◆ vector3


The documentation for this class was generated from the following file: