Esempio n. 1
0
    private void playerVerification()
    {
        GameObject[] players          = GameObject.FindGameObjectsWithTag("Player");
        ArrayList    alivePlayersList = new ArrayList();

        alivePlayers = 0;

        foreach (GameObject player in players)
        {
            PlayerHealth playerHealth = player.GetComponent <PlayerHealth>();
            if (!playerHealth.isDead)
            {
                alivePlayers++;
                alivePlayersList.Add(player);
            }
        }

        Debug.Log("alivePlayers = " + alivePlayers);

        if (LevelParam.Get("mode").Equals("coop") && alivePlayers == 0)
        {
            noPlayer();
        }
        if (LevelParam.Get("mode").Equals("versus") && alivePlayers == 1)
        {
            onePlayerOnly((GameObject)alivePlayersList.ToArray()[0]);
        }
    }
Esempio n. 2
0
    public void reload(LevelParam param)
    {
        for (int i = 0; i < 2; i++)
        {
            player_state[i].life             = param.lives;
            player_state[i].active_bounce_cd = param.bounce_cd_init;
            player_state[i].active_bounce_tr = 0;
            player_state[i].launch_cd        = param.launch_cd_init;
            player_state[i].launch_tr        = 0;
            player_state[i].launcher_angle   = UnityEngine.Random.Range(
                param.launcher_min_angle, param.launcher_max_angle);
            player_state[i].bounce_value          = 0;
            player_state[i].bounce_value_required = param.bounce_value_required;
            player_state[i].bounce_value_offset   = 0;
            player_state[i].num_balls             = 1;

            int champion = StatManager.get_state().champion[i];

            if (champion == 1)
            {
                player_state[i].active_bounce_cd -= param.championA_bounce_cd_dec;
            }
            else if (champion == 2)
            {
                player_state[i].launch_cd -= param.championB_launch_cd_dec;
            }
            else if (champion == 3)
            {
                player_state[i].bounce_value_offset = param.bounce_value_required - param.championC_bounce_value_required;
                player_state[i].bounce_value        = player_state[i].bounce_value_offset;
            }
        }
    }
    public void goToNextScene()
    {
        if (cooperationMode.isOn)
        {
            LevelParam.Set("mode", "coop");
            if (difficultyNormal.isOn)
            {
                LevelParam.Set("difficulty", "normal");
            }
            else
            {
                LevelParam.Set("difficulty", "hard");
            }
        }
        else
        {
            LevelParam.Set("mode", "versus");
        }

        LevelParam.Set("levelNumber", indexLevel + 1.ToString());
        int numberOfPlayer = 1 + GamepadManagement.GamepadConnectedNumber();

        LevelParam.Set("numberOfPlayer", "" + numberOfPlayer);

        SceneManager.LoadScene("avatarSelection", LoadSceneMode.Additive);
    }
Esempio n. 4
0
    public Color getColorFromParam(int indexPlayer)
    {
        String avatar = "color" + indexPlayer;

        switch (LevelParam.Get(avatar))
        {
        case "0":
            return(new Color(1, 1, 0));

        case "1":
            return(new Color(1, 0, 1));

        case "2":
            return(new Color(0, 1, 1));

        case "3":
            return(new Color(1, 0.5f, 0));

        case "4":
            return(new Color(0, 0, 1));

        default:
            return(new Color(1, 1, 1));
        }
    }
Esempio n. 5
0
    void Start()
    {
        //Getting
        String scoreP1 = "(Not found)";
        String scoreP2 = "(Not found)";
        String scoreP3 = "(Not found)";
        String scoreP4 = "(Not found)";

        if (LevelParam.Get("scoreP1") != null && LevelParam.Get("scoreP2") != null && LevelParam.Get("scoreP3") != null && LevelParam.Get("scoreP4") != null)
        {
            scoreP1 = LevelParam.Get("scoreP1");
            scoreP2 = LevelParam.Get("scoreP2");
            scoreP3 = LevelParam.Get("scoreP3");
            scoreP4 = LevelParam.Get("scoreP4");
        }

        String text = "Player 1 - " + scoreP1 + " points\n";

        text = String.Concat(text, "Player 2 - " + scoreP2 + " points\n");

        if (System.Int32.Parse(LevelParam.Get("numberOfPlayer")) > 2)
        {
            text = String.Concat(text, "Player 3 - " + scoreP3 + " points\n");
        }
        if (System.Int32.Parse(LevelParam.Get("numberOfPlayer")) > 3)
        {
            text = String.Concat(text, "Player 4 - " + scoreP4 + " points");
        }

        //Displaying
        Text textObject = this.gameObject.GetComponent <Text>();

        textObject.text = text;
    }
