Пример #1
0
    public void loadServerRaffleFromFile(int numRaffle) // (для розыгрышы из файла) загрузить розыгрышь за номером из списка строк в файле
    {
        print("l===========oadServerRaffleFromFile");
        loadJSONFile();
        MAIN main = MAIN.getMain;

        main.changeNameBtnOn("Restart", "Start");
        main.setEnableBtn("Start", true);
        main.setEnableBtn("BuyTicket", true);
        main.onBuyTicket();
        MAIN.getMain.handlerServerData.setRaffle(JsonUtility.FromJson <RaffleJSON>(raffleLines[numRaffle]));
    }
Пример #2
0
    // █ Докупить шар. Задизейбливает кнопку, а так же посылает запрос на сервер на получение нового дополнительного шара, (если текущем есть поментка на его доступность)
    public void buyBall()
    {
        int ballCost = 0;
        var gameMode = main.gameMode;

        //print("main.raffle.raffleState:"+main.raffle.raffleState);
        if (gameMode == GameMode.SERVER)
        {
            if (!main.isWaitingReplyAboutBallsFromServer)
            {
                //main.isWaitingReplyAboutBallsFromServer = true;
                if (!main.handlerServerData.isAvailableNextBall)
                {
                    //print("last Ball!");
                    //main.raffle.onFinishRaffle();
                    main.setEnableBtn("BuyBallBtn", false);
                }
            }
            else
            {
                print("main.isWaitingReplyAboutBallsFromServer == true");
            }
            //return;
        }
        else     //if (gameMode == GameMode.CLIENT_GENERATE || gameMode == GameMode.JSON_FILE || gameMode == GameMode.JSON_FILE_IN_ANDROID) {
        {
            ballCost = MAIN.ballCost1x;
            for (int i = 0; i < countBalls - main.maxCountTrayedFreeBalls + 1; i++)
            {
                ballCost *= 2;
            }
            //main.setCaptionBtn("BuyBall", "Buy Ball: " + ballCost.ToString());
        }

        //main.addMoneyValue(-ballCost);

        if (main.raffle.raffleState == RaffleState.ADDITIONAL_BALL)
        {
            //Debug.Log("[Buy additional Ball!]");
            createVisualBall(true);
            if (main.maxCountTrayedFreeBalls + main.maxCountTrayedAdditionalBalls < countBalls)
            {
                main.setEnableBtn("BuyBall", false);
            }
        }
    }
Пример #3
0
    // (не используется, ранее использовалось в одиночной игре, где можно было докупать новый билет, клиент генерил его сходу) создать новый билет
    public void createNewTicket()
    {
        if (ballsWave != null)
        {
            ballsWave.stop();
        }
        if (Rooms.countTickets < transform.childCount)
        {
            return;
        }
        switch (main.gameMode)
        {
        case GameMode.CLIENT_GENERATE: {
            _createNewTicket();
            if (transform.childCount + 1 == Rooms.countTickets)
            {
                main.setEnableBtn("BuyTicket", false);
            }
            return;
        } break;

        case GameMode.JSON_FILE: setTickets(main.jsonHandler.getTickets()); break;

        case GameMode.SERVER: {
            if (!main.isWaitingReplyAboutRaffleFromServer)
            {
                setTickets(main.handlerServerData.getTickets());
            }
            else
            {
                isNeedSetTickets = true;
            }
        }; break;
        }
        main.setEnableBtn("BuyTicket", false);
    }
Пример #4
0
    // ряд операций, при смене на соответсвующий стейт
    public void setState(RaffleState newState)
    {
        //print("[setState] newState: " + newState);
        switch (newState)
        {
        case RaffleState.WAIT: {
            if (main.gameMode != GameMode.SERVER)
            {
                main.changeNameBtnOn("Restart", "Start");
                main.setEnableBtn("Start", true);
                main.setEnableBtn("BuyTicket", true);
                //main.setCaptionBtn("BuyTicket", "Buy Ticket: " + MAIN.ticketCost.ToString());
                //main.setCaptionBtn("BuyBall", "Buy Ball: " + MAIN.ballCost1x.ToString());
            }
            main.setEnableBtn("Restart", true);
            //main.setEnableBtn("BuyBallBtn", false);
        } break;

        case RaffleState.WAIT_SERVER_DATA: {
            main.setEnableBtn("Restart", false);
            main.setEnableBtn("Start", false);
            //main.setEnableBtn("BuyBallBtn", false);
            main.setEnableBtn("BuyTicket", false);
        } break;

        case RaffleState.PROCEED: {
            main.changeNameBtnOn("Start", "Restart");
            main.setEnableBtn("BuyTicket", false);
            //Tutorial.show(TutorialSubject.TS_TEMPLEATES);
        } break;

        case RaffleState.FINISHED: {
            //HUD.setEnableBackButton(true);
            //if (main.handlerServerData.isAvailableNextBall) HUD.showBuyBallBtn();
        } break;

        case RaffleState.ADDITIONAL_BALL: {
            startCheckTime = Time.time;
            DragonHead.openMore();
        } break;

        case RaffleState.FINISH: {
            //Tutorial.show(TutorialSubject.TS_BUY_GOLD_BTN);
            getDrum().state = Drum.State.STOPING;
            HUD.setEnableBackButton(true);
            if (main.handlerServerData.isAvailableNextBall)
            {
                HUD.showBuyBallBtn();
                var flickering = Flickering.set(HUD.getBuyBallButton().gameObject, 1.5f);         // #V мигание кнопки докупки шаров
                flickering.setFlickeringUntilPress();
            }
            else
            {
                var flickering = Flickering.set(HUD.getBackButton().gameObject, 1.5f);         // #V мигание кнопки выхода
                flickering.setFlickeringUntilPress();
                DragonHead.openFull();
                main.receivingTray.setGravityForBalls(10);
                TicketsHolder.startHideTickets();
            }
            Utils.screenShot("OnFinishRaffle.png");         // только в режиме тестировки
        }
        break;
        }
        raffleState = newState;
    }