Exemple #1
0
 private void ResetGame()
 {
     GuiBase.ShowDialog("Everything will be resetted to the base values.", "Do you really want to reset the game?", delegate
     {
         if (App.CurrentPlattform == Plattform.Kongregate)
         {
             MainUi.ExportToClipboard();
             MainUi.ResetGame();
             GuiBase.ShowToast("Game resetted and your gamestate is saved to the clipboard in case you still want to keep it somewhere.");
         }
         else if (App.CurrentPlattform == Plattform.Steam)
         {
             string text = "SaveBeforeReset";
             string str  = Application.dataPath + "\\" + text;
             Storage.SaveGameState(App.State, text);
             MainUi.ResetGame();
             GuiBase.ShowToast("Game resetted and your game is saved to " + str + " in case you still want to keep it somewhere.");
         }
         else
         {
             MainUi.ResetGame();
         }
     }, delegate
     {
     }, "Yes", "No", false, false);
 }
Exemple #2
0
        /* Private members */

        /// <summary>Initializes the base program structure.</summary>
        private static void Init()
        {
            Catalog.Init(ExecutionContext.TranslationDomain, ExecutionContext.LocaleDir);

            /* Initialize Command manager */
            commandManager = new CommandManager();

            /* Initialize handlers */
            handlers = new EventHandlers();

            /* Initialize misc */
            clipboards         = new Clipboards();
            globalAccelerators = new GlobalAccelerators();
            dragDrop           = new DragDrop();
            config             = new Config();
            dialogs            = new Dialogs();
            spellLanguages     = new SpellLanguages();
            backup             = new Backup();

            /* Initialize the GUI */
            ui = new MainUi(handlers);

            //The window must be made visible here because classes such as EventHandlers.OnSizeAllocated) may depend on
            //'ui' being set when the window is made visible (so it can't be made visible inside MainUi's constructor).
            ui.Show();

            clipboards.WatchPrimaryChanges = true;

            EmitInitFinishedEvent();
        }
Exemple #3
0
        /* Private members */

        /// <summary>Initializes the base program structure.</summary>
        /// <remarks>Nothing is done if initialization has already occured. The core value is checked for this,
        /// if it's null then initialization hasn't occured yet.</remarks>
        private static void Init(ExecutionContext newExecutionContext)
        {
            if ((executionContext != null) && (executionContext.Initialized))
            {
                throw new Exception("The Base environment was already initialized.");
            }

            executionContext = newExecutionContext;
            executionContext.InitApplication();

            /* Initialize Command manager */
            commandManager = new CommandManager();

            /* Initialize handlers */
            handlers = new EventHandlers();

            /* Initialize misc */
            clipboards         = new Clipboards();
            globalAccelerators = new GlobalAccelerators();
            dragDrop           = new DragDrop();
            config             = new Config();
            dialogs            = new Dialogs();
            spellLanguages     = new SpellLanguages();
            backup             = new Backup();

            /* Initialize the GUI */
            ui = new MainUi(handlers);
            clipboards.WatchPrimaryChanges = true;
            Catalog.Init(ExecutionContext.TranslationDomain, ExecutionContext.LocaleDir);

            EmitInitFinishedEvent();
        }
Exemple #4
0
        public virtual void Handle(
            MainUi ui,
            Do logIn,
            Do shutdown)
        {
            var r             = this.runner;
            var currentLevel  = zeroAccess;
            var shutdownLevel = zeroAccess;

            r?.Run <AccessController, SettingsHolder>(
                (ac, s) =>
            {
                currentLevel  = ac.CurrentAccessLevel;
                shutdownLevel = s.ShutdownLevel;
            });

            if (currentLevel >= shutdownLevel)
            {
                shutdown?.Invoke();
                return;
            }

            logIn?.Invoke();
            r?.Run <AccessController>(ac =>
            {
                if (ac.CurrentAccessLevel >= shutdownLevel)
                {
                    shutdown?.Invoke();
                }
            });
        }
