private void treeView_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs <object> e)
        {
            LevelDataBase selectedNode = e.NewValue as LevelDataBase;

            if (selectedNode is Level1Data)
            {
                string g = "";
            }

            if (selectedNode != null)
            {
                DetailsPage.DataContext = selectedNode.SPMData;
            }

            //if (selectedItem != null)
            //{
            //    SPMNodeInfo nodeInfo = selectedItem.Tag as SPMNodeInfo;
            //    if (nodeInfo != null)
            //    {
            //        if (nodeInfo.NodeType == SPMNodeType.Site)
            //        {
            //            //DataContext = new SiteViewModel();
            //        }
            //        else if (nodeInfo.NodeType == SPMNodeType.List)
            //        {
            //            //DataContext = new ListViewModel();
            //        }
            //    }
            //}
        }
Esempio n. 2
0
    void initCastleButtonData()
    {
        GM      = GameManager.getInstance();
        LevelDB = GameDataBase.getDBinstance.getLevelDB;


        GameObject EnhanceButton = null;
        UILabel    ButtonDescript = null;
        UILabel    goldLabel = null, descriptLabel = null;
        int        enemyLevelCount = GM.LoadLevelData("Normal");

        EnemyLevelLabel.text = "적 용사 레벨 : " + enemyLevelCount.ToString();

        GateLevelLabel.text = "Lv " + enemyLevelCount.ToString();
        Transform DoorBoard = CastleGrid.transform.FindChild("Door");

        DoorGoldLabel = DoorBoard.transform.FindChild("Enhance").FindChild("CastleGoldLabel").GetComponent <UILabel>();

        UIEventListener.Get(DoorBoard.transform.FindChild("Enhance").gameObject).onClick -= new UIEventListener.VoidDelegate(ButtonProcess);
        UIEventListener.Get(DoorBoard.transform.FindChild("Enhance").gameObject).onClick += new UIEventListener.VoidDelegate(ButtonProcess);

        DoorGoldLabel.text = GM.getPrice("Gate").ToString();

        for (int i = 0; i < 10; i++)
        {
            Transform castleBoard = CastleGrid.transform.FindChild((i + 1).ToString());
            descriptLabel = castleBoard.transform.FindChild("StageContext").GetComponent <UILabel>();

            EnhanceButton = castleBoard.transform.FindChild("Enhance").gameObject;
            goldLabel     = EnhanceButton.transform.FindChild("CastleGoldLabel").GetComponent <UILabel>();

            castleBoard.transform.FindChild("Locked").gameObject.SetActive(false);
            ButtonDescript = EnhanceButton.transform.FindChild("Descript").GetComponent <UILabel>();

            int data = GM.LoadLevelData(i);
            if (data == 3)
            {
                EnhanceButton.SetActive(false);
            }
            else
            {
                EnhanceButton.SetActive(true);

                goldLabel.text = GM.getPrice("Castle", i).ToString();
                UIEventListener.Get(EnhanceButton).onClick -= new UIEventListener.VoidDelegate(ButtonProcess);
                UIEventListener.Get(EnhanceButton).onClick += new UIEventListener.VoidDelegate(ButtonProcess);

                AbleButtonList.Add(EnhanceButton);
                ButtonDescript.text = "강화";
            }
            if (data == 0)
            {
                castleBoard.transform.FindChild("Locked").gameObject.SetActive(true);
            }

            descriptLabel.text = GM.getContext("Context", "StageEnhance") + "  [  " + GM.getContext("Stage", i) + "  ]\n"
                                 + (i + 1).ToString() + GM.getContext("Context", "StageUnLock");
        }
    }
Esempio n. 3
0
    public void SwitchLevelEnd(int lvlId)
    {
        LvlMode = 1;

        LevelData data = LevelDataBase.LoadLevelData(lvlId);

        GameManager.Instance.LoadLevel(lvlId, data, true);
        GameManager.Instance.EnableWinCheck = false;
    }
