/// <summary>
        /// Creates a button.
        /// </summary>
        /// <param name="style">The style.</param>
        /// <param name="displaySetup"></param>
        /// <param name="behavior">The behavior. Pass null to use the form default action. If you need to add additional JavaScript action statements to any
        /// behavior besides <see cref="CustomButtonBehavior"/>, we recommend using the jQuery document ready event to add an additional click handler to the
        /// appropriate button element(s), which you can select using a class if there is no simpler way.</param>
        /// <param name="classes">The classes on the button.</param>
        public EwfButton(ButtonStyle style, DisplaySetup displaySetup = null, ButtonBehavior behavior = null, ElementClassSet classes = null)
        {
            behavior = behavior ?? new FormActionBehavior(FormState.Current.DefaultAction);
            var elementChildren         = style.GetChildren();
            var elementEtherealChildren = behavior.GetEtherealChildren();

            children = new DisplayableElement(
                context => {
                behavior.AddPostBack();
                return(new DisplayableElementData(
                           displaySetup,
                           () => new DisplayableElementLocalData(
                               "button",
                               new FocusabilityCondition(true),
                               isFocused => {
                    var attributes = new List <Tuple <string, string> > {
                        Tuple.Create("type", "button")
                    };
                    attributes.AddRange(behavior.GetAttributes());
                    if (isFocused)
                    {
                        attributes.Add(Tuple.Create("autofocus", "autofocus"));
                    }

                    return new DisplayableElementFocusDependentData(
                        attributes: attributes,
                        includeIdAttribute: behavior.IncludesIdAttribute(),
                        jsInitStatements: behavior.GetJsInitStatements(context.Id) + style.GetJsInitStatements(context.Id));
                }),
                           classes: style.GetClasses().Add(classes ?? ElementClassSet.Empty),
                           children: elementChildren,
                           etherealChildren: elementEtherealChildren));
            }).ToCollection();
        }
Ejemplo n.º 2
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Space))
        {
            enemyScript.CardMoveTest();
        }

        if (updateMousePos)
        {
            selectedCard.transform.position = camera.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 140)); //Don't use constant for z but it's f****d up.
        }

        Hover(Input.mousePosition);

        if (Input.GetMouseButtonDown(0) && !updateMousePos)
        {
            Click(Input.mousePosition);
        }

        if (Input.GetMouseButtonUp(0))
        {
            if (selectedButton != null)
            {
                selectedButton.Select(false);
                selectedButton = null;
                EndTurn();
            }
        }

        if (Input.GetMouseButtonUp(0) && updateMousePos)
        {
            updateMousePos = false;
            if (selectedButton != null)
            {
                selectedButton.Select(false);
                selectedButton = null;
                //PlayCard();
            }

            if (selectedCard != null && !selectedCard.GetInPlayArea())
            {
                //selectedCard.transform.localPosition = oldCardPosition;
                selectedCard.Reset();
                //selectedCard.Select(false);
                selectedCard = null;
                //PlayCard();
            }
            else if (selectedCard != null && selectedCard.GetInPlayArea())
            {
                if (playAreaCard != null)
                {
                    playAreaCard.Reset();
                }
                selectedCard.SetAreaParent();
                playAreaCard = selectedCard;
            }
        }
    }
Ejemplo n.º 3
0
    //private MeshRenderer[] myTileMeshes;
    //private Board board;


    // Use this for initialization
    void Start()
    {
        Board board = GameObject.Find("Board").GetComponent <Board>();

        buttonBehavior = GameObject.Find("Button Behavior").GetComponent <ButtonBehavior>();
        while (gameObject.transform.childCount < 1)
        {
            board.PopulateBoard((Board.TerrainTilesEnum)Random.Range(0, 6), transform);
        }
    }
 private ElementActivationBehavior(ButtonBehavior buttonBehavior)
 {
     Classes               = ActivatableClass;
     AttributeGetter       = () => buttonBehavior.GetAttributes().Materialize();
     IncludesIdAttribute   = buttonBehavior.IncludesIdAttribute;
     EtherealChildren      = buttonBehavior.GetEtherealChildren();
     JsInitStatementGetter = buttonBehavior.GetJsInitStatements;
     IsFocusable           = true;
     PostBackAdder         = buttonBehavior.AddPostBack;
 }
