public void RemoveEntity(AssembledEntity entity) { TerraDBService db = Game.Instance.GetService <TerraDBService>(); Entities.Remove(entity); OnRemoveEntity?.Invoke(new RuntimeTerraEntity(entity, db)); }
public IEnumerator <RuntimeTerraEntity> GetEnumerator() { TerraDBService db = Game.Instance.GetService <TerraDBService>(); foreach (AssembledEntity entity in Entities) { yield return(new RuntimeTerraEntity(entity, db)); } }
public RuntimeTerraEntity(AssembledEntity entity, TerraDBService db) { entity.TerraPosition3D.InstanceId = entity.TerraEntity.InstanceId; Position = new TerraPosition3DComponent(db, entity.TerraPosition3D); Entity = entity.TerraEntity; Entity.OnLabelAdded += (labelEntity, label) => OnLabelAdded?.Invoke(this, label); Entity.OnLabelRemoved += (labelEntity, label) => OnLabelRemoved?.Invoke(this, label); EntityTypeData = TerraGameResources.Instance.TerraEntityPrefabConfig.GetEntityConfig(this); DB = db; }
public TerraWorldDataStreamer( TerraWorldViewModel terraWorldViewModel, TerraWorldService terraWorldService, TerraChunkService terraChunkService, TerraEntitiesViewModel terraEntitiesViewModel, TerraDBService db) { _terraWorldViewModel = terraWorldViewModel; _terraWorldService = terraWorldService; _terraChunkService = terraChunkService; _terraEntitiesViewModel = terraEntitiesViewModel; _db = db; }
public TerraView() { _terraWorldViewModel = Game.Instance.GetViewModel <TerraWorldViewModel>(0); _terraEntitiesViewModel = Game.Instance.GetViewModel <TerraEntitiesViewModel>(0); _terraWorldService = Game.Instance.GetService <TerraWorldService>(); _terraChunkService = Game.Instance.GetService <TerraChunkService>(); _db = Game.Instance.GetService <TerraDBService>(); _dataStreamers = new ViewDataStreamerGroup(new IDataStreamer[] { new TerraWorldDataStreamer( _terraWorldViewModel, _terraWorldService, _terraChunkService, _terraEntitiesViewModel, _db ) }); _terraWorldViewModel.OnWorldSet += TerraWorldViewModelOnWorldSet; _terraEntitiesViewModel.OnAddEntity += TerraEntitiesViewModelOnAddEntity; }
public AbstractEntityComponent(TerraDBService DB, TData Data) { this.DB = DB; _Data = Data; }
public TerraPosition3DComponent(TerraDBService DB, TerraPosition3D Data) : base(DB, Data) { }
public TerraWorldChunk(TerraPoint[,] points, TerraDBService db, TerraArea area) : base(points) { _db = db; _area = area; }