Esempio n. 4
0
 void Start()
 {
     listeSelectedKeepers = new List <string>();
     goCardChildren       = new List <List <GameObject> >();
     goCardsLevels        = new List <GameObject>();
     goCardsInfo          = new List <GameObject>();
     leveldb     = GameManager.Instance.leveldb;
     menuUi      = GetComponent <MenuUI>();
     hasBeenInit = false;
     menuUi.UpdateStartButton();
     Cursor.SetCursor(GameManager.Instance.Texture2DUtils.iconeMouse, Vector2.zero, CursorMode.Auto);
 }
Esempio n. 5
0
        public void Init(CharacterData data, LevelDataBase levelData, string team, float difficultyModifier)
        {
            Health         = data.Health * difficultyModifier;
            this.levelData = levelData;
            Team           = team;
            this.data      = data;
            Name           = data.Name;

            agent                = GetComponent <NavMeshAgent>();
            agent.destination    = levelData.Destination;
            agent.updatePosition = true;
            agent.isStopped      = true;
        }
Esempio n. 6
0
        public static ControllerBase AddComponent(GameObject target, LevelDataBase levelData, string controllerType, string template)
        {
            ControllerBase controller;

            switch (controllerType)
            {
            case "AI":
                controller = target.AddComponent <AIController>();
                controller.SetData(TreeHelper.CreateBehaviourTemplate(template, levelData.Destination));
                break;

            default:
                Debug.LogWarning($"Unknown controller type: {controllerType}");
                controller = target.AddComponent <NullController>();
                break;
            }
            return(controller);
        }
Esempio n. 7
0
        public List <SPMList> getLists(LevelDataBase selectedNode)
        {
            // Der selectedNode muss hier eigentlich ein Lists-Knoten sein
            // Dessen Parent muss ein Site-Knoten sein, aus dem wir die Site-Informationen
            // holen, die notwendig sind um die Listen zu finden

            if (selectedNode.NodeType == SPMNodeType.Lists)
            {
                LevelDataBase siteNode = selectedNode.Parent;

                if (siteNode.NodeType == SPMNodeType.Site)
                {
                    SPMSite site = siteNode.SPMData as SPMSite;

                    if (site != null)
                    {
                    }
                }
            }

            List <SPMList> lists = new List <SPMList>();

            lists.Add(new SPMList()
            {
                Title = "Schalke 04"
            });
            lists.Add(new SPMList()
            {
                Title = "BVB 09"
            });
            lists.Add(new SPMList()
            {
                Title = "1. FC Köln"
            });
            lists.Add(new SPMList()
            {
                Title = "RW Essen"
            });


            return(lists);
        }
        private void treeView_Expanded(object sender, RoutedEventArgs e)
        {
            FrameworkElement originalSource = e.OriginalSource as FrameworkElement;

            if (originalSource != null)
            {
                LevelDataBase selectedNode = originalSource.DataContext as LevelDataBase;

                if (selectedNode != null)
                {
                    if (selectedNode.NodeType == SPMNodeType.Lists)
                    {
                        Level3Data level3Data = selectedNode as Level3Data;

                        if (level3Data != null)
                        {
                            // Wenn der Lists-Knoten noch jungfräulig ist
                            if (level3Data.DataLoaded == false)
                            {
                                List <SPMList> lists = allData.dataService.getLists(selectedNode);

                                foreach (SPMList list in lists)
                                {
                                    level3Data.level4DataCol.Add(new Level4Data()
                                    {
                                        Title = list.Title, DataLoaded = false, NodeType = SPMNodeType.List, Parent = level3Data
                                    });
                                }

                                //level3Data.level4DataCol.Add
                            }
                        }
                    }
                    else if (selectedNode.NodeType == SPMNodeType.SiteProperties)
                    {
                        string jetzt2 = "";
                    }
                }
            }
        }
        public override ICharacter CreateCharacter(Vector3 position, string team, LevelDataBase levelData, float difficultyModifier, params ICharacterPreset[] characterPresets)
        {
            if (characterPresets.Length == 0)
            {
                return(new NullCharacter());
            }
            if (characterPresets.Length == 1)
            {
                return(CreateSingleCharacter(position, team, levelData, characterPresets[0], difficultyModifier));
            }

            List <ICharacter> characters = new List <ICharacter>();

            foreach (ICharacterPreset preset in characterPresets)
            {
                characters.Add(CreateSingleCharacter(position, team, levelData, preset, difficultyModifier));
            }
            GameObject    teamCharacter = new GameObject();
            TeamCharacter character     = teamCharacter.AddComponent <TeamCharacter>();

            character.Init(characters);
            return(character);
        }
        private ICharacter CreateSingleCharacter(Vector3 position, string team, LevelDataBase levelData, ICharacterPreset preset, float difficultyModifier)
        {
            CharacterData characterData = Resources.Load <CharacterData>($"Characters/{preset.CharacterData}");

            if (characterData == null)
            {
                Debug.LogWarning($"Character data for {preset.CharacterData} not found.");
                return(new NullCharacter());
            }
            GameObject character = GameObject.Instantiate(characterData.Prefab, position, Quaternion.identity);

            ICharacter charComponent = character.GetComponent <ICharacter>();

            if (charComponent == null)
            {
                Debug.LogWarning("Character prefab requires ICharacter component.");
                GameObject.Destroy(character);
                return(new NullCharacter());
            }
            charComponent.Init(characterData, levelData, team, difficultyModifier);
            ControllerBase.AddComponent(character, levelData, preset.BehaviourType, preset.BehaviourTemplate);

            return(charComponent);
        }