Ejemplo n.º 5
0
        public static void OnGirlHeadPressed(ButtonBehavior b)
        {
            tooltip.Hide();
            Game.Manager.Audio.Play(AudioCategory.SOUND, click, Game.Session.gameCanvas.cellphone.pauseBehavior.pauseDefinition);

            currentGirl = Game.Data.Girls.Get(Game.Session.gameCanvas.cellphone.GetCellFlag("profile_girl_id"));
            UiCellphoneAppPairs p = (Game.Session.gameCanvas.cellphone.appPrefabs.FirstOrDefault((UiCellphoneApp a) => a is UiCellphoneAppPairs) as UiCellphoneAppPairs);

            Game.Session.gameCanvas.cellphone.LoadApp(Game.Session.gameCanvas.cellphone.appPrefabs.IndexOf(p));
        }
Ejemplo n.º 6
0
    public void highlight()
    {
        _highlighted        = true;
        _wasActiveLastFrame = true;

        for (int i = 0; i < gameObject.transform.childCount; i++)
        {
            ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;
            button.changeState(ButtonBehavior.State.HIGHLIGHT);
        }
    }
Ejemplo n.º 7
0
 // Use this for initialization
 void Start()
 {
     plane         = GameObject.Find("plane");
     livesHandler  = GameObject.Find("heartContainer").gameObject.GetComponent <HeartsBehavior>();
     scoreHandler  = GameObject.Find("scoreContainer").gameObject.GetComponent <ScoreBehavior>();
     buttonHandler = Resources.FindObjectsOfTypeAll <ButtonBehavior>().First();
     buttonHandler.buttonClicked += () =>
     {
         SceneManager.LoadScene("Level1");
     };
     GenerateSpawnTime();
 }
Ejemplo n.º 8
0
 void spawnLevel(ButtonBehavior button)
 {
     if (_childLevel != null)
     {
         clearChild();
     }
     _childLevel = Instantiate(button._nextLinkage,
                               new Vector3(_maxX, gameObject.transform.position.y, gameObject.transform.position.z),
                               Quaternion.identity) as GameObject;
     _childLevel.layer   = 8;
     _spawnedChildOrigin = button;
 }
Ejemplo n.º 9
0
        void YellowView_Loaded(object sender, RoutedEventArgs e)
        {
            IList <Button> btnList = VisualElementHepler.FindVisualChild <Button>(this);

            foreach (var btn in btnList)
            {
                ButtonBehavior bb1 = new ButtonBehavior();
                ButtonBehavior bb2 = new ButtonBehavior();
                bb2.OutputFormat = "{0}.{1} click record.";
                bb1.Attach(btn);
                bb2.Attach(btn);
            }
        }
        public Button(Vector2 position, Point size, Texture2D bt, Texture2D btHover)
            : base(position, bt, size)
        {
            this.position = position;
            this.size = size;

            this.bt = bt;
            this.btHover = btHover;
            btBehavior = new ButtonBehavior();
            displayer = new InfoDisplayer(SceneManager.content.Load<SpriteFont>("Fonts//font_01"),
                new Vector2(base.position.X, base.position.Y + base.size.Y + 24),
                Color.Black);//, "Vitor", 76, 76, 45, 100);
        }