Exemple #5
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// オーラボールの動き
    /// </summary>
    void AuraBallControl()
    {
        if (m_nowRank != 0)
        {
            //1ランク上の敵を設定
            AuraBallTarget = EnemyObject[m_nowRank - 1];
        }
        else
        {
            //1番上にいる敵を設定
            AuraBallTarget = EnemyObject[0];
        }

        if (m_isDpadYBecameNegative)
        {
            OperatingPlayer.ThrowAuraBall(AuraBallTarget, AuraAttribute.Heat);
            MainUi.SetMarkThatCanNotAccelerated(false);
        }
        else if (m_isDpadXBecameNegative)
        {
            OperatingPlayer.ThrowAuraBall(AuraBallTarget, AuraAttribute.Elasticity);
            MainUi.SetMarkThatCanNotAccelerated(false);
        }
        else if (m_isDpadXBecamePositive)
        {
            OperatingPlayer.ThrowAuraBall(AuraBallTarget, AuraAttribute.Electrical);
            MainUi.SetMarkThatCanNotAccelerated(false);
        }
    }
Exemple #6
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// UI
    /// </summary>
    void MyUIControl()
    {
        //水の残量表示
        MainUi.SetRemainingAmountOfWater(OperatingPlayer.GetPercentageOfRemainingWater());

        //スペシャルゲージの割合表示
        MainUi.SetRemainingAmountOfAcceleration(OperatingPlayer.GetPercentageOfRemainingSpGauge());

        //コイン所持数表示
        MainUi.SetNumOfCoins(OperatingPlayer.NumOfCoins);

        //回復率のゲージ表示
        MainUi.SetRankingSpGauge(m_playerNum, OperatingPlayer.GetPercentageOfRemainingSpGauge());

        //加速できない印
        MainUi.SetMarkThatCanNotAccelerated(OperatingPlayer.IsUseSp);

        //オーラボールのヒット情報
        MainUi.ShowHitInfoOfAuraBall(OperatingPlayer.GetKilledPlayerName());

        //回復率を得る
        if (m_isPlayerFall)
        {
            MainUi.SetRecoveryRate(OperatingPlayer.GetRecoveryRate());
        }
    }
Exemple #7
0
 public MainPresenter(
     MainUi ui,
     MethodRunner runner)
     : base(ui, null)
 {
     this.ui     = ui;
     this.runner = runner;
 }
Exemple #8
0
 public SetupMainCommand(
     MainUi ui,
     MethodWeb web,
     SettingsHolder settings)
 {
     this.ui       = ui;
     this.web      = web;
     this.settings = settings;
 }
Exemple #9
0
 //----------------------------------------------------------------------------------------------------
 /// <summary>
 /// ランキングの設定
 /// </summary>
 void CheckRanking()
 {
     if (m_displayRanking)
     {
         if (Player.transform.position.y < m_height[6])
         {
             m_players[6] = (int)Ranks.Seventh;
             m_players[7] = (int)Ranks.Eighth;
         }
         else if (Player.transform.position.y < m_height[5])
         {
             m_players[5] = (int)Ranks.Sixth;
             m_players[6] = (int)Ranks.Eighth;
             m_players[7] = (int)Ranks.Seventh;
         }
         else if (Player.transform.position.y < m_height[4])
         {
             m_players[4] = (int)Ranks.Fifth;
             m_players[5] = (int)Ranks.Seventh;
             m_players[7] = (int)Ranks.Sixth;
         }
         else if (Player.transform.position.y < m_height[3])
         {
             m_players[3] = (int)Ranks.Fourth;
             m_players[4] = (int)Ranks.Sixth;
             m_players[7] = (int)Ranks.Fifth;
         }
         else if (Player.transform.position.y < m_height[2])
         {
             m_players[2] = (int)Ranks.Third;
             m_players[3] = (int)Ranks.Fifth;
             m_players[7] = (int)Ranks.Fourth;
         }
         else if (Player.transform.position.y < m_height[1])
         {
             m_players[1] = (int)Ranks.Second;
             m_players[2] = (int)Ranks.Fourth;
             m_players[7] = (int)Ranks.Third;
         }
         else if (Player.transform.position.y < m_height[0])
         {
             m_players[0] = (int)Ranks.First;
             m_players[1] = (int)Ranks.Third;
             m_players[7] = (int)Ranks.Second;
         }
         else
         {
             m_players[0] = (int)Ranks.Second;
             m_players[7] = (int)Ranks.First;
         }
         m_nowRank = m_players[7];
         MainUi.SetRank(m_players, m_playerNum);
     }
 }
Exemple #10
0
    private async UniTask <IEnumerable <LevelIcon> > CreateViews(CancellationToken token)
    {
        Level[] levels = await MainUi.GetAvailableLevels().AttachExternalCancellation(token);

        var icons = new LevelIcon[levels.Length];

        for (int i = 0; i < levels.Length; i++)
        {
            icons[i] = _levelIconFactory.Create(levels[i]);
        }
        return(icons);
    }
