Class EntityManager
- Namespace
- VoxelPlayground.Gaming
- Assembly
- GamePlay.dll
public class EntityManager : Singleton<EntityManager>
- Inheritance
-
objectEntityManager
- Inherited Members
- Extension Methods
Fields
aimRedPoint
public GameObject aimRedPoint
Field Value
clearCharacters
[Header("Waiting to be Clear")]
[NonSerialized]
[ShowInInspector]
public List<EntityCharacter> clearCharacters
Field Value
- List<EntityCharacter>
clearCharactersRange
[InfoBox("清理列队 数量小于x的不被清理 大于y的直接清理 介于xy之间的静止8s后清理", InfoMessageType.Info, null)]
public Vector2Int clearCharactersRange
Field Value
clearWeapons
[NonSerialized]
[ShowInInspector]
public List<EntityAttachmentItem> clearWeapons
Field Value
- List<EntityAttachmentItem>
clearWeaponsRange
public Vector2Int clearWeaponsRange
Field Value
entityNotifier
public EntityNotifier entityNotifier
Field Value
onPlayerSpanwed
public static Action<EntityCharacter> onPlayerSpanwed
Field Value
- Action<EntityCharacter>
overlapExclusionColliderPrefab
public GameObject overlapExclusionColliderPrefab
Field Value
pingObj
public PingObj pingObj
Field Value
Properties
entities
public List<Entity> entities { get; }
Property Value
- List<Entity>
Methods
AddEffectInRange(Vector3, float, ChemicalPropety, bool)
public void AddEffectInRange(Vector3 center, float radius, ChemicalPropety chemical, bool exceptExplosive = false)
Parameters
centerVector3radiusfloatchemicalChemicalPropetyexceptExplosivebool
AddEntities(Entity[])
public void AddEntities(Entity[] entities)
Parameters
entitiesEntity[]
AddEntity(Entity)
public void AddEntity(Entity entity)
Parameters
entityEntity
Awake()
Awake is called when the script instance is being loaded.
protected override void Awake()
ClearAll()
public void ClearAll()
ClearAllEntityCharacter(List<EntityCharacter>)
public void ClearAllEntityCharacter(List<EntityCharacter> whiteList = null)
Parameters
whiteListList<EntityCharacter>
ClearAllWithAnimation()
public void ClearAllWithAnimation()
ClearAndReset()
public void ClearAndReset()
DestroyEntity(Entity)
public void DestroyEntity(Entity entity)
Parameters
entityEntity
DuplicateItem(EntityItem)
public void DuplicateItem(EntityItem item)
Parameters
itemEntityItem
FindClosestCharacter(Vector3, Predicate<EntityCharacter>)
public EntityCharacter FindClosestCharacter(Vector3 center, Predicate<EntityCharacter> predicate)
Parameters
centerVector3predicatePredicate<EntityCharacter>
Returns
GetCharactersInRange(Vector3, float)
public List<EntityCharacter> GetCharactersInRange(Vector3 center, float radius)
Parameters
centerVector3radiusfloat
Returns
- List<EntityCharacter>
GetClosestAvailableWeaponInRange(Vector3, EntityAttachmentItem, out float, float)
public EntityAttachmentItem GetClosestAvailableWeaponInRange(Vector3 centerPos, EntityAttachmentItem ignoreWeapon, out float dist, float radius = 1)
Parameters
centerPosVector3ignoreWeaponEntityAttachmentItemdistfloatradiusfloat
Returns
GetCurrentUserCount(Entity)
public int GetCurrentUserCount(Entity coverObject)
Parameters
coverObjectEntity
Returns
- int
GetEquippableItemsInRange(Vector3, float)
public List<EntityAttachmentItem> GetEquippableItemsInRange(Vector3 center, float radius)
Parameters
centerVector3radiusfloat
Returns
- List<EntityAttachmentItem>
GetItemsInRange(Vector3, float, GripPose, EntityAttachmentItem)
public List<EntityAttachmentItem> GetItemsInRange(Vector3 center, float radius, GripPose gripPose = GripPose.All, EntityAttachmentItem ignore = null)
Parameters
centerVector3radiusfloatgripPoseGripPoseignoreEntityAttachmentItem
Returns
- List<EntityAttachmentItem>
GetNearestBuildingElement(Vector3, float)
public EntityAttachmentItem GetNearestBuildingElement(Vector3 position, float radius)
Parameters
positionVector3radiusfloat
Returns
GetRemainingCapacity(Entity)
public int GetRemainingCapacity(Entity coverObject)
Parameters
coverObjectEntity
Returns
- int
GetWalkableEntityVoxel(Vector3, float, int)
public List<VoxelVolume> GetWalkableEntityVoxel(Vector3 center, float radius, int minimalObjectVoxelCount = 50)
Parameters
centerVector3radiusfloatminimalObjectVoxelCountint
Returns
- List<VoxelVolume>
IsCoverAtCapacity(Entity)
public bool IsCoverAtCapacity(Entity coverObject)
Parameters
coverObjectEntity
Returns
- bool
KillAllEnemies()
[Button]
public void KillAllEnemies()
RegisterCoverObject(Entity, EntityCharacter)
public bool RegisterCoverObject(Entity coverObject, EntityCharacter entityCharacter)
Parameters
coverObjectEntityentityCharacterEntityCharacter
Returns
- bool
RemoveEntity(string)
public Entity RemoveEntity(string name)
Parameters
namestring
Returns
RemoveEntity(Entity)
public void RemoveEntity(Entity entity)
Parameters
entityEntity
ResetBuildings()
public void ResetBuildings()
Spawn(GameObject, Vector3, Action<GameObject>, Quaternion)
public GameObject Spawn(GameObject prefab, Vector3 position, Action<GameObject> onBeforeInit = null, Quaternion rotation = default)
Parameters
prefabGameObjectpositionVector3onBeforeInitAction<GameObject>rotationQuaternion
Returns
SpawnBlueprint(BlueprintData, Vector3, Quaternion)
public void SpawnBlueprint(BlueprintData data, Vector3 targetPos, Quaternion targetRot = default)
Parameters
dataBlueprintDatatargetPosVector3targetRotQuaternion
SpawnCharacter(CharacterData, Vector3)
public void SpawnCharacter(CharacterData data, Vector3 spawnPoint)
Parameters
dataCharacterDataspawnPointVector3
SpawnCharacterAsync(CharacterData, Vector3)
public UniTask<EntityCharacter> SpawnCharacterAsync(CharacterData data, Vector3 spawnPoint)
Parameters
dataCharacterDataspawnPointVector3
Returns
- UniTask<EntityCharacter>
SpawnCharacterAtLocation(CharacterData, Vector3, Quaternion)
public UniTask<EntityCharacter> SpawnCharacterAtLocation(CharacterData data, Vector3 worldPos, Quaternion rotation)
Parameters
dataCharacterDataworldPosVector3rotationQuaternion
Returns
- UniTask<EntityCharacter>
SpawnItem(ItemData)
public GameObject SpawnItem(ItemData data)
Parameters
dataItemData
Returns
SpawnItemAtLocation(GameObject, Vector3, Quaternion, Action<GameObject>)
public GameObject SpawnItemAtLocation(GameObject prefab, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)
Parameters
prefabGameObjectworldPosVector3rotationQuaternionobjBeforeInitAction<GameObject>
Returns
SpawnItemAtLocation(ItemData, Vector3, Quaternion, Action<GameObject>)
public GameObject SpawnItemAtLocation(ItemData data, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)
Parameters
dataItemDataworldPosVector3rotationQuaternionobjBeforeInitAction<GameObject>
Returns
SpawnItemByKey(string, Vector3, Quaternion, Action<GameObject>)
public GameObject SpawnItemByKey(string key, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)
Parameters
keystringworldPosVector3rotationQuaternionobjBeforeInitAction<GameObject>
Returns
SpawnItemByKey(string)
[Button]
public GameObject SpawnItemByKey(string key)
Parameters
keystring
Returns
SpawnItemByName(string, Vector3, Quaternion)
public GameObject SpawnItemByName(string itemName, Vector3 pos, Quaternion rot)
Parameters
itemNamestringposVector3rotQuaternion
Returns
SpawnItemByType(BuiltinEntityType, Vector3, Quaternion, Action<GameObject>)
public GameObject SpawnItemByType(BuiltinEntityType entityType, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)
Parameters
entityTypeBuiltinEntityTypeworldPosVector3rotationQuaternionobjBeforeInitAction<GameObject>
Returns
UnregisterCoverObject(Entity, EntityCharacter)
public void UnregisterCoverObject(Entity coverObject, EntityCharacter entityCharacter)
Parameters
coverObjectEntityentityCharacterEntityCharacter