Ejemplo n.º 11
0
    public void clearSelf(ButtonBehavior delayedDestory = null)
    {
        _cleared = true;

        clearChild();
        for (int i = 0; i < gameObject.transform.childCount; i++)
        {
            ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;
            Destroy(button.gameObject, ((button == delayedDestory) ? 1.5f : 0.0f));
        }

        Destroy(gameObject, 1.5f);
    }
        /// <summary>
        /// Creates a button setup object.
        /// </summary>
        /// <param name="text">Do not pass null or the empty string.</param>
        /// <param name="displaySetup"></param>
        /// <param name="behavior">The behavior. Pass null to use the form default action.</param>
        /// <param name="icon">The icon.</param>
        public ButtonSetup(string text, DisplaySetup displaySetup = null, ButtonBehavior behavior = null, ActionComponentIcon icon = null)
        {
            behavior = behavior ?? new FormActionBehavior(FormState.Current.DefaultAction);

            DisplaySetup = displaySetup;
            buttonGetter = (enableSubmitButton, buttonStyleSelector) => {
                var postBack = !enableSubmitButton ? null :
                               behavior is FormActionBehavior formActionBehavior ? (formActionBehavior.Action as PostBackFormAction)?.PostBack :
                               behavior is PostBackBehavior postBackBehavior ? postBackBehavior.PostBackAction.PostBack : null;
                return(postBack != null
                                               ? (PhrasingComponent) new SubmitButton(buttonStyleSelector(text, icon), postBack: postBack)
                                               : new EwfButton(buttonStyleSelector(text, icon), behavior: behavior));
            };
        }
        private static ButtonBehavior GetOrCreateBehavior(DependencyObject dependencyObject)
        {
            var button = (Button)dependencyObject;

            var behavior = button.GetValue(BehaviorProperty) as ButtonBehavior;

            if (behavior == null)
            {
                behavior = new ButtonBehavior(button);
                button.SetValue(BehaviorProperty, behavior);
            }

            return behavior;
        }
Ejemplo n.º 14
0
    public void clearChild()
    {
        if (_childLevel != null)
        {
            LevelBehavior child = (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior);

            if (child != null && child.cleared != true)
            {
                child.clearSelf();
            }
            _childLevel         = null;
            _spawnedChildOrigin = null;
        }
    }
Ejemplo n.º 15
0
    void Hover(Vector3 mposition)
    {
        RaycastHit hit;
        Ray        ray = camera.ScreenPointToRay(mposition);

        if (Physics.Raycast(ray, out hit))
        {
            Transform objectHit = hit.transform;
            if (objectHit.tag == "Card")
            {
                if (highlightedCard != null)
                {
                    highlightedCard.Highlight(false);
                }
                highlightedCard = objectHit.gameObject.GetComponent <CardBehavior>();
                highlightedCard.Highlight(true);
            }

            else if (objectHit.tag == "Button")
            {
                highlightedButton = objectHit.gameObject.GetComponent <ButtonBehavior>();
                highlightedButton.Highlight(true);
            }

            else if (objectHit.tag == "Combatant")
            {
                highlightedCombatant = objectHit.gameObject.GetComponent <CombatantBehavior>();
                highlightedCombatant.Highlight(true);
            }

            else
            {
                if (highlightedCard != null)
                {
                    highlightedCard.Highlight(false);
                    highlightedCard = null;
                }
                if (highlightedButton != null)
                {
                    highlightedButton.Highlight(false);
                    highlightedButton = null;
                }
                if (highlightedCombatant != null)
                {
                    highlightedCombatant.Highlight(false);
                    highlightedCombatant = null;
                }
            }
        }
    }