Esempio n. 11
0
    void OnGUI()
    {
//#if UNITY_EDITOR

        // Level bar
        GUILayout.Label("Level ID: " + GameManager.Instance.LevelId);
        GUILayout.Space(5);

        GUILayout.BeginHorizontal();
        GUILayout.Label("Load_Start: ");
        GUILayout.Space(4);
        if (GUILayout.Button("1"))
        {
            SwitchLevelStart(1);
        }
        if (GUILayout.Button("2"))
        {
            SwitchLevelStart(2);
        }
        if (GUILayout.Button("3"))
        {
            SwitchLevelStart(3);
        }
        if (GUILayout.Button("4"))
        {
            SwitchLevelStart(4);
        }
        if (GUILayout.Button("5"))
        {
            SwitchLevelStart(5);
        }
        if (GUILayout.Button("6"))
        {
            SwitchLevelStart(6);
        }
        if (GUILayout.Button("7"))
        {
            SwitchLevelStart(7);
        }
        if (GUILayout.Button("8"))
        {
            SwitchLevelStart(8);
        }
        if (GUILayout.Button("9"))
        {
            SwitchLevelStart(9);
        }
        if (GUILayout.Button("10"))
        {
            SwitchLevelStart(10);
        }
        GUILayout.EndHorizontal();

        GUILayout.Space(5);

        GUILayout.BeginHorizontal();
        GUILayout.Label("Load_End  : ");
        GUILayout.Space(4);
        if (GUILayout.Button("1"))
        {
            SwitchLevelEnd(1);
        }
        if (GUILayout.Button("2"))
        {
            SwitchLevelEnd(2);
        }
        if (GUILayout.Button("3"))
        {
            SwitchLevelEnd(3);
        }
        if (GUILayout.Button("4"))
        {
            SwitchLevelEnd(4);
        }
        if (GUILayout.Button("5"))
        {
            SwitchLevelEnd(5);
        }
        if (GUILayout.Button("6"))
        {
            SwitchLevelEnd(6);
        }
        if (GUILayout.Button("7"))
        {
            SwitchLevelEnd(7);
        }
        if (GUILayout.Button("8"))
        {
            SwitchLevelEnd(8);
        }
        if (GUILayout.Button("9"))
        {
            SwitchLevelEnd(9);
        }
        if (GUILayout.Button("10"))
        {
            SwitchLevelEnd(10);
        }
        GUILayout.EndHorizontal();

        GUILayout.Space(10);

        GUILayout.BeginArea(new Rect(0, 80, 90, Screen.height - 80));
        if (GUILayout.Button("save_start"))
        {
            LevelData data = GameManager.Instance.CurLevelData;
            data.LevelStart.Clear();

            foreach (EleComp eleComp in GameManager.Instance.EleCompList)
            {
                ElementData eleData = new ElementData();
                eleData.Catagory = eleComp.ElementInfo.Catagory;
                eleData.Type     = eleComp.ElementInfo.Type;
                eleData.GridX    = (int)eleComp.Grid.x;
                eleData.GridY    = (int)eleComp.Grid.y;
                data.LevelStart.Add(eleData);
            }

            LevelDataBase.SaveLevelData(GameManager.Instance.LevelId, data);
        }

        if (GUILayout.Button("save_end"))
        {
            LevelData data = GameManager.Instance.CurLevelData;
            data.LevelEnd.Clear();

            foreach (EleComp eleComp in GameManager.Instance.EleCompList)
            {
                ElementData eleData = new ElementData();
                eleData.Catagory = eleComp.ElementInfo.Catagory;
                eleData.Type     = eleComp.ElementInfo.Type;
                eleData.GridX    = (int)eleComp.Grid.x;
                eleData.GridY    = (int)eleComp.Grid.y;
                data.LevelEnd.Add(eleData);
            }

            LevelDataBase.SaveLevelData(GameManager.Instance.LevelId, data);
        }


        if (GUILayout.Button("c_green"))
        {
            ElementFactory.SpawnNewElement(2, 0, 0, 6, 10);
        }
        if (GUILayout.Button("c_red"))
        {
            ElementFactory.SpawnNewElement(3, 0, 0, 6, 10);
        }

        if (GUILayout.Button("c_gray_0"))
        {
            ElementFactory.SpawnNewElement(0, 0, 0, 6, 10);
        }
        if (GUILayout.Button("c_gray_1"))
        {
            ElementFactory.SpawnNewElement(0, 1, 0, 6, 10);
        }
        if (GUILayout.Button("c_gray_2"))
        {
            ElementFactory.SpawnNewElement(0, 2, 0, 6, 10);
        }
        if (GUILayout.Button("c_gray_3"))
        {
            ElementFactory.SpawnNewElement(0, 3, 0, 6, 10);
        }
        if (GUILayout.Button("c_gray_4"))
        {
            ElementFactory.SpawnNewElement(0, 4, 0, 6, 10);
        }
        if (GUILayout.Button("c_gray_5"))
        {
            ElementFactory.SpawnNewElement(0, 5, 0, 6, 10);
        }
        if (GUILayout.Button("c_gray_6"))
        {
            ElementFactory.SpawnNewElement(0, 6, 0, 6, 10);
        }

        if (GUILayout.Button("c_color_0"))
        {
            ElementFactory.SpawnNewElement(1, 0, 0, 6, 10);
        }
        if (GUILayout.Button("c_color_1"))
        {
            ElementFactory.SpawnNewElement(1, 1, 0, 6, 10);
        }
        if (GUILayout.Button("c_color_2"))
        {
            ElementFactory.SpawnNewElement(1, 2, 0, 6, 10);
        }
        if (GUILayout.Button("c_color_3"))
        {
            ElementFactory.SpawnNewElement(1, 3, 0, 6, 10);
        }
        if (GUILayout.Button("c_color_4"))
        {
            ElementFactory.SpawnNewElement(1, 4, 0, 6, 10);
        }
        if (GUILayout.Button("c_color_5"))
        {
            ElementFactory.SpawnNewElement(1, 5, 0, 6, 10);
        }
        if (GUILayout.Button("c_color_6"))
        {
            ElementFactory.SpawnNewElement(1, 6, 0, 6, 10);
        }
        GUILayout.EndArea();

        if (GUI.Button(new Rect(Screen.width - 80, 0, 80, 20), "delete"))
        {
            if (GameManager.Instance.LastSelEleComp)
            {
                GameManager.Instance.EleCompList.Remove(GameManager.Instance.LastSelEleComp);
                GameObject.Destroy(GameManager.Instance.LastSelEleComp.gameObject);
                GameManager.Instance.LastSelEleComp = null;
            }
        }
//#endif
    }