Esempio n. 6
0
 //Can't find any enemy
 public void noEnemy()
 {
     if (LevelParam.Get("mode").Equals("coop"))
     {
         Debug.Log("[GameFlow.cs] Won Wave");
         launchWave();
     }
 }
Esempio n. 7
0
 public void set_param(LevelParam param, GameState.SinglePlayerState state, int player_id)
 {
     this.player_state = state;
     angle_max         = param.launcher_max_angle;
     angle_min         = param.launcher_min_angle;
     angular_speed     = param.launcher_angular_speed * (2 * Random.Range(0, 2) - 1);
     //barrel_dr = player_id == 0 ? barrel_dr : -barrel_dr;
 }
Esempio n. 8
0
    private void launchRound()
    {
        switch (roundNum)
        {
        case 1:     //First wave

            //Reset/Initialization of the score
            LevelParam.Set("scoreP1", "0");
            LevelParam.Set("scoreP2", "0");
            LevelParam.Set("scoreP3", "0");
            LevelParam.Set("scoreP4", "0");

            //Display the alert on the game
            DisplayAlert.Print("Manche " + roundNum);
            roundNum++;
            break;

        case 2:     //Second wave
            resetHealth();
            resetPosition();

            //Display the alert on the game
            DisplayAlert.Print("Manche " + roundNum);
            roundNum++;
            break;

        case 3:     //Third wave
            resetHealth();
            resetPosition();

            //Display the alert on the game
            DisplayAlert.Print("Manche " + roundNum);
            roundNum++;
            break;

        case 4:     //Third wave
            resetHealth();
            resetPosition();

            //Display the alert on the game
            DisplayAlert.Print("Manche " + roundNum);
            roundNum++;
            break;

        case 5:     //Third wave
            resetHealth();
            resetPosition();

            //Display the alert on the game
            DisplayAlert.Print("Manche " + roundNum);
            roundNum++;
            break;

        case 6:     //Won
            SceneManager.LoadScene("versusLevelSuccess", LoadSceneMode.Single);
            break;
        }
    }
Esempio n. 9
0
 public void set_param(LevelParam param)
 {
     touch_dt = param.touch_dt;
     v_up     = param.bounce_dy / param.bounce_dt;
     v_down   = param.bounce_dy / param.bounce_dt2;
     dy       = param.bounce_dy;
     dy2      = param.hit_dy;
     v2       = param.hit_dy / param.hit_dt;
 }
Esempio n. 10
0
    //Use this for initialization
    void Start()
    {
        //Getting all the necessary parameters
        try
        {
            if (LevelParam.Get("numberOfPlayer") != null)
            {
                numberOfPlayer = System.Int32.Parse(LevelParam.Get("numberOfPlayer"));
            }

            if (LevelParam.Get("levelNumber") != null)
            {
                levelNumber = System.Int32.Parse(LevelParam.Get("levelNumber"));
            }
            else
            {
                LevelParam.Set("levelNumber", "1");
            }

            if (LevelParam.Get("mode") != null) //"coop" or "versus"
            {
                mode = LevelParam.Get("mode");
            }
            else
            {
                LevelParam.Set("mode", "coop");
            }
        }
        catch (Exception e)
        {
            //Problem with a parameter
            Debug.Log("[GameFlow.cs] Problem with a level parameter" + e);
            Debug.Log(e.Message);
            //Back to the menu
            SceneManager.LoadScene("mainMenu", LoadSceneMode.Single);
        }

        //Loading of the level
        GameObject level = Instantiate(Resources.Load("Level/Level" + levelNumber, typeof(GameObject))) as GameObject;

        //Loading of the players
        generatePlayers(numberOfPlayer);

        if (mode.Equals("coop"))
        {
            //Launching the first wave
            waveNum = 1;
            launchWave();
        }
        else
        {
            //Launching the first round
            roundNum = 1;
            launchRound();
        }
    }