Ejemplo n.º 16
0
    // Update is called once per frame
    /// <summary>
    /// Function that constructs a ray from the current mouse position.
    /// Checks to see if the ray hits an object, if it does then create a ButtonBehavior object and get the ButtonBehavior component
    /// If the object has been created then call MouseOver function
    /// </summary>
    void Update()
    {
        RaycastHit hitInfo;
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        if (Physics.Raycast(ray, out hitInfo))
        {
            ButtonBehavior buttonControl = hitInfo.collider.GetComponent<ButtonBehavior>();
            if (buttonControl != null)
                buttonControl.MouseOver();

            if (Input.GetMouseButtonDown(0))
                buttonControl.LeftButtonDown();

            if (Input.GetMouseButtonUp(0))
                buttonControl.LeftButtonUp();

        }
    }
        /// <summary>
        /// Creates a button.
        /// </summary>
        /// <param name="style">The style.</param>
        /// <param name="displaySetup"></param>
        /// <param name="behavior">The behavior. Pass null to use the form default action.</param>
        /// <param name="classes">The classes on the button.</param>
        public EwfButton(ButtonStyle style, DisplaySetup displaySetup = null, ButtonBehavior behavior = null, ElementClassSet classes = null)
        {
            behavior = behavior ?? new FormActionBehavior(FormState.Current.DefaultAction);
            var elementChildren         = style.GetChildren();
            var elementEtherealChildren = behavior.GetEtherealChildren();

            children = new DisplayableElement(
                context => {
                behavior.AddPostBack();
                return(new DisplayableElementData(
                           displaySetup,
                           () =>
                           new DisplayableElementLocalData(
                               "button",
                               attributes: Tuple.Create("type", "button").ToCollection().Concat(behavior.GetAttributes()),
                               includeIdAttribute: behavior.IncludesIdAttribute(),
                               jsInitStatements: behavior.GetJsInitStatements(context.Id) + style.GetJsInitStatements(context.Id)),
                           classes: style.GetClasses().Add(classes ?? ElementClassSet.Empty),
                           children: elementChildren,
                           etherealChildren: elementEtherealChildren));
            }).ToCollection();
        }
Ejemplo n.º 18
0
        private FormItem getPasswordFormItem(
            IEnumerable <UpdateRegionSet> updateRegionSets, AutofocusCondition autofocusCondition, DataValue <string> password,
            ButtonBehavior sendCodeButtonBehavior)
        {
            var control = password.ToTextControl(
                false,
                setup: TextControlSetup.CreateObscured(classes: passwordClass, autoFillTokens: "current-password"),
                value: "");

            return(new FlowAutofocusRegion(
                       autofocusCondition,
                       new GenericFlowContainer(
                           control.PageComponent.Append <FlowComponent>(
                               new GenericFlowContainer(
                                   new GenericPhrasingContainer("or".ToComponents()).Append <PhrasingComponent>(
                                       new EwfButton(new StandardButtonStyle("Email Login Code"), behavior: sendCodeButtonBehavior, classes: loginCodeButtonClass))
                                   .Materialize()))
                           .Materialize(),
                           classes: passwordContainerClass).ToCollection()).ToFormItem(
                       setup: new FormItemSetup(updateRegionSets: updateRegionSets),
                       label: control.Labeler.CreateLabel("Password".ToComponents()),
                       validation: control.Validation));
        }
 public static MvcHtmlString Button(this HtmlHelper htmlHelper, string innerHtml, string url, ButtonBehavior type, object htmlAttributes)
 {
     return(htmlHelper.Button(innerHtml, url, type, null, null, (IDictionary <string, object>)HtmlHelper.AnonymousObjectToHtmlAttributes(htmlAttributes)));
 }
 public static MvcHtmlString Button(this HtmlHelper htmlHelper, string innerHtml, string url = null, ButtonBehavior type = ButtonBehavior.Submit, string name = null, string value = null, object htmlAttributes = null)
 {
     return(htmlHelper.Button(innerHtml, url, type, name, value, (IDictionary <string, object>)HtmlHelper.AnonymousObjectToHtmlAttributes(htmlAttributes)));
 }
Ejemplo n.º 21
0
 public TControl Behavior(ButtonBehavior newValue)
 {
     Context.Behavior = newValue;
     return((TControl)this);
 }
