Example #1
0
        public override void Initialize()
        {
            base.Initialize();

            var reflectionManager = IoCManager.Resolve <IReflectionManager>();
            var type = reflectionManager.LooseGetType(_templateName);

            DebugTools.Assert(type != null);
            _inventory = (Inventory)Activator.CreateInstance(type);

            _window = new InventoryWindow(this);
            _window.CreateInventory(_inventory);

            if (Owner.TryGetComponent(out _sprite))
            {
                foreach (var mask in _inventory.SlotMasks.OrderBy(s => _inventory.SlotDrawingOrder(s)))
                {
                    if (mask == Slots.NONE)
                    {
                        continue;
                    }
                    _sprite.LayerMapReserveBlank(mask);
                }
            }

            // Component state already came in but we couldn't set anything visually because, well, we didn't initialize yet.
            foreach (var(slot, entity) in _slots)
            {
                _setSlot(slot, entity);
            }
        }
Example #2
0
        public override void ExposeData(EntitySerializer serializer)
        {
            base.ExposeData(serializer);

            Window          = new InventoryWindow(this);
            OpenMenuCommand = InputCommand.FromDelegate(() => { Window.AddToScreen(); Window.Open(); });
            serializer.DataField(ref TemplateName, "Template", "HumanInventory");
            Window.CreateInventory(TemplateName);
        }
Example #3
0
    private void StartGame()
    {
        Vector3 startPosition = map.GenerateMap();

        SetPlayerResources();
        inventoryWindow.CreateInventory(playerResources);
        craftingWindow.CreateCraftingWindow(playerResources);
        boatMovement.SetPosition(startPosition);
        boatMovement.SetBorders(Vector3.zero, map.GetBorder());
        prevBoatPosition = startPosition;
        CloseAllWindows();
        ChangeGameMod(true);
        boatCameraAnimation.StartSmoothMovement();
    }