Esempio n. 1
0
    void SpawnBomb(Player player, int index)
    {
        bool canPlaceBomb = player.CurrentBombCount > 0;

        if (player.RemoteControlTimer > 0.0f)
        {
            canPlaceBomb = !HasActiveBomb(player.ID);
        }

        if (canPlaceBomb)
        {
            //Install bomb
            Vector3    spawnPos = GetSpawnPos(index);
            GameObject bombObj  = Instantiate(BombPrefab, spawnPos, Quaternion.identity) as GameObject;
            CurrentLevelData.AddMapObject(bombObj, index, LevelData.ElementType.Bomb);

            Bomb bomb = new Bomb();
            bomb.transform = bombObj.transform;
            bomb.PlayerID  = player.ID;
            bomb.Index     = index;
            bomb.Strength  = player.BombStrength;
            newlyAddedBombs.Add(bomb);
            activeBombs.Add(bomb);
            UpdateBombCounter(player, -1);
        }
    }
Esempio n. 2
0
    void SaveScene()
    {
        try
        {
            GameObject levelDataObj = new GameObject("LevelData");
            LevelData  levelData    = levelDataObj.AddComponent <LevelData>();

            for (int i = 0; i < mapObjectList.Count; i++)
            {
                //If it's spawn point don't add it to the level data.
                if (LevelMap[mapObjectList[i].index] == (int)LevelData.ElementType.SpawnPoint)
                {
                    LevelMap[mapObjectList[i].index] = 0;
                    continue;
                }
                levelData.AddMapObject(mapObjectList[i].obj, mapObjectList[i].index);
            }
            levelData.LevelMap = LevelMap;

            //Save the .unity scen file
            string savePath = EditorUtility.SaveFilePanelInProject("Save Scene", "Level1", "unity", "saves the current changes in new scene");
            EditorSceneManager.SaveScene(EditorSceneManager.GetActiveScene(), savePath);
        }
        catch (System.Exception e)
        {
            Debug.LogErrorFormat("Error while trying to save scene, Message : {0}", e.Message);
        }
    }