Ejemplo n.º 22
0
        public bool PreBuild(MapAsset asset)
        {
            if (!asset.type.StartsWith("util-vent"))
            {
                return(true);
            }
            UtilData utilData = AssetDB.utils[asset.type];

            // Object
            GameObject obj = new GameObject(asset.type);

            // Sprite Renderer
            SpriteRenderer spriteRenderer = obj.AddComponent <SpriteRenderer>();

            spriteRenderer.sprite   = utilData.SpriteRenderer.sprite;
            spriteRenderer.material = utilData.SpriteRenderer.material;
            obj.layer = (int)Layer.ShortObjects;

            // Animator (If Applicable)
            if (asset.type == "util-vent1")
            {
                SpriteAnim spriteAnimClone = utilData.GameObj.GetComponent <SpriteAnim>();
                SpriteAnim spriteAnim      = obj.AddComponent <SpriteAnim>();

                spriteAnim.Play(spriteAnimClone.m_defaultAnim, spriteAnimClone.Speed);
                //spriteAnim.m_clipPairList = spriteAnimClone.m_clipPairList;
            }


            // Vent
            Vent ventData = utilData.GameObj.GetComponent <Vent>();
            Vent vent     = obj.AddComponent <Vent>();

            vent.EnterVentAnim = ventData.EnterVentAnim;
            vent.ExitVentAnim  = ventData.ExitVentAnim;
            vent.spreadAmount  = ventData.spreadAmount;
            vent.spreadShift   = ventData.spreadShift;
            vent.Offset        = ventData.Offset;
            vent.myRend        = spriteRenderer;
            vent.Buttons       = new UnhollowerBaseLib.Il2CppReferenceArray <ButtonBehavior>(0);
            vent.Id            = this.id;
            this.id++;

            // Arrow Buttons
            GameObject     arrowClone       = utilData.GameObj.transform.FindChild("Arrow").gameObject;
            SpriteRenderer arrowCloneSprite = arrowClone.GetComponent <SpriteRenderer>();
            BoxCollider2D  arrowCloneBox    = arrowClone.GetComponent <BoxCollider2D>();

            for (int i = 0; i < asset.targetIds.Length && i < 3; i++)
            {
                long targetId = asset.targetIds[i];
                if (targetId < 0)
                {
                    continue;
                }
                if (MapHandler.GetById(targetId) == null)
                {
                    continue;
                }

                GameObject arrowObj = new GameObject("Arrow" + targetId);

                // Sprite
                SpriteRenderer arrowSprite = arrowObj.AddComponent <SpriteRenderer>();
                arrowSprite.sprite   = arrowCloneSprite.sprite;
                arrowSprite.material = arrowCloneSprite.material;
                arrowObj.layer       = (int)Layer.UI;

                // Box Collider
                BoxCollider2D arrowBox = arrowObj.AddComponent <BoxCollider2D>();
                arrowBox.size      = arrowCloneBox.size;
                arrowBox.offset    = arrowCloneBox.offset;
                arrowBox.isTrigger = true;

                // Button
                ButtonBehavior arrowBtn = arrowObj.AddComponent <ButtonBehavior>();
                arrowBtn.OnMouseOver = new UnityEvent();
                arrowBtn.OnMouseOut  = new UnityEvent();
                Action action;
                if (i == 0)
                {
                    action = vent.ClickRight;
                }
                else if (i == 1)
                {
                    action = vent.ClickLeft;
                }
                else
                {
                    action = vent.ClickCenter;
                }
                arrowBtn.OnClick.AddListener(action);

                // Transform
                vent.Buttons = AssetHelper.AddToArr(vent.Buttons, arrowBtn);
                arrowObj.transform.SetParent(obj.transform);
                arrowObj.transform.localScale = new Vector3(0.4f, 0.4f, 1.0f);
                arrowObj.active = false;
            }

            // Box Collider
            BoxCollider2D origBox = utilData.GameObj.GetComponent <BoxCollider2D>();
            BoxCollider2D box     = obj.AddComponent <BoxCollider2D>();

            box.size      = origBox.size;
            box.offset    = origBox.offset;
            box.isTrigger = true;

            // Colliders
            AssetHelper.BuildColliders(asset, obj);

            // Polus
            ventDb.Add(asset.id, vent);
            targetDb.Add(asset.id, asset.targetIds);
            polus.shipStatus.AllVents = AssetHelper.AddToArr(polus.shipStatus.AllVents, vent);
            polus.Add(obj, asset);

            // Sounds
            if (!hasSounds)
            {
                polus.shipStatus.VentEnterSound = AssetDB.ss["ss-skeld"].ShipStatus.VentEnterSound;
                polus.shipStatus.VentMoveSounds = AssetDB.ss["ss-skeld"].ShipStatus.VentMoveSounds;
                hasSounds = true;
            }

            return(true);
        }
