예제 #1
0
 // Use this for initialization
 void Start()
 {
     GetComponent <Animator> ().SetBool("Slow", true);
     spawnRate = (Mathf.Abs(2 - LevelSaver.getDiff()) + 1) * 100;
     //LevelSaver swagg = new LevelSaver ();
     //print (swagg.getContinuousDifficulty ());
 }
예제 #2
0
    public static bool LoadGame()
    {
        if (Directory.Exists(_folderPath) && File.Exists(GetSavePath(levelID)))
        {
            List <Detail>   loadDetailList = LevelContainer.currentLevelContainer.GetCurrentLevelDetails();
            BinaryFormatter bf             = new BinaryFormatter();
            FileStream      file           = File.Open(GetSavePath(levelID), FileMode.Open);
            LevelSaver      save           = (LevelSaver)bf.Deserialize(file);
            file.Close();

            foreach (var detail in save.detailList)
            {
                foreach (var detailContainer in loadDetailList)
                {
                    if (detailContainer.name == detail.detailName)
                    {
                        detailContainer.CurrentCount = detail.currentCount;
                        for (int i = 0; i < detailContainer.points.Count; i++)
                        {
                            if (detail.parentList[i]._isInstalled)
                            {
                                detailContainer.points[i].Install();
                            }
                        }
                    }
                }
            }
            return(true);
        }
        else
        {
            return(false);
        }
    }
예제 #3
0
    // Use this for initialization
    void Start()
    {
        difficulty = LevelSaver.getDiff();
        //LevelSaver swagg = new LevelSaver();
        GetComponent <Animator> ().SetInteger("Type", difficulty);

        position = this.transform.position;
    }
 public static void SaveLevel()
 {
     if (CurrentLevel != null)
     {
         PolygonSelector.Instance.Deselect();
         LevelSaver.SaveLevel(CurrentLevel, CurrentLevel.Name);
     }
 }
예제 #5
0
    public Task <object> SaveAsync(string path)
    {
        LevelSaver       saver  = new LevelSaver(this, path);
        BackgroundWorker worker = new BackgroundWorker();

        worker.DoWork += new DoWorkEventHandler(saver.DoWork);
        return(saver);
    }
예제 #6
0
 public Level()
 {
     layers              = new SortedSet <Layer>();
     enemies             = new HashSet <AbstractEnemy>();
     levelAreas          = new Dictionary <int, LevelPart>();
     marioPositions      = new Dictionary <int, Vector2>();
     currentLevelSection = 0;
     savedState          = new LevelSaver();
     Clock = new Timer();
 }
예제 #7
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        LevelSaver levelSaverScript = (LevelSaver)target;

        if (GUILayout.Button("Save"))
        {
            levelSaverScript.Save();
        }
    }
예제 #8
0
파일: Slider.cs 프로젝트: Mutilar/Voodoo
    // Update is called once per frame
    void FixedUpdate()
    {
        //LevelSaver swag = new LevelSaver ();
        int jagg = Mathf.FloorToInt(this.GetComponent <Scrollbar>().value / .33f);

        if (jagg == 3)
        {
            jagg = 2;
        }
        //swag.setJaggedness(jagg);

        LevelSaver.setRough(jagg);
        //print (Mathf.FloorToInt(this.GetComponent<Scrollbar>().value / .33f) + " :X: " + swag.getJaggedness());
    }
예제 #9
0
    public static void SaveGame()
    {
        LevelSaver      level = CreateSaveObject(LevelContainer.currentLevelContainer.GetCurrentLevelDetails());
        BinaryFormatter bf    = new BinaryFormatter();

        if (!Directory.Exists(_folderPath))
        {
            Directory.CreateDirectory(_folderPath);
        }
        FileStream file = File.Create(GetSavePath(levelID));

        bf.Serialize(file, level);
        file.Close();
        SavePercent(levelID, LevelContainer.currentLevelContainer.GetPercent());
    }
