internal bool SendItems(ItemsContainer items, AlterraShippingTarget target)
        {
            QuickLogger.Debug($"Starting Transfer to {target.GetInstanceID()}", true);
            QuickLogger.Debug($"Target Found: {target.Name}", true);
            QuickLogger.Debug($"Target IsReceivingTransfer: {target.IsReceivingTransfer}", true);

            if (_mono == null)
            {
                _mono = gameObject.GetComponent <AlterraShippingTarget>();
            }

            if (!target.IsReceivingTransfer)
            {
                QuickLogger.Debug($"Starting Transfer to {target.Name}", true);
                _target = target;
                _items  = items;
                _done   = false;
                _target.IsReceivingTransfer = true;
                _currentTime = GetTime(_target);
                _target.OnReceivingTransfer?.Invoke();
            }
            else
            {
                QuickLogger.Message(string.Format(AlterraShippingBuildable.TargetIsShipping(), _target.Name), true);
            }

            return(true);
        }
コード例 #2
0
        public static void Patch()
        {
            var assembly = Assembly.GetExecutingAssembly();

            QuickLogger.Info("Started patching. Version: " + QuickLogger.GetAssemblyVersion(assembly));

#if DEBUG
            QuickLogger.DebugLogsEnabled = true;
            QuickLogger.Debug("Debug logs enabled");
#endif

            try
            {
                AddTechFabricatorItems();

                AlterraShippingBuildable.PatchSMLHelper();

                var harmony = HarmonyInstance.Create("com.alterrashipping.fcstudios");
                harmony.PatchAll(Assembly.GetExecutingAssembly());

                QuickLogger.Info("Finished patching");
            }
            catch (Exception ex)
            {
                QuickLogger.Error(ex);
            }
        }
        private void CreateNewContainer()
        {
            if (_container == null)
            {
                QuickLogger.Debug("Initializing Container");
                _container = new ItemsContainer(ContainerWidth, ContainerHeight, _containerRoot.transform,
                                                AlterraShippingBuildable.StorageLabel(), null);
                _container.Resize(ContainerWidth, ContainerHeight);
                _container.isAllowedToAdd    += IsAllowedToAdd;
                _container.isAllowedToRemove += IsAllowedToRemove;

                _container.onAddItem    += _target.OnAddItemEvent;
                _container.onRemoveItem += _target.OnRemoveItemEvent;
            }
        }