Table of Contents

Class EntityManager

Namespace
VoxelPlayground.Gaming
Assembly
GamePlay.dll
public class EntityManager : Singleton<EntityManager>
Inheritance
object
EntityManager
Inherited Members
Extension Methods

Fields

aimRedPoint

public GameObject aimRedPoint

Field Value

GameObject

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

Vector2Int

clearWeapons

[NonSerialized]
[ShowInInspector]
public List<EntityAttachmentItem> clearWeapons

Field Value

List<EntityAttachmentItem>

clearWeaponsRange

public Vector2Int clearWeaponsRange

Field Value

Vector2Int

entityNotifier

public EntityNotifier entityNotifier

Field Value

EntityNotifier

onPlayerSpanwed

public static Action<EntityCharacter> onPlayerSpanwed

Field Value

Action<EntityCharacter>

overlapExclusionColliderPrefab

public GameObject overlapExclusionColliderPrefab

Field Value

GameObject

pingObj

public PingObj pingObj

Field Value

PingObj

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

center Vector3
radius float
chemical ChemicalPropety
exceptExplosive bool

AddEntities(Entity[])

public void AddEntities(Entity[] entities)

Parameters

entities Entity[]

AddEntity(Entity)

public void AddEntity(Entity entity)

Parameters

entity Entity

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

whiteList List<EntityCharacter>

ClearAllWithAnimation()

public void ClearAllWithAnimation()

ClearAndReset()

public void ClearAndReset()

DestroyEntity(Entity)

public void DestroyEntity(Entity entity)

Parameters

entity Entity

DuplicateItem(EntityItem)

public void DuplicateItem(EntityItem item)

Parameters

item EntityItem

FindClosestCharacter(Vector3, Predicate<EntityCharacter>)

public EntityCharacter FindClosestCharacter(Vector3 center, Predicate<EntityCharacter> predicate)

Parameters

center Vector3
predicate Predicate<EntityCharacter>

Returns

EntityCharacter

GetCharactersInRange(Vector3, float)

public List<EntityCharacter> GetCharactersInRange(Vector3 center, float radius)

Parameters

center Vector3
radius float

Returns

List<EntityCharacter>

GetClosestAvailableWeaponInRange(Vector3, EntityAttachmentItem, out float, float)

public EntityAttachmentItem GetClosestAvailableWeaponInRange(Vector3 centerPos, EntityAttachmentItem ignoreWeapon, out float dist, float radius = 1)

Parameters

centerPos Vector3
ignoreWeapon EntityAttachmentItem
dist float
radius float

Returns

EntityAttachmentItem

GetCurrentUserCount(Entity)

public int GetCurrentUserCount(Entity coverObject)

Parameters

coverObject Entity

Returns

int

GetEquippableItemsInRange(Vector3, float)

public List<EntityAttachmentItem> GetEquippableItemsInRange(Vector3 center, float radius)

Parameters

center Vector3
radius float

Returns

List<EntityAttachmentItem>

GetItemsInRange(Vector3, float, GripPose, EntityAttachmentItem)

public List<EntityAttachmentItem> GetItemsInRange(Vector3 center, float radius, GripPose gripPose = GripPose.All, EntityAttachmentItem ignore = null)

Parameters

center Vector3
radius float
gripPose GripPose
ignore EntityAttachmentItem

Returns

List<EntityAttachmentItem>

GetNearestBuildingElement(Vector3, float)

public EntityAttachmentItem GetNearestBuildingElement(Vector3 position, float radius)

Parameters

position Vector3
radius float

Returns

EntityAttachmentItem

GetRemainingCapacity(Entity)

public int GetRemainingCapacity(Entity coverObject)

Parameters

coverObject Entity

Returns

int

GetWalkableEntityVoxel(Vector3, float, int)

public List<VoxelVolume> GetWalkableEntityVoxel(Vector3 center, float radius, int minimalObjectVoxelCount = 50)

Parameters

