Ejemplo n.º 1
0
    protected override void SingletonAwake()
    {
        if (levelSetupInfo == null)
        {
            levelSetupInfo = LevelSetupInfo.DefaultLevelSetupInfo();
        }
        soldierSpawnPoints = FindObjectsOfType <SpawnPoint>().ToList();
        for (int i = 0; i < levelSetupInfo.numberOfPlayers; i++)
        {
            PlayerInstance player = new PlayerInstance(i, Database.PlayerInfos[i], Database.WeaponInformations.Clone());
            if (levelSetupInfo.infiniteAmmo)
            {
                foreach (WeaponInformation w in player.weaponInformations.weapons)
                {
                    w.usagesForStart = 999;
                }
            }
            players.Add(player);

            for (int j = 0; j < levelSetupInfo.numberOfCharacters; j++)
            {
                int randomSpawnPointNumber = Random.Range(0, soldierSpawnPoints.Count);
                CharacterSoldier soldier   = Instantiate(characterSoldierPrefab,
                                                         soldierSpawnPoints[randomSpawnPointNumber].transform.position,
                                                         soldierSpawnPoints[randomSpawnPointNumber].transform.rotation).GetComponent <CharacterSoldier>();
                soldier.transform.SetParent(charactersParent);
                soldierSpawnPoints.RemoveAt(randomSpawnPointNumber);
                player.soldiers.Add(soldier);
                soldier.playerInstance = player;
            }
        }
    }
Ejemplo n.º 2
0
    public void Button_StartGame()
    {
        SavePreferences();

        LevelSetupInfo setupInfo = new LevelSetupInfo(numberOfPlayers, numberOfCharacters, timerGame, enviroDestructionGame, infiniteAmmoGame);

        LevelFlow.levelSetupInfo = setupInfo;
        loadingIconObject.SetActive(true);
        transform.parent.gameObject.SetActive(false);
        Game.LoadSceneWithLoadingScreen(Database.Levels.gameLevelInfos[currentChosenLevelNumber].sceneAssetName);
    }