Example #1
0
        public void SelectToolboxMapFeature(ToolboxMapFeatureTemplate selectedMF)
        {
            HideProperties();
            EditorTileManager.Instance.HideEditorHighlight();
            HighlightSelectedMFTemplate(selectedMF.assetCode);
            tileTemplate = selectedMF;

            if (string.IsNullOrEmpty(selectedMF.assetCode))
            {
                EditorTileManager.Instance.DisableMapFeatureSpawnDetection();
            }
            else
            {
                EditorTileManager.Instance.EnableMapFeatureSpawnDetection();
            }
        }
        public void OnPointerClick(PointerEventData eventData)
        {
            if (ToolboxManager.Instance.selectedTileType == ToolBoxTileType.MapFeature)
            {
                Vector3 pressPosition = eventData.pointerPressRaycast.worldPosition;

                ToolboxMapFeatureTemplate template = (ToolboxMapFeatureTemplate)ToolboxManager.Instance.tileTemplate;
                Object     prefab = AssetManager.Instance.GetPrefabByKeyword(template.assetCode);
                GameObject go     = Instantiate(prefab) as GameObject;
                go.transform.SetParent(EditorTileManager.Instance.mapFeatureParent);

                MapEditorFeatureController featureController = go.AddComponent <MapEditorFeatureController>();
                EditorMapFeatureData       data = new EditorMapFeatureData();
                data.assetCode      = template.assetCode;
                data.tileOptionType = (int)TileOptionType.MapFeature;
                data.mapFeatureType = (int)template.mapFeatureType;
                data.mapXPos        = pressPosition.x;
                data.mapYPos        = pressPosition.y;
                data.radius         = template.radius;
                featureController.Init(data);

                Debug.Log("Spawn A Map Feature " + data.assetCode);
            }
        }