center Vector3
radius float
minimalObjectVoxelCount int

Returns

List<VoxelVolume>

IsCoverAtCapacity(Entity)

public bool IsCoverAtCapacity(Entity coverObject)

Parameters

coverObject Entity

Returns

bool

KillAllEnemies()

[Button]
public void KillAllEnemies()

RegisterCoverObject(Entity, EntityCharacter)

public bool RegisterCoverObject(Entity coverObject, EntityCharacter entityCharacter)

Parameters

coverObject Entity
entityCharacter EntityCharacter

Returns

bool

RemoveEntity(string)

public Entity RemoveEntity(string name)

Parameters

name string

Returns

Entity

RemoveEntity(Entity)

public void RemoveEntity(Entity entity)

Parameters

entity Entity

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

prefab GameObject
position Vector3
onBeforeInit Action<GameObject>
rotation Quaternion

Returns

GameObject

SpawnBlueprint(BlueprintData, Vector3, Quaternion)

public void SpawnBlueprint(BlueprintData data, Vector3 targetPos, Quaternion targetRot = default)

Parameters

data BlueprintData
targetPos Vector3
targetRot Quaternion

SpawnCharacter(CharacterData, Vector3)

public void SpawnCharacter(CharacterData data, Vector3 spawnPoint)

Parameters

data CharacterData
spawnPoint Vector3

SpawnCharacterAsync(CharacterData, Vector3)

public UniTask<EntityCharacter> SpawnCharacterAsync(CharacterData data, Vector3 spawnPoint)

Parameters

data CharacterData
spawnPoint Vector3

Returns

UniTask<EntityCharacter>

SpawnCharacterAtLocation(CharacterData, Vector3, Quaternion)

public UniTask<EntityCharacter> SpawnCharacterAtLocation(CharacterData data, Vector3 worldPos, Quaternion rotation)

Parameters

data CharacterData
worldPos Vector3
rotation Quaternion

Returns

UniTask<EntityCharacter>

SpawnItem(ItemData)

public GameObject SpawnItem(ItemData data)

Parameters

data ItemData

Returns

GameObject

SpawnItemAtLocation(GameObject, Vector3, Quaternion, Action<GameObject>)

public GameObject SpawnItemAtLocation(GameObject prefab, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)

Parameters

prefab GameObject
worldPos Vector3
rotation Quaternion
objBeforeInit Action<GameObject>

Returns

GameObject

SpawnItemAtLocation(ItemData, Vector3, Quaternion, Action<GameObject>)

public GameObject SpawnItemAtLocation(ItemData data, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)

Parameters

data ItemData
worldPos Vector3
rotation Quaternion
objBeforeInit Action<GameObject>

Returns

GameObject

SpawnItemByKey(string, Vector3, Quaternion, Action<GameObject>)

public GameObject SpawnItemByKey(string key, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)

Parameters

key string
worldPos Vector3
rotation Quaternion
objBeforeInit Action<GameObject>

Returns

GameObject

SpawnItemByKey(string)

[Button]
public GameObject SpawnItemByKey(string key)

Parameters

key string

Returns

GameObject

SpawnItemByName(string, Vector3, Quaternion)

public GameObject SpawnItemByName(string itemName, Vector3 pos, Quaternion rot)

Parameters

itemName string
pos Vector3
rot Quaternion

Returns

GameObject

SpawnItemByType(BuiltinEntityType, Vector3, Quaternion, Action<GameObject>)

public GameObject SpawnItemByType(BuiltinEntityType entityType, Vector3 worldPos, Quaternion rotation, Action<GameObject> objBeforeInit = null)

Parameters

entityType BuiltinEntityType
worldPos Vector3
rotation Quaternion
objBeforeInit Action<GameObject>

Returns

GameObject

UnregisterCoverObject(Entity, EntityCharacter)

public void UnregisterCoverObject(Entity coverObject, EntityCharacter entityCharacter)

Parameters

coverObject Entity
entityCharacter EntityCharacter