예제 #10
0
파일: Scroller2.cs 프로젝트: Mutilar/Voodoo
    // Update is called once per frame
    void FixedUpdate()
    {
        /*LevelSaver swag = new LevelSaver ();
         * int diff = Mathf.FloorToInt(this.GetComponent<Scrollbar>().value / .33f);
         * if (diff == 3) diff = 2;
         * swag.setContinuousDifficulty (diff);
         * print (diff + " " + swag.getContinuousDifficulty ());*/
        int diff = Mathf.FloorToInt(this.GetComponent <Scrollbar>().value / .33f);

        if (diff == 3)
        {
            diff = 2;
        }
        LevelSaver.setDiff(diff);
        //print (Mathf.FloorToInt(this.GetComponent<Scrollbar>().value / .33f) + " :X: " + swag.getJaggedness());
    }
예제 #11
0
파일: Levels.cs 프로젝트: filinskyi/TheGame
        public void CreatLevel()
        {
            string[] data  = LevelReader.GetInputData();
            Level    level = LevelBinder.CreateLevel(data);

            if (LevelValidator.IsValid(level))
            {
                LevelsInfo.Add(level);
                LevelSaver.Save(level, pathToFile);

                Console.WriteLine("Level created and saved.."); // remove CW from BL
                Thread.Sleep(3000);
            }
            else
            {
                Console.WriteLine("level info is wrong");// remove CW from BL
            }
        }
예제 #12
0
    private static LevelSaver CreateSaveObject(List <Detail> _allDetails)
    {
        LevelSaver level = new LevelSaver();
        bool       isInstalled;
        float      installedDetailsCount = 0;

        foreach (Detail detail in _allDetails)
        {
            isInstalled = true;
            DetailSaver detailSav = new DetailSaver();

            detailSav.detailName   = detail.name;
            detailSav.currentCount = detail.CurrentCount;

            List <PointParentConnectorSaver> pPCSaverList = new List <PointParentConnectorSaver>();
            detailSav.parentList = pPCSaverList;

            foreach (var pointPC in detail.points)
            {
                PointParentConnectorSaver pPCSaver = new PointParentConnectorSaver();

                pPCSaver._isInstalled = pointPC.IsInstalled;
                if (!pointPC.IsInstalled || !detail.isRoot)
                {
                    isInstalled = false;
                }

                pPCSaverList.Add(pPCSaver);
            }
            if (isInstalled)
            {
                installedDetailsCount++;
            }
            level.detailList.Add(detailSav);
        }
        level.percent = Mathf.Round((installedDetailsCount / _allDetails.Count) * 100);
        return(level);
    }
예제 #13
0
	public void SaveLevel( )
	{
		if ( m_levelSaver == null )
		{
			m_levelSaver = new LevelSaver();
		}

		m_levelSaver.SaveLevel(CurrentLevel);
	}
