Example #1
0
        private bool onStateChange(CustomizerModelEvents.CustomizerStateChangedEvent evt)
        {
            CustomizerState customizerState = (this.customizerState = evt.NewState);

            noSelectionState.CurrentState = customizerState;
            return(false);
        }
        private bool onTilingToggled(CustomizerWidgetEvents.TileValueChanged evt)
        {
            CustomizerState state = customizerModel.State;

            if (state == CustomizerState.DECAL)
            {
                itemModel.CurrentChannel.IsDecalTiled = evt.Value;
            }
            return(false);
        }
        private bool onToggleActiveSwatch(CustomizerActiveSwatchEvents.ToggleActiveSwatch evt)
        {
            CustomizerState state           = customizerModel.State;
            CustomizerState customizerState = state;

            switch (state)
            {
            case CustomizerState.DECAL:
                customizerState = CustomizerState.FABRIC;
                break;

            case CustomizerState.FABRIC:
                customizerState = CustomizerState.DECAL;
                break;
            }
            if (customizerState != state)
            {
                changeState(customizerState);
            }
            return(false);
        }
 public CustomizerModel(DItemCustomization itemCustomization)
 {
     this.itemCustomization = itemCustomization;
     state = CustomizerState.FABRIC;
 }
        private void changeState(CustomizerState newState)
        {
            bool isFabric = false;
            bool flag     = false;

            prevState    = currentState;
            currentState = newState;
            switch (newState)
            {
            case CustomizerState.FABRIC:
                customizerModel.State = CustomizerState.FABRIC;
                ClothingDesignerContext.EventBus.DispatchEvent(default(ClothingDesignerUIEvents.EnableDragAreaControllerUpdates));
                isFabric = true;
                flag     = true;
                if (Service.Get <CatalogServiceProxy>().IsCatalogThemeActive())
                {
                    changeSubScreen(fabricScreenSingles);
                }
                else
                {
                    changeSubScreen(fabricScreenGrouped);
                }
                currentSubScreen.GetComponent <FabricScreenController>().Init(customizerModel);
                break;

            case CustomizerState.DECAL:
                customizerModel.State = CustomizerState.DECAL;
                ClothingDesignerContext.EventBus.DispatchEvent(default(ClothingDesignerUIEvents.EnableDragAreaControllerUpdates));
                flag = true;
                if (Service.Get <CatalogServiceProxy>().IsCatalogThemeActive())
                {
                    changeSubScreen(decalScreenSingles);
                }
                else
                {
                    changeSubScreen(decalScreenGrouped);
                }
                currentSubScreen.GetComponent <DecalScreenController>().Init(customizerModel);
                break;

            case CustomizerState.SAVE:
                customizerModel.State = CustomizerState.SAVE;
                ClothingDesignerContext.EventBus.DispatchEvent(default(ClothingDesignerUIEvents.DisableDragAreaControllerUpdates));
                CustomizationContext.EventBus.DispatchEvent(default(CustomizerWidgetEvents.ShowCoinCountWidget));
                changeSubScreen(saveScreen);
                currentSubScreen.GetComponent <SaveScreenController>().SetSaveScreenInformation(customizerModel.ItemCustomization.TemplateSprite, customizerModel.ItemCustomization.TemplateDefinition.Cost);
                CustomizationContext.EventBus.DispatchEvent(default(CustomizerUIEvents.SwitchToSave));
                break;

            case CustomizerState.SAVE_CATALOG:
                customizerModel.State = CustomizerState.SAVE_CATALOG;
                ClothingDesignerContext.EventBus.DispatchEvent(default(ClothingDesignerUIEvents.DisableDragAreaControllerUpdates));
                CustomizationContext.EventBus.DispatchEvent(default(CustomizerWidgetEvents.ShowCoinCountWidget));
                changeSubScreen(designSubmission);
                CustomizationContext.EventBus.DispatchEvent(default(CustomizerUIEvents.SwitchToSave));
                break;
            }
            if (_isInited)
            {
                saveButtonGameObject.SetActive(flag);
                contentButtons.SetActive(flag);
                CustomizationContext.EventBus.DispatchEvent(new CustomizerActiveSwatchEvents.SetIsVisible(flag));
                CustomizationContext.EventBus.DispatchEvent(new CustomizerActiveSwatchEvents.SetIsFabric(isFabric));
                updateProperties();
            }
        }
 public CustomizerStateChangedEvent(CustomizerState newState)
 {
     NewState = newState;
 }