internal void SetOrderEntity(EntityState entity) { _orderingEntity = entity.Entity; _shipFCDB = _orderingEntity.GetDataBlob <FireControlAbilityDB>(); _weaponNames = new Dictionary <Guid, string>(); _unAssignedWeapons = new List <Guid>(); _systemEntityNames = new Dictionary <Guid, string>(); _systemEntites = new Dictionary <Guid, Entity>(); for (int fcInstanceIndex = 0; fcInstanceIndex < _shipFCDB.FireControlInsances.Count; fcInstanceIndex++) { var fireControlInstance = _shipFCDB.FireControlComponents[fcInstanceIndex].GetDataBlob <ComponentInstanceInfoDB>(); } for (int weaponInstanceIndex = 0; weaponInstanceIndex < _shipFCDB.WeaponInstanceStates.Count; weaponInstanceIndex++) { var weaponInstanace = _shipFCDB.WeaponComponents[weaponInstanceIndex].GetDataBlob <ComponentInstanceInfoDB>(); string wpnname = weaponInstanace.GetName(); _weaponNames.Add(weaponInstanace.OwningEntity.Guid, wpnname); //_weapons.Add(wpnname); if (weaponInstanace.OwningEntity.GetDataBlob <WeaponInstanceStateDB>().FireControl == null) { _unAssignedWeapons.Add(weaponInstanace.OwningEntity.Guid); } } foreach (var item in _state.FactionUIState.GetEntitiesForSystem(_orderingEntity.Manager)) { if (item.HasDataBlob <NameDB>() && item.HasDataBlob <PositionDB>()) { string name = item.GetDataBlob <NameDB>().GetName(_state.Faction); _systemEntityNames.Add(item.Guid, name); _systemEntites.Add(item.Guid, item); } } }
internal void SetOrderEntity(EntityState entity) { _orderingEntity = entity.Entity; _shipFCDB = _orderingEntity.GetDataBlob <FireControlAbilityDB>(); _weaponNames = new Dictionary <Guid, string>(); _unAssignedWeapons = new List <Guid>(); _systemEntityNames = new Dictionary <Guid, string>(); _sensorContacts = new Dictionary <Guid, SensorContact>(); var instancesDB = entity.Entity.GetDataBlob <ComponentInstancesDB>(); if (instancesDB.TryGetComponentsByAttribute <BeamFireControlAtbDB>(out var fcinstances)) { foreach (var instanceData in fcinstances) { var fcdata = instanceData.Design.GetAttribute <BeamFireControlAtbDB>(); } } for (int weaponInstanceIndex = 0; weaponInstanceIndex < _shipFCDB.WeaponInstances.Count; weaponInstanceIndex++) { var weaponInstanace = _shipFCDB.WeaponInstances[weaponInstanceIndex]; string wpnname = weaponInstanace.GetName(); _weaponNames.Add(weaponInstanace.ID, wpnname); //_weapons.Add(wpnname); if (weaponInstanace.GetAbilityState <WeaponState>().FireControl == null) { _unAssignedWeapons.Add(weaponInstanace.ID); } } foreach (var item in _state.SelectedSystem.GetSensorContacts(_state.Faction.Guid).GetAllContacts()) { var entityItem = item.ActualEntity; string name = entityItem.GetDataBlob <NameDB>().GetName(_state.Faction); _systemEntityNames.Add(item.ActualEntityGuid, name); _sensorContacts.Add(item.ActualEntityGuid, item); } /* * foreach (var item in _state.FactionUIState.GetEntitiesForSystem(_orderingEntity.Manager)) * { * if (item.HasDataBlob<NameDB>() && item.HasDataBlob<PositionDB>()) * { * string name = item.GetDataBlob<NameDB>().GetName(_state.Faction); * _systemEntityNames.Add(item.Guid, name); * _systemEntites.Add(item.Guid, item); * * } * }*/ }