예제 #14
0
    int jaggedness;    //retreives the jaggedness value from memory, the value is reversed just to make it easier to work with in code
    void Start()
    {
        jaggedness = (int)Mathf.Abs(2 - LevelSaver.getRough());      //retreives the jaggedness value from memory, the value is reversed just to make it easier to work with in code

        //jaggedness = (int)Mathf.Abs(2-new LevelSaver().getJaggedness());
        //print (new LevelSaver ().getJaggedness () + "jagg");
        //print (new LevelSaver ().getContinuousDifficulty () + "diff");
        BoxCollider2D box = Underground.GetComponent <BoxCollider2D> ();

        //---------------------------------------------------------------
        //Assign sprites to the array here
        //Enter values as: (height,length,variant,SpriteRenderer,direction(up,down,flat),vegetationType(grass,dirt,tograss,todirt))
        //---------------------------------------------------------------
        terrains     = new numberedTerrain[elementsCount];
        terrains [0] = new numberedTerrain(.32f, .64f, 0, SG0u.GetComponent <SpriteRenderer> (), "up", "grass", SG0u.GetComponent <PolygonCollider2D> ());
        terrains [1] = new numberedTerrain(.32f, .64f, 0, SD0u.GetComponent <SpriteRenderer> (), "up", "dirt", SD0u.GetComponent <PolygonCollider2D> ());
        terrains [2] = new numberedTerrain(-.32f, .64f, 0, SG0d.GetComponent <SpriteRenderer> (), "down", "grass", SG0d.GetComponent <PolygonCollider2D> ());
        terrains [3] = new numberedTerrain(-.32f, .64f, 0, SD0d.GetComponent <SpriteRenderer> (), "down", "dirt", SD0d.GetComponent <PolygonCollider2D> ());
        terrains [4] = new numberedTerrain(0, .32f, 0, FG0.GetComponent <SpriteRenderer> (), "flat", "grass", FG0.GetComponent <PolygonCollider2D> ());
        terrains [8] = new numberedTerrain(0, .32f, 1, FG1.GetComponent <SpriteRenderer> (), "flat", "grass", FG1.GetComponent <PolygonCollider2D> ());
        terrains [5] = new numberedTerrain(0, .32f, 0, FD0.GetComponent <SpriteRenderer> (), "flat", "dirt", FD0.GetComponent <PolygonCollider2D> ());
        terrains [6] = new numberedTerrain(0, .32f, 0, FT0.GetComponent <SpriteRenderer> (), "flat", "tograss", FT0.GetComponent <PolygonCollider2D> ());      //the "to" prefix signifies a transition sprite
        terrains [7] = new numberedTerrain(0, .32f, 0, FT1.GetComponent <SpriteRenderer> (), "flat", "todirt", FT1.GetComponent <PolygonCollider2D> ());       //the "to" prefix signifies a transition sprite
        //---------------------------------------------------------------
        //Generation takes place here
        //---------------------------------------------------------------
        Vector3 renderPosition = new Vector3(xDistance, yLocation, 0);

        for (int pos = 0; pos != chunksToGenerate; pos++)
        {
            xDistance += terrains [lastIndex].getL();
            if (flatFor > 0)
            {
                Instantiate(getTerrain("flat", currentVegetation), getRenderPosition(), renderRotation);
                if (transitioning)
                {
                    transitioning     = false;
                    currentVegetation = currentVegetation.Substring(2);                     //takes off the "to" part of the string to convert it to a nontransition state
                }
                else
                {
                    switchVeg();
                }
                flatFor--;
            }
            else
            {
                int dir = newDirection();
                yLocation += terrains [lastIndex].getH() / 2;
                if (dir == 1)
                {
                    Instantiate(getTerrain("up", currentVegetation), getRenderPosition(), renderRotation);
                }
                else if (dir == -1)
                {
                    Instantiate(getTerrain("down", currentVegetation), getRenderPosition(), renderRotation);
                }
                else if (dir >= 0)
                {
                    Instantiate(getTerrain("flat", currentVegetation), getRenderPosition(), renderRotation);
                }
            }
            addUnderground(getRenderPosition());
            if (pos == chunksToGenerate - 1 && !endingGeneration)
            {
                endingGeneration = true;
                flatFor          = 6;
                pos -= 6;
                addEndColliders();
            }
        }
    }
예제 #15
0
    //public static LevelGenerator Create()
    //{
    //    GameObject gameObject = new GameObject();
    //    gameObject.name = "GenerateLevels";
    //    LevelGenerator gerador = gameObject.AddComponent<LevelGenerator>();
    //    gerador.level = new Level();
    //    return gerador;
    //}

    public LevelGenerator()
    {
        _level    = new Level();
        _lvlSaver = new LevelSaver();
    }
예제 #16
0
 private void save_MouseDown(object sender, MouseButtonEventArgs e)
 {
     LevelSaver levelSaver = new LevelSaver(tiles, levelname.Text, numberMoves.Text, bullet.IsChecked.Value, warp.IsChecked.Value);
 }