Esempio n. 11
0
    public void reload(LevelParam param, int bot_level)
    {
        this.defence_buffer = param.defence_buffer;
        this.attack_buffer  = param.attack_buffer;
        this.bounce_dy      = param.bounce_dy * param.bounce_activate_range_rel;
        this.speed          = param.bot_speed[bot_level];
        this.prediction     = param.bot_prediction[bot_level];
        this.active_bounce  = param.does_attack[bot_level];

        bot.set_speed(speed);
    }
Esempio n. 12
0
    public void NextLevel()
    {
        if (LevelParam.Get("levelNumber") == null)
        {
            LevelParam.Set("levelNumber", "1");
        }

        if (System.Int32.Parse(LevelParam.Get("levelNumber")) < 2)
        {
            LevelParam.Set("levelNumber", System.Int32.Parse(LevelParam.Get("levelNumber")) + 1 + "");
        }
        SceneManager.LoadScene("sandbox", LoadSceneMode.Single);
    }
Esempio n. 13
0
    public void Revive()
    {
        if (LevelParam.Get("mode") == "coop")
        {
            userControl.Dead = isDead = false;
            animator.SetBool("IsDead", false);
            animator.Play("Idle");
            currentHealth = (int)(maxHealth / 2);
            Debug.Log(this.gameObject.name + " revived !");
            // Set the health bar's value to the current health.
            healthSlider.value = (float)currentHealth / maxHealth;

            GetComponent <PlayerInventory>().SetCurrentItem(0);
        }
    }
Esempio n. 14
0
    //Can find only one player (versus mode)
    public void onePlayerOnly(GameObject player)
    {
        int playerNumber = player.GetComponent <UserControl>().getNumber() + 1;

        Debug.Log("[GameFlow.cs] The player " + playerNumber + " won !");


        Debug.Log("scoreP" + playerNumber + " = " + LevelParam.Get("scoreP" + playerNumber));


        int actualScore = System.Int32.Parse(LevelParam.Get("scoreP" + playerNumber));

        //We add a point to this player
        LevelParam.Set("scoreP" + playerNumber, actualScore + 1 + "");

        launchRound();
    }
Esempio n. 15
0
    public void createGame()
    {
        LevelParam.Set("color1", indexAvatar.ToString());
        if (difficultyNormal.isOn)
        {
            LevelParam.Set("difficulty", "normal");
        }
        else
        {
            LevelParam.Set("difficulty", "hard");
        }

        LevelParam.Set("levelNumber", (indexLevel + 1).ToString());
        LevelParam.Set("mode", "coop");

        SceneManager.LoadScene("sandbox");
    }
Esempio n. 16
0
    public void StartGame()
    {
        int nb_players = GamepadManagement.GamepadConnectedNumber() + 1;

        LevelParam.Set("color1", indexAvatar1.ToString());
        LevelParam.Set("color2", indexAvatar2.ToString());
        if (nb_players > 2)
        {
            LevelParam.Set("color3", indexAvatar3.ToString());
        }
        if (nb_players > 3)
        {
            LevelParam.Set("color4", indexAvatar4.ToString());
        }


        SceneManager.LoadScene("sandbox");
    }
Esempio n. 17
0
    public void reload_level(int level)
    {
        Debug.Log(level);
        Debug.Log(StatManager.get_state().current_map);
        Debug.Log(StatManager.get_state().bot_level);
        game_terrian.preload_level(StatManager.get_state().current_map);
        game_terrian.instantiate_level(StatManager.get_state().current_map);

        level_param = game_param.level_params[level];

        if (StatManager.get_state().game_mode == 0)
        {
            StatManager.get_state().champion[1] = UnityEngine.Random.Range(1, 4);
        }

        game_state.reload(level_param);
        brick_manager.reload(level_param);
        brick_manager.generate_map(game_terrian.get_grid());

        for (int i = 0; i < 2; i++)
        {
            player_item[i].board.GetComponent <Board>().set_param(level_param);
            player_item[i].board.GetComponent <Board>().player_id = i;
            board_dragged(Vector2.zero, i);
            player_item[i].launcher.GetComponent <Launcher>().set_param(level_param, game_state.player_state[i], i);
        }
        ongame_ui_manager.reload(game_state);
        if (bot_manager != null)
        {
            bot_manager.reload(level_param, StatManager.get_state().bot_level);
        }
        if (bot_manager2 != null)
        {
            bot_manager2.reload(level_param, 2);
        }

        is_paused        = false;
        is_finished      = false;
        time_begin       = Time.time;
        checkpoint_state = 0;
    }
