Example #1
0
        public void Initialize(Asset asset, int assetIndex)
        {
            this.asset = asset;

            Category   = asset.custom.category;
            AssetIndex = assetIndex;

            ClickableBehaviour.Title = EnumHelper.GetEnumMemberAttributeValue(asset.custom.category);
            ClickableBehaviour.Text  = Formatter.BuildStixDataEntityDescription(asset);

            ClickableBehaviour.ActionText    = "select";
            ClickableBehaviour.PrimaryAction = () => {
                SelectionHelper.DeselectAllMitigations();

                var title           = EnumHelper.GetEnumMemberAttributeValue(asset.custom.category);
                var description     = Formatter.BuildStixDataEntityDescription(asset, true, false);
                var selectedActions = new SelectedAction[] {
                    new SelectedAction(
                        ActionType.OpenExternalReferences,
                        () => ReferencesHelper.OpenExternalReferences(asset))
                };
                HelperObjects.SelectedInfoBar.SelectEntity(title, "Asset", description, selectedActions);
            };
            ClickableBehaviour.HasSecondaryAction = ReferencesHelper.AddReferencesAsAction(asset, ClickableBehaviour);
        }
Example #2
0
        public void Initialize(SelectedAction selectedAction)
        {
            Icon.sprite = SpriteManager.I.GetSpriteByActionType(selectedAction.ActionType);
            Label.text  = selectedAction.Label;
            if (selectedAction.Action != null)
            {
                buttonComponent.onClick.AddListener(() => selectedAction.Action());
            }

            clickableBehaviour.Title      = selectedAction.Label;
            clickableBehaviour.Text       = selectedAction.Description;
            clickableBehaviour.ActionText = selectedAction.Label.ToLower();
        }
Example #3
0
        public void Initialize(
            IPlacementArea area,
            IntVector2 gridPosition,
            IntVector2 sizeOffset,
            CourseOfAction courseOfAction)
        {
            this.courseOfAction = courseOfAction;

            placementArea    = area;
            areaGridPosition = gridPosition;
            areaSizeOffset   = sizeOffset;

            Damage = courseOfAction.GetDamage();
            Range  = courseOfAction.GetRange();
            RangeIndicator.localScale = Vector3.one * Range * 2f;
            FireRate = courseOfAction.GetFireRate();

            // Hover and click actions
            ClickableBehaviour.Title = courseOfAction.custom.mitigation;
            ClickableBehaviour.Text  = Formatter.BuildStixDataEntityDescription(courseOfAction);

            ClickableBehaviour.ActionText    = "select";
            ClickableBehaviour.PrimaryAction = () => {
                SelectionHelper.DeselectAllMitigations();
                IsSelected = true;

                var title           = courseOfAction.custom.mitigation;
                var description     = Formatter.BuildStixDataEntityDescription(courseOfAction, true, false);
                var selectedActions = new SelectedAction[] {
                    new SelectedAction(ActionType.Sell, sell),
                    new SelectedAction(
                        ActionType.OpenExternalReferences,
                        () => ReferencesHelper.OpenExternalReferences(courseOfAction))
                };
                HelperObjects.SelectedInfoBar.SelectEntity(title, "Mitigation", description, selectedActions);
            };
            ClickableBehaviour.HasSecondaryAction =
                ReferencesHelper.AddReferencesAsAction(courseOfAction, ClickableBehaviour);
        }