Ejemplo n.º 23
0
    // Update is called once per frame
    void Update()
    {
        if (_childLevel != null)        //The child menu has deactivated itself. Bubble up.
        {
            LevelBehavior child = (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior);

            if (child == null || child.cleared == true)
            {
                _childLevel = null;
                clearSelf();
                return;
            }
        }

        if (_leapManager.pointerPositionScreenToWorld.x >= _minX && _leapManager.pointerPositionScreenToWorld.x <= _maxX)
        {
            _wasActiveLastFrame = true;

            if (_childLevel != null)
            {
                (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior).clearChild();
            }

            for (int i = 0; i < gameObject.transform.childCount; i++)
            {
                ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;

                button.changeState(ButtonBehavior.State.NORMAL);

                if (button.selected)
                {
                    if (button._nextLinkage != null &&
                        button._selectionAction == "")
                    {
                        _lastSelectedOptionButton = null;
                        if (button != _spawnedChildOrigin)
                        {
                            spawnLevel(button);
                        }
                        else
                        {
                            (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior).highlight();
                        }
                    }
                    else if (button._selectionAction != "" &&
                             button._nextLinkage == null)
                    {
                        clearChild();
                        _lastSelectedOptionButton = button;
                    }
                }
            }
        }
        else if (_wasActiveLastFrame)
        {
            if (_highlighted)
            {
                _highlighted = false;
            }
            else
            {
                _wasActiveLastFrame = false;

                if (_lastSelectedOptionButton != null && _leapManager.pointerPositionScreenToWorld.x > _maxX)
                {
                    //Send button action up to a static listener:
                    //...
                    //Then do this:
                    _lastSelectedOptionButton.changeState(ButtonBehavior.State.SELECTED);
                    clearSelf(_lastSelectedOptionButton);
                }
                else
                {
                    for (int i = 0; i < gameObject.transform.childCount; i++)
                    {
                        ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;

                        if (button == _spawnedChildOrigin)
                        {
                            button.changeState(ButtonBehavior.State.SELECTED_PATH);
                        }
                        else
                        {
                            button.changeState(ButtonBehavior.State.DISABLED);
                        }
                    }
                }
            }
        }
    }
 /// <summary>
 /// Creates button behavior. EnduraCode goal 2450 will add a JavaScript predicate parameter to this method.
 /// </summary>
 /// <param name="buttonBehavior">The behavior. Pass null to use the form default action.</param>
 public static ElementActivationBehavior CreateButton(ButtonBehavior buttonBehavior = null) =>
 new ElementActivationBehavior(buttonBehavior ?? new FormActionBehavior(FormState.Current.DefaultAction));