Esempio n. 18
0
        public bool AddPlug2Configure(string id, string levels, string freeShippingMoney, string fullCarriage, int priority, string noFullCarriage)
        {
            JavaScriptSerializer jss = new JavaScriptSerializer();
            var        list          = levels.Split(new char[] { ',', ',' });
            LevelParam param         = new LevelParam
            {
                Priority          = priority,
                Levels            = list.Select(x => int.Parse(x)).ToList(),
                FreeShippingMoney = int.Parse(freeShippingMoney),
                FullCarriage      = int.Parse(fullCarriage),
                NoFullCarriage    = int.Parse(noFullCarriage)
            };

            var plug = AdminCarriageClient.Instance.GetPlugConfigure(2);


            var ret = jss.Deserialize <Myzj.OPC.UI.Model.AdminCarriage.Level>(plug);

            ret.LevelParams.Add(param);
            return(AdminCarriageClient.Instance.UpdatePlugConfigure(2, jss.Serialize(ret)));
        }
Esempio n. 19
0
        public ActionResult Detail2Operation(int rowindex = -1)
        {
            var plug = AdminCarriageClient.Instance.GetPlugConfigure(2);

            JavaScriptSerializer jss = new JavaScriptSerializer();
            var ret = jss.Deserialize <Level>(plug);

            LevelParam param = new LevelParam();

            if (rowindex >= 0)
            {
                param = ret.LevelParams[rowindex];
            }
            else
            {
                param.Priority = 1;

                param.Levels = new List <int>();
            }

            ViewBag.rowindex = rowindex;
            return(View(param));
        }
Esempio n. 20
0
 public void reload(LevelParam param)
 {
     probabilites     = param.brick_probabilities;
     durability_probs = param.brick_durability_probs;
     triangluar_iron_brick_probability = param.triangluar_iron_brick_probability;
 }
Esempio n. 21
0
    void Awake()
    {
        Application.targetFrameRate = 60;
        // static resources (does not change by changing level)

        var item_prefab_list = new List <string> {
            "Ball", "Board", "Launcher", "LaunchIndicator", "BallIndicator", "HP", "BounceValueIndicator"
        };

        item_prefabs = new Dictionary <string, GameObject>();
        foreach (var item_name in item_prefab_list)
        {
            item_prefabs.Add(item_name, ResManager.load_prefab(item_name));
        }

        game_param = ParamManager.load_param(0);
//        game_param = new GameParam();
//        ParamManager.save_param(0, game_param);
        game_state.initialize(game_param);
#if UNITY_EDITOR
        game_state_display  = game_state;
        level_param_display = game_param.level_params[0];
#endif


        for (int i = 0; i < 2; i++)
        {
            player_item[i].board                 = Instantiate(item_prefabs["Board"]);
            player_item[i].launcher              = Instantiate(item_prefabs["Launcher"]);
            player_item[i].launch_indicator      = Instantiate(item_prefabs["LaunchIndicator"]);
            player_item[i].ball_indicator        = Instantiate(item_prefabs["BallIndicator"]);
            player_item[i].bouncevalue_indicator = Instantiate(item_prefabs["BounceValueIndicator"]);
            player_item[i].bouncevalue_indicator.GetComponent <BounceValueIndicator>().player_id = i;

            player_item[i].HPs = new GameObject[game_param.level_params[0].lives];
            for (int j = 0; j < game_param.level_params[0].lives; j++)
            {
                player_item[i].HPs[j] = Instantiate(item_prefabs["HP"]);
            }
        }
        ongame_ui_manager.initialize(player_item, StatManager.get_state().game_mode == 0 ? 1 : 2);

        ball_manager.initialize(this, item_prefabs["Ball"], game_param);
        ui_manager.initialize();
        animation_manager.initialize();
        sound_manager.initialize();

        if (StatManager.get_state().game_mode == 0)
        {
            bot_manager = new BotManager();
            bot_manager.initialize(player_item[1].board, item_prefabs["Ball"], 1);
        }
#if UNITY_EDITOR
        else if (StatManager.get_state().game_mode == 2)
        {
            bot_manager2.initialize(player_item[0].board, item_prefabs["Ball"], 0);
        }
#endif

        // prepare level
        reload_level(StatManager.get_state().current_level);
    }