Exemple #11
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// 水の残量の確認
    /// </summary>
    void CheckRemainingWater()
    {
        //残量0で落下開始
        if (OperatingPlayer.GetPercentageOfRemainingWater() == 0)
        {
            MainUi.StartOfFall(OperatingPlayer.ReasonForFallingEnum);
            if (m_isPlayerFall)
            {
                MyJetWaterScript[0].JetFire(false);
            }
        }

        //回復で落下終了
        if (!m_isPlayerFall && OperatingPlayer.GetPercentageOfRemainingWater() >= 0.99)
        {
            MainUi.StopOfFall();
            MyJetWaterScript[0].JetFire(true);
        }
    }
Exemple #12
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    ///スタート
    /// </summary>
    private void Start()
    {
        MainUi.SetNumOfCoins();
        MainUi.StopOfFall();

        //音の再生
        MySoundManager.Instance.Play(BgmCollection.Battle);

        //敵の設定
        for (int i = 1; i < MyJetWaterScript.Length; i++)
        {
            SetAnimation(PlayerBehaviorStatus.HorizontalMovement, i);
            MyJetWaterScript[i].JetFire(true);
        }

        //ランキング設定
        m_players[0] = (int)Ranks.First;
        m_players[1] = (int)Ranks.Second;
        m_players[2] = (int)Ranks.Third;
        m_players[3] = (int)Ranks.Fourth;
        m_players[4] = (int)Ranks.Fifth;
        m_players[5] = (int)Ranks.Sixth;
        m_players[6] = (int)Ranks.Seventh;
        m_players[7] = (int)Ranks.Eighth;

        //プレイヤーは7番
        m_playerNum = 7;
        MainUi.SetRank(m_players, m_playerNum);

        //現在の高さ配列
        m_height[0] = 700;
        m_height[1] = 600;
        m_height[2] = 500;
        m_height[3] = 400;
        m_height[4] = 300;
        m_height[5] = 200;
        m_height[6] = 100;
        m_height[7] = (int)Player.transform.position.y;

        m_displayRanking = true;

        TimerText.text = "" + m_tutorialTime;
    }
Exemple #13
0
    protected override void Start()
    {
        base.Start();
        Levels
        .onClick
        .AsObservable()
        .Subscribe(x => MainUi.ShowLevels())
        .AddTo(this);

        Settings
        .onClick
        .AsObservable()
        .Subscribe(x => MainUi.ShowSettings())
        .AddTo(this);

        RateUs
        .onClick
        .AsObservable()
        .Subscribe(x => MainUi.RateUs())
        .AddTo(this);
    }
Exemple #14
0
    protected override void Start()
    {
        base.Start();
        Back.onClick.AddListener(() => MainUi.ShowMain());

        volume.maxValue = Constants.MixerMax;
        volume.minValue = Constants.MixerMin;

        if (_masterMixer.audioMixer.GetFloat(Constants.MainMixerVolume, out var mainMixerVolume))
        {
            volume.value = mainMixerVolume;
        }

        volume
        .onValueChanged
        .AsObservable()
        .DistinctUntilChanged()
        .Subscribe(val =>
        {
            _masterMixer.audioMixer.SetFloat(Constants.MainMixerVolume, val);
        })
        .AddTo(this);

        volume
        .onValueChanged
        .AsObservable()
        .Throttle(TimeSpan.FromSeconds(10))
        .Subscribe(val =>
        {
            Analytics.CustomEvent(
                Constants.VolumeValueChanged,
                new Dictionary <string, object>()
            {
                { "value", val }
            }
                );
        })
        .AddTo(this);
    }
Exemple #15
0
 public static Widget GetWidget(string name)
 {
     return(MainUi.GetWidget(name));
 }
Exemple #16
0
 void Start()
 {
     car       = FindObjectOfType <Car>().GetComponent <Car>();
     startGame = FindObjectOfType <StartGame>().GetComponent <StartGame>();
     mainUi    = FindObjectOfType <MainUi>().GetComponent <MainUi>();
 }
Exemple #17
0
 private void Export()
 {
     MainUi.ExportToClipboard();
     GuiBase.ShowToast("Gamestate is saved to the clipboard!");
 }
Exemple #18
0
 //----------------------------------------------------------------------------------------------------
 /// <summary>
 /// プレイヤーとの衝突
 /// </summary>
 public void PlayerCollision()
 {
     MainUi.StartOfFall(OperatingPlayer.ReasonForFallingEnum);
 }