Entity
اعلان
public class Strawberry.Core.Entity
نمایانگر یک موجود (Entity) بازی است که میتواند شامل جزء (Component)، فرزندان و برچسب باشد.
ارثبری از: Strawberry.ReferenceObject
سازندهها
Entity
یک نمونهی جدید از کلاس Entity میسازد.
void Entity()
ویژگیها
AllComponents
همهی جزء (Component) متصل به این موجود را دریافت میکند.
List<BaseComponent> AllComponents { get }
Scene
صحنهای (Scene) که مالک این موجود است را دریافت میکند.
Scene Scene { get }
ID
شناسهی این موجود را دریافت میکند.
string ID { get }
Destroyed
مقداری را دریافت میکند که نشان میدهد آیا این موجود نابود شده است یا نه.
bool Destroyed { get }
Tag
برچسبهای جداشده با ویرگول اختصاصیافته به این موجود را دریافت یا تنظیم میکند. تنظیم این ویژگی برچسبها را از رشتهی جداشده با ویرگول اضافه میکند.
string Tag { get set }
UpdateBegan
مقداری را دریافت میکند که نشان میدهد آیا موجود فاز بروزرسانی خود را آغاز کرده است.
bool UpdateBegan { get }
Updated
مقداری را دریافت میکند که نشان میدهد آیا موجود فاز بروزرسانی خود را کامل کرده است.
bool Updated { get }
UpdateEnded
مقداری را دریافت میکند که نشان میدهد آیا موجود فاز بروزرسانی خود را پایان داده است.
bool UpdateEnded { get }
PauseState
پرچمهای وضعیت توقف این موجود را دریافت یا تنظیم میکند.
PauseStateFlags PauseState { get set }
Parent
موجود والد این موجود را دریافت یا تنظیم میکند. تنظیم والد، مجموعهی فرزندان روی والد قدیمی و جدید را بهروز میکند.
Entity Parent { get set }
Children
موجودهای فرزند متعلق به این موجود را دریافت میکند.
EntityCollection Children { get }
فیلدها
Components protected
مجموعهی جزء (Component) متصل به این موجود را نگه میدارد.
ComponentCollection Components
متدها
Initialize
موجود را با یک شناسه و صحنهی مالک مقداردهی اولیه میکند.
void Initialize(string id, Scene owner)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
id |
System.String |
شناسهی موجود. |
owner |
Strawberry.Core.Scene |
صحنهای (Scene) که مالک موجود است. |
Initialize
موجود را بهعنوان فرزند موجود دیگری مقداردهی اولیه میکند.
void Initialize(string id, Entity parent)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
id |
System.String |
شناسهی موجود. |
parent |
Strawberry.Core.Entity |
موجود والد. |
Enable
موجود را فعال میکند و منطق مقداردهی اولیهی آن را راهاندازی میکند.
void Enable()
IsChildOf
تعیین میکند آیا این موجود فرزند (نسلی) از موجود والد مشخصشده است یا نه.
bool IsChildOf(Entity parent)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
parent |
Strawberry.Core.Entity |
موجود نیای احتمالی. |
خروجی: true اگر این موجود فرزند یا نسل والد باشد؛ در غیر این صورت false.
AddComponent
یک جزء (Component) جدید از نوع T میسازد و به موجود اضافه میکند.
T AddComponent<T>()
خروجی: نمونهی جزء ساختهشده.
پارامترهای نوع:
T— نوع جزء.
AddComponent
یک نمونهی جزء موجود را به موجود اضافه میکند.
T AddComponent<T>(T component)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
component |
T |
نمونهی جزء برای اضافهکردن. |
خروجی: جزء اضافهشده.
پارامترهای نوع:
T— نوع جزء.
AddComponents
یک مجموعه از جزءهای جدید به موجود اضافه میکند.
void AddComponents<T>(List<T> components)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
components |
System.Collections.Generic.List |
فهرست جزءها برای اضافهکردن. |
پارامترهای نوع:
T— نوع جزء.
GetComponent
اولین جزء از نوع T متصل به موجود را دریافت میکند.
T GetComponent<T>()
خروجی: نمونهی جزء یا null اگر یافت نشد.
پارامترهای نوع:
T— نوع جزء.
TryGetComponent
تلاش میکند اولین جزء از نوع T متصل به موجود را دریافت کند.
bool TryGetComponent<T>(out T component)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
component |
out T |
اولین جزء از نوع T یا null اگر یافت نشد |
خروجی: true اگر جزء از نوع وجود داشته باشد
پارامترهای نوع:
T— نوع جزء
HasComponent
تعیین میکند آیا این موجود حاوی جزء از نوع T است یا نه.
bool HasComponent<T>()
خروجی: true اگر جزء وجود داشته باشد؛ در غیر این صورت false.
پارامترهای نوع:
T— نوع جزء.
GetComponents
همهی جزءهای از نوع T متصل به این موجود را دریافت میکند.
T[] GetComponents<T>()
خروجی: آرایهای از جزءهای منطبق.
پارامترهای نوع:
T— نوع جزء.
GetComponents
همهی جزءهای متصل به این موجود را دریافت میکند.
BaseComponent[] GetComponents()
خروجی: آرایهای از جزءهای متصل.
GetComponentIndex
اندیس جزء مشخصشده در فهرست جزءهای موجود را دریافت میکند.
int GetComponentIndex(BaseComponent component)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
component |
Strawberry.Core.BaseComponent |
جزء برای یافتن. |
خروجی: اندیس مبتنی بر صفر، یا -1 اگر یافت نشد.
SetComponentIndex
اندیس جزء مشخصشده در فهرست جزءهای موجود را تنظیم میکند.
void SetComponentIndex(BaseComponent component, int index)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
component |
Strawberry.Core.BaseComponent |
جزء برای جابجایی. |
index |
System.Int32 |
موقعیت اندیس جدید. |
RemoveComponent
اولین جزء از نوع T را از موجود حذف میکند.
void RemoveComponent<T>()
پارامترهای نوع:
T— نوع جزء برای حذف.
RemoveComponent
نمونهی جزء مشخصشده را از موجود حذف میکند.
void RemoveComponent(BaseComponent component)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
component |
Strawberry.Core.BaseComponent |
نمونهی جزء برای حذف. |
ClearComponents
همهی جزءهای متصل به موجود را حذف و نابود میکند.
void ClearComponents()
Destroy override
موجود و همهی فرزندانش را برای حذف علامتگذاری میکند. موجودها تا پایان EndUpdate در صحنه (Scene) (یا در مجموعهی Children والدشان) باقی میمانند.
void Destroy()
AddTag
یک برچسب به این موجود اضافه میکند.
void AddTag(string tag)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
tag |
System.String |
برچسب برای اضافهکردن. |
RemoveTag
یک برچسب را از این موجود حذف میکند.
void RemoveTag(string tag)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
tag |
System.String |
برچسب برای حذف. |
HasTag
بررسی میکند آیا این موجود حاوی برچسب مشخصشده است یا نه.
bool HasTag(string tag)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
tag |
System.String |
برچسب برای بررسی. |
خروجی: true اگر موجود برچسب را داشته باشد؛ در غیر این صورت false.
OnInitialize virtual
موجود را مقداردهی اولیه میکند و callback های راهاندازی جزء را راهاندازی میکند.
void OnInitialize(string id, Scene owner)
پارامترها:
| نام | نوع | توضیحات |
|---|---|---|
id |
System.String |
شناسهی موجود. |
owner |
Strawberry.Core.Scene |
صحنهی مالک. |
OnDestroy
پاکسازی موجود را با فراخوانی callback های disable و finish روی جزءهای متصل مدیریت میکند.
void OnDestroy()
OnBeginUpdate
آغاز چرخهی بروزرسانی را برای این موجود و فرزندانش انجام میدهد.
void OnBeginUpdate()
OnEndUpdate
پایان چرخهی بروزرسانی را برای این موجود و فرزندانش انجام میدهد.
void OnEndUpdate()
OnUpdate
این موجود و فرزندانش را در چرخهی بروزرسانی بهروز میکند.
void OnUpdate()
OnFixedUpdate
بروزرسانیهای fixed-step را برای این موجود و فرزندانش انجام میدهد.
void OnFixedUpdate()
OnRender
این موجود و فرزندانش را رندر میکند.
void OnRender()