Ejemplo n.º 25
0
        private void DrawSabotage(MapAsset asset)
        {
            if (!SabBuilder.SAB_SYSTEMS.ContainsKey(asset.type))
            {
                return;
            }
            if (addedIds.Contains(asset.id))
            {
                return;
            }
            addedIds.Add(asset.id);

            // System
            SystemTypes sys     = SabBuilder.SAB_SYSTEMS[asset.type];
            MapRoom     mapRoom = GetRoom(sys);

            // GameObject
            GameObject button = new GameObject(asset.name);

            button.transform.SetParent(mapRoom.gameObject.transform);
            button.transform.localPosition = new Vector3(asset.x * MinimapGenerator.MAP_SCALE * 1.25f, -asset.y * MinimapGenerator.MAP_SCALE * 1.25f, -25.0f);

            // Sprite Renderer
            SpriteRenderer spriteRenderer = button.AddComponent <SpriteRenderer>();

            spriteRenderer.material = commsBackup.GetComponent <SpriteRenderer>().material;
            button.layer            = (int)Layer.UI;
            mapRoom.special         = spriteRenderer;

            // Collider
            CircleCollider2D colliderClone = commsBackup.GetComponent <CircleCollider2D>();
            CircleCollider2D collider      = button.AddComponent <CircleCollider2D>();

            collider.radius    = colliderClone.radius;
            collider.offset    = colliderClone.offset;
            collider.isTrigger = true;

            // Sabotage Type
            ButtonBehavior behaviour;

            switch (asset.type)
            {
            case "sab-electric":
                spriteRenderer.sprite = lightsBackup.GetComponent <SpriteRenderer>().sprite;
                behaviour             = lightsBackup.GetComponent <ButtonBehavior>();
                break;

            case "sab-reactorleft":
                spriteRenderer.sprite = reactorBackup.GetComponent <SpriteRenderer>().sprite;
                behaviour             = reactorBackup.GetComponent <ButtonBehavior>();
                break;

            case "sab-comms":
                spriteRenderer.sprite = commsBackup.GetComponent <SpriteRenderer>().sprite;
                behaviour             = commsBackup.GetComponent <ButtonBehavior>();
                break;

            case "sab-doors":
                spriteRenderer.sprite = doorsBackup.gameObject.GetComponent <SpriteRenderer>().sprite;
                behaviour             = doorsBackup.GetComponent <ButtonBehavior>();
                break;

            default:
                return;
            }

            // Button Behaviour
            ButtonBehavior btnBehaviour = button.AddComponent <ButtonBehavior>();

            btnBehaviour.OnClick = behaviour.OnClick;
            btnBehaviour.OnClick.m_PersistentCalls.m_Calls[0].m_Target = mapRoom;
            btnBehaviour.colliders    = new UnhollowerBaseLib.Il2CppReferenceArray <Collider2D>(1);
            btnBehaviour.colliders[0] = collider;

            overlay.allButtons = AssetHelper.AddToArr(overlay.allButtons, btnBehaviour);
        }
Ejemplo n.º 26
0
	public void clearSelf(ButtonBehavior delayedDestory = null)
	{
		_cleared = true;

		clearChild();
		for(int i = 0; i < gameObject.transform.childCount; i++)
		{
			ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;
			Destroy(button.gameObject, ((button == delayedDestory) ? 1.5f : 0.0f));
		}

		Destroy(gameObject, 1.5f);
	}
 public static MvcHtmlString Button(this HtmlHelper htmlHelper, string innerHtml, string url, ButtonBehavior type, string name, IDictionary <string, object> htmlAttributes)
 {
     return(htmlHelper.Button(innerHtml, url, type, name, null, htmlAttributes));
 }
Ejemplo n.º 28
0
    void Click(Vector3 mposition)
    {
        RaycastHit hit;
        Ray        ray = camera.ScreenPointToRay(mposition);

        if (Physics.Raycast(ray, out hit))
        {
            Transform objectHit = hit.transform;
            if (objectHit.tag == "Card")
            {
                updateMousePos = true;
                if (selectedCard != null)
                {
                    selectedCard.Select(false);
                }
                selectedCard = objectHit.gameObject.GetComponent <CardBehavior>();
                selectedCard.Select(true);
                oldCardPosition = selectedCard.transform.localPosition;
            }

            else if (objectHit.tag == "Button")
            {
                selectedButton = objectHit.gameObject.GetComponent <ButtonBehavior>();
                selectedButton.Select(true);
            }


            else if (objectHit.tag == "Combatant")
            {
                if (selectedCombatant != null)
                {
                    selectedCombatant.Select(false);
                }
                selectedCombatant = objectHit.gameObject.GetComponent <CombatantBehavior>();
                selectedCombatant.Select(true);

                if (playAreaCard != null)
                {
                    PlayCard();
                }
            }

            else if (objectHit.tag == "PlayArea")
            {
                if (playAreaCard != null)
                {
                    playAreaCard.Reset();
                    playAreaCard = null;
                }
            }

            else
            {
                if (selectedCard != null)
                {
                    selectedCard.Select(false);
                    selectedCard = null;
                }

                if (selectedCombatant != null)
                {
                    selectedCombatant.Select(false);
                    selectedCombatant = null;
                }
            }
        }
    }
Ejemplo n.º 29
0
	public void clearChild()
	{
		if(_childLevel != null) 
		{ 
			LevelBehavior child = (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior);

			if(child != null && child.cleared != true)
			{
				child.clearSelf(); 
			}
			_childLevel = null;
			_spawnedChildOrigin = null;
		}
	}