Esempio n. 12
0
 public override void Load(LevelDataBase levelBaseData)
 {
 }
Esempio n. 13
0
 public abstract ICharacter CreateCharacter(Vector3 position, string team, LevelDataBase levelData, float difficultyModifier, params ICharacterPreset[] characterPresets);
    void Start()
    {
        levelDB = GetComponent<LevelDataBase>();
        levelLoad = GetComponent<LevelLoaded>();

        launchSettings = GameObject.Find("LaunchSettings").GetComponent<LaunchSettings>();

        launchSettings.SetAllToFalse();
    }
Esempio n. 15
0
    public void PlayLevel(int levelId)
    {
        LevelData data = LevelDataBase.LoadLevelData(levelId);

        LoadLevel(levelId, data, false);
        EnableWinCheck = true;

        CheckWinGrids = new bool[GridRowCount, GridColCount];

        foreach (ElementData eleData in data.LevelEnd)
        {
            if (eleData.Catagory == 2)
            {
                CheckGreenGrid = new Vector2(eleData.GridX, eleData.GridY);
                continue;
            }

            if (eleData.Catagory == 3)
            {
                CheckRedGrid = new Vector2(eleData.GridX, eleData.GridY);
                continue;
            }

            ElementInfo eleInfo  = ElementFactory.ElementInfos.First(ei => ei.Catagory == eleData.Catagory && ei.Type == eleData.Type);
            int         eleGridX = eleData.GridX;
            int         eleGridY = eleData.GridY;

            foreach (Vector2 pos in eleInfo.OccupyGridsL)
            {
                int eleSegX = (int)(eleGridX + pos.x);
                int eleSegY = (int)(eleGridY + pos.y);
                if (GetGridWorldIndex(eleSegX) == 0)
                {
                    CheckWinGrids[eleSegY, eleSegX] = true;
                }
            }

            foreach (Vector2 pos in eleInfo.OccupyGridsR)
            {
                int eleSegX = (int)(eleGridX + pos.x);
                int eleSegY = (int)(eleGridY + pos.y);
                if (GetGridWorldIndex(eleSegX) == 1)
                {
                    CheckWinGrids[eleSegY, eleSegX] = true;
                }
            }
        }

        // add guides
        for (int i = 0; i < GridRowCount; i++)
        {
            for (int j = 0; j < GridColCount; j++)
            {
                if (CheckWinGrids[i, j])
                {
                    GameObject guide = (GameObject)Instantiate(Resources.Load <GameObject>("guideElement"));
                    Guides.Add(guide);
                    guide.transform.position = new Vector3(PosStartX + GridWorldSize * j, PosStartY + GridWorldSize * i, -0.05f);
                }
            }
        }

        GuideGreen = (GameObject)Instantiate(Resources.Load <GameObject>("guideGreen"));
        GuideGreen.transform.position = new Vector3(PosStartX + GridWorldSize * (CheckGreenGrid.x + 0.5f), PosStartY + GridWorldSize * (CheckGreenGrid.y - 0.5f), -0.05f);

        GuideRed = (GameObject)Instantiate(Resources.Load <GameObject>("guideRed"));
        GuideRed.transform.position = new Vector3(PosStartX + GridWorldSize * (CheckRedGrid.x + 0.5f), PosStartY + GridWorldSize * (CheckRedGrid.y - 0.5f), -0.05f);


        // show intro
        Transform introTrans = PanelGame.transform.Find("Intro");

        if (introTrans)
        {
            Destroy(introTrans.gameObject);
        }

        GameObject intro = new GameObject("Intro");

        intro.AddComponent <SpriteRenderer>().sprite = Resources.Load <Sprite>("Intros/intro_" + levelId.ToString("D2"));
        intro.transform.parent = PanelGame.transform;
    }
Esempio n. 16
0
 public virtual void Load(LevelDataBase levelBaseData)
 {
 }