CandideServer.ServerManagers.LogisticsServerManager_Repeating
Type JSONpublic class in CandideServer.ServerManagers
Type metadata
- Assembly
CandideServer - Namespace
CandideServer.ServerManagers - Base type
System.Object - Hash
B5479B65358AD831E77459DAC4E654742BF2AB32E0CFC3CB676E72556F6737EC
Relationships
Base type
System.Object
Fields
| Name | Visibility | Signature |
|---|---|---|
Args# | private | private CandideServer.ServerManagers.RepeatingCheckBuildingDestructiveArgs Args |
_changedTargetResourceIds# | private | private System.Collections.Generic.Dictionary<System.Guid, System.Collections.Generic.HashSet<System.String>> _changedTargetResourceIds |
Methods
CheckIsDone
#
private System.Void CheckIsDone(CandideServer.ServerManagers.RepeatingCheckBuildingDestructiveArgs args)
Method metadata
- Visibilityprivate
- Return type
System.Void - StaticTrue
- VirtualFalse
- Hash
B3672C9EC7A9B892266D5DAF15C9B59D3FA911831C3497949B763760C5DCEB9B - Body hash
65C5B655792825CCA7962770C4D528FD7E1919981E7A1BF9721C181701D88647 - IL size52
DoRepeatingLogistics
#
public System.Void DoRepeatingLogistics()
Method metadata
- Visibilitypublic
- Return type
System.Void - StaticTrue
- VirtualFalse
- Hash
3EB02EE055BF233E2DED2E9DFE859E7615564E8996EA39AD9C1D1751B85E59AC - Body hash
76587989EBF6576E03AB7E1062E813B9E6BCBD2129F3226775C83CE825724C66 - IL size232
Referenced calls
System.Collections.Generic.Dictionary<System.Guid, System.Collections.Generic.HashSet<System.String>>::.ctor()System.Collections.Generic.Dictionary<System.Guid, CandideServer.SimulationModels.BuildingSimulationModel>::GetEnumerator()Dictionary.Enumerator<System.Guid, CandideServer.SimulationModels.BuildingSimulationModel>::get_Current()System.Collections.Generic.KeyValuePair<System.Guid, CandideServer.SimulationModels.BuildingSimulationModel>::Deconstruct(!0&, !1&)CandideServer.ServerManagers.LogisticsServerManager_Repeating::DoRepeatingLogisticsForBuilding(CandideServer.Models.Buildings.BuildingInstanceModel)Dictionary.Enumerator<System.Guid, CandideServer.SimulationModels.BuildingSimulationModel>::MoveNext()System.IDisposable::Dispose()System.Collections.Generic.Dictionary<System.Guid, System.Collections.Generic.HashSet<System.String>>::get_Count()System.Collections.Generic.Dictionary<System.Guid, System.Collections.Generic.HashSet<System.String>>::GetEnumerator()Dictionary.Enumerator<System.Guid, System.Collections.Generic.HashSet<System.String>>::get_Current()System.Collections.Generic.KeyValuePair<System.Guid, System.Collections.Generic.HashSet<System.String>>::Deconstruct(!0&, !1&)CandideServer.ServerGameState::TryGetInternalResourceStorage(System.Guid, CandideServer.Models.InternalResourceStorageModel&)CandideServer.MessageModels.InternalResourceStorage.UpdateInternalResourceStorageChangedMessage::.ctor()CandideServer.Models.InternalResourceStorageModel::ToResourceAmountsUpdates(System.Collections.Generic.HashSet<System.String>)Dictionary.Enumerator<System.Guid, System.Collections.Generic.HashSet<System.String>>::MoveNext()CandideServer.MessageModels.InternalResourceStorage.UpdateManyInternalResourceStorageChangedMessage::.ctor()CandideServer.ServerServices.InternalResourceStorageServerService::Send_InternalResourceStorageChanged(CandideServer.MessageModels.InternalResourceStorage.UpdateManyInternalResourceStorageChangedMessage)
DoRepeatingLogisticsForBuilding
#
private System.Void DoRepeatingLogisticsForBuilding(CandideServer.Models.Buildings.BuildingInstanceModel sourceBuilding)
Method metadata
- Visibilityprivate
- Return type
System.Void - StaticTrue
- VirtualFalse
- Hash
3825DD7076374F333C5499781CDF9BD5FD96A1AC50C60E885847C896BEA4A771 - Body hash
439AE3967E26163C0F2B09F48C6542FD42E8E5A35D7AC4EDA0D5448EFFD66BF1 - IL size218
Referenced calls
System.Collections.Generic.List<System.Guid>::get_Count()System.Nullable<System.Guid>::get_HasValue()System.Nullable<System.Guid>::get_Value()CandideServer.ServerGameState::TryGetInventory(System.Guid, Shared.Models.Items.SharedInventoryModel&)System.Nullable<System.Guid>::.ctor(!0)CandideServer.ServerManagers.LogisticsServerManager_Repeating::LootAllThroughOutputConnections(System.Collections.Generic.List<System.Guid>, Shared.Models.Items.SharedInventoryModel, System.Boolean, System.Nullable<System.Guid>)CandideServer.ServerManagers.ServerSimpleInventoryManager_Server::Server_InventoryApplyManyDelta(System.Collections.Generic.IReadOnlyCollection<Shared.Inventory.DeltaModels.DeltaAction>)CandideCreator.Shared.Helpers.ServerWarningHelper::Warning(System.String)CandideServer.ServerGameState::TryGetInternalResourceStorage(System.Guid, CandideServer.Models.InternalResourceStorageModel&)CandideServer.Models.InternalResourceStorageModel::IsEmpty()CandideServer.ServerManagers.LogisticsServerManager_Repeating::Resources_MoveWhateverPossibleFromSourceToDestination(CandideServer.Models.Buildings.BuildingInstanceModel, CandideServer.Models.InternalResourceStorageModel)
String literals
DoRepeatingLogisticsForBuilding: Failed moving items
LogisticsRepeating_Resources_CheckBuilding
#
public System.Void LogisticsRepeating_Resources_CheckBuilding(System.Guid buildingId, System.Nullable<System.Guid> inputStorageId, System.Nullable<System.Guid> outputStorageId, System.Boolean checkOutputs, System.Boolean checkStorage, CandideServer.ServerManagers.RepeatingCheckBuildingDestructiveArgs args)
Method metadata
- Visibilitypublic
- Return type
System.Void - StaticTrue
- VirtualFalse
- Hash
3635323971AC137C969A3E2754842512ECAF18E38BDFB5044DDDF56CA54EB878 - Body hash
1C3DC72D43799D44AB2BFF01D4E85B7AD370C8F520C708D4B47468CBBDB2EFC3 - IL size213
Referenced calls
System.Collections.Generic.Dictionary<System.Guid, CandideServer.ServerManagers.RepeatingResourceResult>::ContainsKey(!0)CandideCreator.Shared.Helpers.ServerWarningHelper::Warning(System.String)System.Collections.Generic.Dictionary<System.String, System.Int32>::.ctor()System.Nullable<System.Guid>::get_HasValue()System.Nullable<System.Guid>::get_Value()CandideServer.ServerGameState::TryGetInternalResourceStorage(System.Guid, CandideServer.Models.InternalResourceStorageModel&)CandideServer.ServerManagers.LogisticsServerManager_Repeating::<LogisticsRepeating_Resources_CheckBuilding>g__CheckResourceStorage|9_0(CandideServer.Models.InternalResourceStorageModel, LogisticsServerManager_Repeating.<>c__DisplayClass9_0&)System.Collections.Generic.Dictionary<System.Guid, CandideServer.ServerManagers.RepeatingResourceResult>::set_Item(!0, !1)CandideServer.ServerManagers.LogisticsServerManager_Repeating::CheckIsDone(CandideServer.ServerManagers.RepeatingCheckBuildingDestructiveArgs)
Called by
String literals
Tried to check same building twice in LogisticsRepeating_Resources_CheckBuilding
LootAllThroughOutputConnections
#
private Shared.Inventory.DeltaModels.DeltaComplexResult LootAllThroughOutputConnections(System.Collections.Generic.List<System.Guid> outputConnectionIds, Shared.Models.Items.SharedInventoryModel sourceInventory, System.Boolean allowPartialStack, System.Nullable<System.Guid> sourceBuildingIdCheck)
Method metadata
- Visibilityprivate
- Return type
Shared.Inventory.DeltaModels.DeltaComplexResult - StaticTrue
- VirtualFalse
- Hash
988F0291BE35B68A70E2A8DED434DDB4C5FCB79F3BD48B76B281A7064D1E5F92 - Body hash
A17A4FEFE53A43A8EA282938BF0D092107C325641FD3C3C15319A807ADE4D6E6 - IL size215
Referenced calls
System.Collections.Generic.List<Shared.Models.Items.SharedInventoryModel>::.ctor()System.Collections.Generic.List<Shared.Models.Items.SharedInventoryModel>::Add(!0)System.Collections.Generic.List<System.Guid>::GetEnumerator()List.Enumerator<System.Guid>::get_Current()CandideServer.ServerGameState::TryGetLogisticsConnection(System.Guid, CandideServer.Models.Logistics.LogisticsConnectionModel&)CandideServer.ServerGameState::TryGetBuilding(System.Guid, CandideServer.SimulationModels.BuildingSimulationModel&)System.Nullable<System.Guid>::get_HasValue()System.Nullable<System.Guid>::GetValueOrDefault()System.Guid::op_Equality(System.Guid, System.Guid)System.Exception::.ctor(System.String)System.Nullable<System.Guid>::get_Value()CandideServer.ServerGameState::TryGetInventory(System.Guid, Shared.Models.Items.SharedInventoryModel&)List.Enumerator<System.Guid>::MoveNext()System.IDisposable::Dispose()System.Collections.Generic.List<Shared.Models.Items.SharedInventoryModel>::ToArray()Shared.Inventory.ComplexInventoryDeltaEngine::LootAllIntoMany(Shared.Models.Items.SharedInventoryModel[], System.Int32, System.Boolean)
Called by
String literals
Call Samuel about Items Logistics Connection
MoveStuffIntoOutputConnectionIds
#
public System.Boolean MoveStuffIntoOutputConnectionIds(Shared.Models.Items.SharedInventoryModel sourceInventory, CandideServer.Models.InternalResourceStorageModel sourceStorage, System.Collections.Generic.List<System.Guid> outputConnectionIds, Shared.Models.Items.ItemAmount[] itemAmounts, Shared.Models.Items.ResourceAmount[] resourceAmounts, System.Boolean allowPartialStack)
Method metadata
- Visibilitypublic
- Return type
System.Boolean - StaticTrue
- VirtualFalse
- Hash
6B675F18D14AD246BD4D26223B2C15D498781DBA4DB753254721D7D83D7E7402 - Body hash
E5314542B0068E0CF5092CC689E53777B358D1498E2548A01284F851C6B8D6AA - IL size641
Referenced calls
CandideServer.ServerManagers.RepeatingCheckBuildingDestructiveArgs::Clear()System.Linq.Enumerable::ToArray(System.Collections.Generic.IEnumerable<!!0>)System.Nullable<System.UInt64>::get_HasValue()System.NotImplementedException::.ctor(System.String)System.ArgumentException::.ctor(System.String)CandideServer.ServerManagers.LogisticsServerManager_Repeating::LootAllThroughOutputConnections(System.Collections.Generic.List<System.Guid>, Shared.Models.Items.SharedInventoryModel, System.Boolean, System.Nullable<System.Guid>)System.Collections.Generic.List<System.Guid>::GetEnumerator()List.Enumerator<System.Guid>::get_Current()System.Collections.Generic.Dictionary<System.Guid, CandideServer.Models.Logistics.LogisticsConnectionModel>::TryGetValue(!0, !1&)System.Collections.Generic.Dictionary<System.Guid, CandideServer.SimulationModels.BuildingSimulationModel>::TryGetValue(!0, !1&)CandideServer.ServerManagers.LogisticsServerManager_Repeating::LogisticsRepeating_Resources_CheckBuilding(System.Guid, System.Nullable<System.Guid>, System.Nullable<System.Guid>, System.Boolean, System.Boolean, CandideServer.ServerManagers.RepeatingCheckBuildingDestructiveArgs)List.Enumerator<System.Guid>::MoveNext()System.IDisposable::Dispose()CandideServer.ServerManagers.ServerSimpleInventoryManager_Server::Server_InventoryApplyManyDelta(System.Collections.Generic.IReadOnlyCollection<Shared.Inventory.DeltaModels.DeltaAction>)System.Collections.Generic.HashSet<System.String>::.ctor()System.Collections.Generic.List<System.ValueTuple<CandideServer.Models.InternalResourceStorageModel, System.Collections.Generic.HashSet<System.String>>>::.ctor()System.Collections.Generic.Dictionary<System.Guid, CandideServer.ServerManagers.RepeatingResourceResult>::GetEnumerator()Dictionary.Enumerator<System.Guid, CandideServer.ServerManagers.RepeatingResourceResult>::get_Current()System.Collections.Generic.KeyValuePair<System.Guid, CandideServer.ServerManagers.RepeatingResourceResult>::Deconstruct(!0&, !1&)System.Nullable<System.Guid>::get_HasValue()System.Nullable<System.Guid>::get_Value()CandideServer.ServerGameState::TryGetInternalResourceStorage(System.Guid, CandideServer.Models.InternalResourceStorageModel&)CandideServer.ServerManagers.RepeatingResourceResult::GetResourceAmounts()CandideServer.ServerControllers.InternalResourceStorageSController::MoveWhateverPossibleFromSourceToDestination(CandideServer.Models.InternalResourceStorageModel, CandideServer.Models.InternalResourceStorageModel, Shared.Models.Items.ResourceAmount[], System.Int32, System.Collections.Generic.HashSet<System.String>, System.Collections.Generic.HashSet<System.String>)System.ValueTuple<CandideServer.Models.InternalResourceStorageModel, System.Collections.Generic.HashSet<System.String>>::.ctor(!0, !1)System.Collections.Generic.List<System.ValueTuple<CandideServer.Models.InternalResourceStorageModel, System.Collections.Generic.HashSet<System.String>>>::Add(!0)Dictionary.Enumerator<System.Guid, CandideServer.ServerManagers.RepeatingResourceResult>::MoveNext()System.Collections.Generic.List<System.ValueTuple<CandideServer.Models.InternalResourceStorageModel, System.Collections.Generic.HashSet<System.String>>>::get_Count()CandideServer.ServerManagers.InternalResourceStorageServerManager::SendMultipleUpdatedStorageResourceAmounts(System.Collections.Generic.List<System.ValueTuple<CandideServer.Models.InternalResourceStorageModel, System.Collections.Generic.HashSet<System.String>>>)CandideCreator.Shared.Helpers.ServerWarningHelper::Warning(System.String)
Called by
CandideServer.ServerManagers.TradeRoutesServerManager::Do_CancelledDumpEverythingAtDestinationCandideServer.ServerManagers.TradeRoutesServerManager::Do_CancelledDumpEverythingAtHomeCandideServer.ServerManagers.TradeRoutesServerManager::Do_WaitingToUnloadAtDestinationCandideServer.ServerManagers.TradeRoutesServerManager::Do_WaitingToUnloadAtHome
String literals
Money value support needs to be implementedInventory is null but itemAmounts is not empty.Storage is null but resourceAmounts is not empty.Partial fault inside MoveStuffIntoOutputConnectionIds. Probably we ran out of space but good to investigate.
Resources_MoveWhateverPossibleFromSourceToDestination
#
private System.Void Resources_MoveWhateverPossibleFromSourceToDestination(CandideServer.Models.Buildings.BuildingInstanceModel sourceBuilding, CandideServer.Models.InternalResourceStorageModel sourceOutputStorage)
Method metadata
- Visibilityprivate
- Return type
System.Void - StaticTrue
- VirtualFalse
- Hash
959A88F4EB6A5AD399F7FC50A4067FDE1556E2F2F58C0F3F6C71ECB2565ABE63 - Body hash
1E5E759F6DF725A2DD6AC1B74ABDED36142CE4A63A4C85BE35E4144FE4988CC6 - IL size403
Referenced calls
CandideServer.Models.InternalResourceStorageModel::ToResourceAmountsArray()System.Collections.Generic.Dictionary<System.Guid, System.Collections.Generic.HashSet<System.String>>::TryGetValue(!0, !1&)System.Collections.Generic.HashSet<System.String>::.ctor()System.Collections.Generic.Dictionary<System.Guid, System.Collections.Generic.HashSet<System.String>>::set_Item(!0, !1)System.Collections.Generic.List<System.Guid>::GetEnumerator()List.Enumerator<System.Guid>::get_Current()CandideServer.ServerGameState::TryGetLogisticsConnection(System.Guid, CandideServer.Models.Logistics.LogisticsConnectionModel&)CandideServer.ServerGameState::TryGetBuilding(System.Guid, CandideServer.SimulationModels.BuildingSimulationModel&)System.Guid::op_Equality(System.Guid, System.Guid)System.Exception::.ctor(System.String)System.Nullable<System.Guid>::get_HasValue()System.Nullable<System.Guid>::get_Value()CandideServer.ServerGameState::TryGetInternalResourceStorage(System.Guid, CandideServer.Models.InternalResourceStorageModel&)CandideServer.ServerControllers.InternalResourceStorageSController::MoveWhateverPossibleFromSourceToDestination(CandideServer.Models.InternalResourceStorageModel, CandideServer.Models.InternalResourceStorageModel, Shared.Models.Items.ResourceAmount[], System.Int32, System.Collections.Generic.HashSet<System.String>, System.Collections.Generic.HashSet<System.String>)CandideServer.ServerManagers.LogisticsServerManager_Repeating::<Resources_MoveWhateverPossibleFromSourceToDestination>g__UpdateSourceResourceAmounts|6_0(LogisticsServerManager_Repeating.<>c__DisplayClass6_0&)List.Enumerator<System.Guid>::MoveNext()System.IDisposable::Dispose()
Called by
String literals
Call Samuel about Resource Logistics Connection
TryProduceOutputAndRemoveIngredients
#
public CandideServer.Buildings.BuildingControllers.LogisticsResult TryProduceOutputAndRemoveIngredients(CandideServer.Models.Buildings.BuildingInstanceModel buildingInstance, Shared.Models.Items.ItemAmount[] itemIngredients, Shared.Models.Items.ResourceAmount[] resourceIngredients, CandideServer.Models.InternalResourceStorageModel internalResourceStorage, CandideServer.Models.InternalResourceStorageModel outputResourceStorage, Shared.Models.Items.SharedInventoryModel storageInventory, Shared.Models.Items.SharedInventoryModel outputInventory, System.String outputCraftedId, System.Int32 amount, System.String auraId, Shared.Data.DataModels.WorkOrderType type)
Method metadata
- Visibilitypublic
- Return type
CandideServer.Buildings.BuildingControllers.LogisticsResult - StaticTrue
- VirtualFalse
- Hash
FEADF706977F9054B15FC69ADA25FD8A0226B2BBCDBC37945F61DA15AE3DA830 - Body hash
85BC6323900E718043C4AA49211963C339CCF5364BDE85814958D2C26E97B1BF - IL size726
Referenced calls
System.Collections.Generic.HashSet<System.Int32>::.ctor()System.String::Concat(System.String, System.String)CandideCreator.Shared.Helpers.ServerWarningHelper::Warning(System.String)CandideServer.ServerControllers.AddItemAmountMessage::.ctor()CandideServer.Helpers.LogisticalBuildingHelper::Building_CheckSpaceExistsForAddItem(CandideServer.ServerControllers.AddItemAmountMessage, Shared.Models.Items.SharedInventoryModel)CandideServer.Helpers.LogisticalBuildingHelper::Building_TryAddItemAmount(Shared.Models.Items.SharedInventoryModel, System.String, System.Int32, System.String, System.Boolean, System.Nullable<System.Int32>, System.Collections.Generic.HashSet<System.Int32>)CandideServer.ServerControllers.InternalResourceStorageSController::TryAddToStorage(CandideServer.Models.InternalResourceStorageModel, System.String, System.Int32)CandideServer.SyncStrategies.SyncStrategy::Everyone()CandideServer.ServerManagers.RewardsServerManager::UnlockReward(System.String, System.Nullable<System.Guid>, CandideServer.SyncStrategies.SyncStrategy, CandideServer.MessageModels.RewardUnlockType)System.ArgumentOutOfRangeException::.ctor(System.String, System.Object, System.String)CandideServer.ServerControllers.ServerJobException::.ctor(System.String)CandideServer.ServerControllers.SimpleInventorySController::ExpendItemAmount(Shared.Models.Items.SharedInventoryModel, System.String, System.Int32, System.Collections.Generic.HashSet<System.Int32>)CandideServer.ServerControllers.InternalResourceStorageSController::DepleteResources(CandideServer.Models.InternalResourceStorageModel, Shared.Models.Items.ResourceAmount[], System.Collections.Generic.Dictionary<System.String, CandideServer.Models.Logistics.LogisticsConnectionParameter>)System.Nullable<System.Guid>::.ctor(!0)System.Nullable<System.Guid>::get_HasValue()System.Nullable<System.Guid>::GetValueOrDefault()System.Guid::op_Equality(System.Guid, System.Guid)
Called by
String literals
Couldn't find OutputInventory forError when trying to add work order output to OutputInventoryCouldn't find OutputStorage forError when trying to add work order output to OutputResourceStoragetypeStorageInventory disappeared after we had already checked it exists. NoCitizenTryProduceOutputAndRemoveIngredients: Error when trying to remove items from the storage inventoryError when trying to consume resources while finishing work order in
TryRemoveIngredients
#
public CandideServer.Buildings.BuildingControllers.LogisticsResult TryRemoveIngredients(CandideServer.Models.Buildings.BuildingInstanceModel buildingInstance, Shared.Models.Items.ItemAmount[] itemIngredients, Shared.Models.Items.ResourceAmount[] resourceIngredients, CandideServer.Models.InternalResourceStorageModel internalResourceStorage, Shared.Models.Items.SharedInventoryModel storageInventory)
Method metadata
- Visibilitypublic
- Return type
CandideServer.Buildings.BuildingControllers.LogisticsResult - StaticTrue
- VirtualFalse
- Hash
340E1E6E1DD4C33C2CDB83FBC16FC02D0DB33FAEC663FA8B2B556CA954BBFBD2 - Body hash
F5332D75B6F9C3A1A40358541749FE3045D86B680BF426BE7184916337881DBC - IL size191
Referenced calls
System.Collections.Generic.HashSet<System.Int32>::.ctor()CandideServer.ServerControllers.ServerJobException::.ctor(System.String)CandideServer.ServerControllers.SimpleInventorySController::ExpendItemAmount(Shared.Models.Items.SharedInventoryModel, System.String, System.Int32, System.Collections.Generic.HashSet<System.Int32>)System.String::Concat(System.String, System.String)CandideCreator.Shared.Helpers.ServerWarningHelper::Warning(System.String)CandideServer.ServerControllers.InternalResourceStorageSController::DepleteResources(CandideServer.Models.InternalResourceStorageModel, Shared.Models.Items.ResourceAmount[], System.Collections.Generic.Dictionary<System.String, CandideServer.Models.Logistics.LogisticsConnectionParameter>)
String literals
StorageInventory disappeared after we had already checked it exists. NoCitizenTryRemoveIngredients: Error when trying to remove items from the storage inventoryError when trying to consume resources while finishing work order in