Ejemplo n.º 30
0
	void spawnLevel(ButtonBehavior button)
	{
		if(_childLevel != null) { clearChild(); }
		_childLevel = Instantiate(button._nextLinkage, 
		                                  new Vector3(_maxX, gameObject.transform.position.y, gameObject.transform.position.z), 
		                                  Quaternion.identity) as GameObject;
		_childLevel.layer = 8;
		_spawnedChildOrigin = button;
	}
        public static MvcHtmlString Button(this HtmlHelper htmlHelper, string innerHtml, string url, ButtonBehavior type, string name, string value, IDictionary <string, object> htmlAttributes)
        {
            if (!string.IsNullOrWhiteSpace(name))
            {
                name = htmlHelper.ViewContext.ViewData.TemplateInfo.GetFullHtmlFieldName(name);
            }
            var tag = new TagBuilder("button")
            {
                InnerHtml = innerHtml,
            };

            if (type != ButtonBehavior.Automatic)
            {
                tag.Attributes.Add("type", type.ToString().ToLowerInvariant());
            }
            else if (url == null)
            {
                tag.Attributes.Add("type", "submit");
            }
            else
            {
                tag.Attributes.Add("type", "button");
            }
            tag.MergeNotNullAttribute("name", name);
            tag.MergeNotNullAttribute("value", value);
            string id = TagBuilder.CreateSanitizedId(name);

            tag.MergeNotNullAttribute("id", id);
            tag.MergeNotNullAttribute("onclick", "javascript: location.href='" + url + "'");

            tag.MergeAttributes(htmlAttributes, true);
            return(new MvcHtmlString(tag.ToString()));
        }
Ejemplo n.º 32
0
	// Update is called once per frame
	void Update () 
	{

		if(_childLevel != null) //The child menu has deactivated itself. Bubble up.
		{
			LevelBehavior child = (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior);

			if(child == null || child.cleared == true)
			{
				_childLevel = null;
				clearSelf();
				return;
			}
		}

		if(_leapManager.pointerPositionScreenToWorld.x >= _minX && _leapManager.pointerPositionScreenToWorld.x <= _maxX)
		{
			_wasActiveLastFrame = true;

			if(_childLevel != null) { (_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior).clearChild(); }

			for(int i = 0; i < gameObject.transform.childCount; i++)
			{
				ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;

				button.changeState(ButtonBehavior.State.NORMAL);

				if(button.selected)
				{
					if(button._nextLinkage != null && 
					   button._selectionAction == "")
					{
						_lastSelectedOptionButton = null;
						if(button != _spawnedChildOrigin)
						{
							spawnLevel(button);
						}
						else
						{
							(_childLevel.GetComponent(typeof(LevelBehavior)) as LevelBehavior).highlight();
						}
					}
					else if(button._selectionAction != "" &&
					        button._nextLinkage == null)
					{
						clearChild();
						_lastSelectedOptionButton = button;
					}
				}
			}
		}
		else if(_wasActiveLastFrame)
		{
			if(_highlighted)
			{
				_highlighted = false;
			}
			else
			{
				_wasActiveLastFrame = false;

				if(_lastSelectedOptionButton != null && _leapManager.pointerPositionScreenToWorld.x > _maxX)
				{
					//Send button action up to a static listener:
					//...
					//Then do this:
					_lastSelectedOptionButton.changeState(ButtonBehavior.State.SELECTED);
					clearSelf(_lastSelectedOptionButton);
				}
				else
				{
					for(int i = 0; i < gameObject.transform.childCount; i++)
					{
						ButtonBehavior button = gameObject.transform.GetChild(i).GetComponent(typeof(ButtonBehavior)) as ButtonBehavior;

						if(button == _spawnedChildOrigin) { button.changeState(ButtonBehavior.State.SELECTED_PATH); }
						else { button.changeState(ButtonBehavior.State.DISABLED); }
					}
				}
			}
		}
	}