コード例 #1
0
 void Start()
 {
     interactionController = GetComponent <InteractionController>();
     GameEventMessage.AddListener((GameEventMessage message) => onGameMessage(message.EventName));
     if (SaveGameSystem.DoesSaveGameExist(saveGameName))
     {
         var success = loadIsland();
         if (!success)
         {
             Debug.Log("failed to load saved island");
             onWinterSettingsSelected();
             spawnInitialSheep();
             startGameButton.text = "Start";
         }
         else
         {
             SheepAgent[] allSheep = FindObjectsOfType <SheepAgent>();
             if (allSheep.Length == initialSheepCount)
             {
                 startGameButton.text = "Start";
             }
             else
             {
                 startGameButton.text = "Continue";
             }
         }
     }
     else
     {
         onWinterSettingsSelected();
         spawnInitialSheep();
         startGameButton.text = "Start";
     }
 }
コード例 #2
0
    // Start is called before the first frame update
    IEnumerator Start()
    {
        if (GameManager.Instance.gameFinished)
        {
            yield return(null);

            GameEventMessage.SendEvent("GameFinished");
            GameManager.Instance.gameFinished = false;
        }
        else
        {
            yield return(new WaitForSeconds(2));

            alias = PlayerPrefs.GetString("player_alias", string.Empty);
            Debug.Log(alias);
            if (!string.IsNullOrEmpty(alias))
            {
                GameEventMessage.SendEvent("AliasExists");
            }
            else
            {
                GameEventMessage.SendEvent("AliasNotExists");
            }
        }
    }
コード例 #3
0
        private void OnGameEventMessage(GameEventMessage message)
        {
            if (OutputSockets == null || OutputSockets.Count == 0)
            {
                return;
            }

            foreach (Socket socket in OutputSockets)
            {
                if (!socket.IsConnected)
                {
                    continue;
                }
                UIConnection value = UIConnection.GetValue(socket);
                if (value.Trigger != UIConnectionTrigger.GameEvent)
                {
                    continue;
                }
                if (!value.GameEvent.Equals(message.EventName))
                {
                    continue;
                }
                ActivateOutputSocketInputNode(socket);
                break;
            }
        }
コード例 #4
0
    private IEnumerator DelayedMessage(string message)
    {
        yield return(new WaitForSeconds(1.0f));

        Debug.Log($"#GameEvents#Sending Game event message: {message}");
        GameEventMessage.SendEvent(message);
    }
コード例 #5
0
 //ミス処理
 //1秒待機した後にイベントメッセージを送信
 private void GameOver()
 {
     Observable.Timer(TimeSpan.FromSeconds(1)).Subscribe(_ =>
     {
         GameEventMessage.SendEvent(eventName[2]);
     });
 }
コード例 #6
0
 private void OnSkillTestClicked()
 {
     if (SaveController.Instance.GameData.BoterKroon.SkillResults.Count > 0)
     {
         GameEventMessage.SendEvent(uiEventStringToSkillTest);
     }
 }
コード例 #7
0
 private void OnVideoReady(VideoPlayer source)
 {
     //Debug.Log("#Video#Video ready");
     GameEventMessage.SendEvent(showDialogue ? "VideoStart" : "VideoStart_NoDialogue");
     OnVideoStart?.Invoke();
     source.Play();
     enabled = true;
 }
コード例 #8
0
 public void Fire(GameEventMessage message)
 {
     message.GameEventSender = this;
     foreach (GameEventListener listener in listeners)
     {
         listener.SendEvent(message);
     }
 }
コード例 #9
0
 private void OnGameEventMessage(GameEventMessage message)
 {
     if (message.EventName != GameEventToListenFor)
     {
         return;
     }
     PortalGraph.SetActiveNodeById(Id);
 }
コード例 #10
0
    public void OnContinue()
    {
        GameEventMessage.SendEvent("StopAction");
        var leftPoint = Mathf.Min(skillPoint, keepSkillPoint);

        setSkillPoint(leftPoint);
        StartCoroutine(EnemyTurn());
    }
コード例 #11
0
 private void OnVideoEnded(VideoPlayer source)
 {
     //Debug.Log( "Ending video." );
     source.Stop();
     OnVideoEnd?.Invoke();
     enabled = false;
     GameEventMessage.SendEvent("VideoEnd");
 }
コード例 #12
0
 private void OnGameStateChanged(GameEventMessage message)
 {
     if (message.EventName == GameStates.GameWon.ToString())
     {
         UnlockNextLevel();
         SetStarsAchieved();
     }
 }
コード例 #13
0
 private void SendGameEvent()
 {
     if (string.IsNullOrEmpty(GameEvent))
     {
         return;
     }
     GameEventMessage.SendEvent(GameEvent, null);
 }
コード例 #14
0
    void TransitionNoneToStartScreen()
    {
        ChangeState(ExperienceState.StartScreen);
        Sequence mainSequence = DOTween.Sequence();

        mainSequence.InsertCallback(.1f, () => car.GetComponent <UnityStandardAssets.Vehicles.Car.CarUserControl>().enabled = false);
        mainSequence.InsertCallback(.5f, () => GameEventMessage.SendEvent("StartGame"));
    }
コード例 #15
0
 /// <summary> Sends any registered game events this UIAction has </summary>
 /// <param name="source"> Track back reference </param>
 public void SendGameEvents(GameObject source)
 {
     if (!HasGameEvents)
     {
         return;
     }
     GameEventMessage.SendEvents(GameEvents, source.gameObject);
 }
コード例 #16
0
ファイル: C2C.cs プロジェクト: xvanick1/NetspherePirates
 public EventMessageMessage(GameEventMessage @event, ulong accountId, uint unk, ushort value, string @string)
 {
     Event     = @event;
     AccountId = accountId;
     Unk       = unk;
     Value     = value;
     String    = @string;
 }
コード例 #17
0
    private void OnMessage(GameEventMessage message)
    {
        if (!message.HasGameEvent)
        {
            return;
        }

        signalBus.Fire <DoozyGameEventSignal>(new DoozyGameEventSignal(message.EventName));
    }
コード例 #18
0
    public void ShowReinforcementView(Spawner spawner)
    {
        GameEventMessage.SendEvent(showReinforcementUIEvent);

        HideReinforcementButtons();
        UpdateReinforcementButtons(spawner, spawner.currentUnitData);
        ShowReinfocementButtons(spawner.currentReinforcementCompatibleUnits.Count);
        newUnitButton.UpdateButton(spawner.currentUnitData, spawner);
    }
コード例 #19
0
 public override void OnEnter(Node previousActiveNode, Connection connection)
 {
     base.OnEnter(previousActiveNode, connection);
     if (ActiveGraph == null)
     {
         return;
     }
     GameEventMessage.SendEvent(SystemGameEvent.ApplicationQuit);
 }
コード例 #20
0
    private IEnumerator GameWon()
    {
        yield return(new WaitForSeconds(1f));

        GameEventMessage.SendEvent("LightsOutWon");
        save.changeFlag("engine");
        chooser.Choose();
        player.GetComponent <Player>().isInputAvailable = true;
    }
コード例 #21
0
 // Sends event on file select using path
 // Then destroys the file browser
 private void SendFileSelectEvent(string path)
 {
     //OnFileSelect(path);
     //Cambiar_Enlazado.cambioP  = true;
     Cambiar_Enlazado.upContent();
     Edit_Transform_Objects.updateCard();
     GameEventMessage.SendEvent("ShowAgain");
     Destroy();
 }
コード例 #22
0
    IEnumerator cleanBattle()
    {
        skillPoint = 0;
        diceImage.SetActive(false);
        if (monster)
        {
            monster.clearCamera();
        }
        //yield return new WaitForSeconds(1f);
        GameEventMessage.SendEvent("StopBattle");

        monsterBuffDict.Clear();
        playerBuffDict.Clear();

        //get music back
        LayerMask layer = 1 << LayerMask.NameToLayer("DangerZone");
        //check if need to trigger battle

        var overlaps = Physics.OverlapSphere(transform.position, 0.1f, layer);

        if (overlaps.Length >= 1)
        {
            FModSoundManager.Instance.GetIntoDangerZone();
        }
        else
        {
            FModSoundManager.Instance.GetIntoSafeZone();
        }
        if (state == BattleState.Won || state == BattleState.Absorb || isPopup)
        {
            if (monster.monsterStatus.playerName == "Magic Lizard")
            {
                monster.dieIdle();

                yield return(new WaitForSeconds(0.5f));

                DialogueManager.StartConversation("finish");
            }
            else
            {
                monster.fullyDie();
                yield return(new WaitForSeconds(0.5f));

                if (monster)
                {
                    Destroy(monster.gameObject);
                }
            }
        }
        if (state == BattleState.Lost)
        {
            GameEventMessage.SendEvent("GameOver");
        }
        state   = BattleState.None;
        isPopup = false;
    }
コード例 #23
0
    public void OnAbilityButton(AbilityInfo info)
    {
        GameEventMessage.SendEvent("StopAction");
        //play particle effect
        StartCoroutine(PlayerUseAbility(info));


        player.updateBuffUI();
        monster.updateBuffUI();
    }
コード例 #24
0
 public void StartDialogue(System.Action CompleteCallback, bool showNextButton = true, bool manageGameEvent = true)
 {
     if (manageGameEvent)
     {
         GameEventMessage.SendEvent("DialogueStart");
     }
     ShowCompletecallback = CompleteCallback;
     _maxCharacterCount   = _dialogue.maxVisibleCharacters;
     ShowNextButton(showNextButton);
 }
コード例 #25
0
 private void Death()
 {
     if (isDead)
     {
         return;
     }
     isDead = true;
     EffectManager.Instance.ShowDeath();
     GameEventMessage.SendEvent("Death");
 }
コード例 #26
0
        public void Init()
        {
            GameEventMessage.SendEvent("StartFever");

            _feverModel = new FeverModel();
            _feverView.Init();


            Bind();
        }
コード例 #27
0
        public void DeleteTag()
        {
            Tag tagItem = m_objectsHandler.Tags.Find(t => t.Label == m_manageTagPanel.Item.Label);

            m_objectsHandler.Tags.Remove(tagItem);
            Destroy(tagItem.gameObject);

            SaveCurrentTags();
            GameEventMessage.SendEvent("GoToTags");
        }
コード例 #28
0
 private void OnGameEventMessage(GameEventMessage message)
 {
     if (DebugMode)
     {
         DDebug.Log("GameEvent received: " + message.EventName + " / Listening for: " + GameEvent, this);
     }
     if (AnyValue || GameEvent.Equals(message.EventName))
     {
         ContinueToNextNode();
     }
 }
コード例 #29
0
    void TransitionGameplayToEnd(DeathBySignal signal)
    {
        ChangeState(ExperienceState.End);
        Sequence mainSequence = DOTween.Sequence();

        mainSequence.InsertCallback(0f, () => car.GetComponent <UnityStandardAssets.Vehicles.Car.CarUserControl>().enabled = false);
        mainSequence.InsertCallback(.2f, () => car.GetComponent <Rigidbody>().velocity    = Vector3.zero);
        mainSequence.InsertCallback(.2f, () => car.GetComponent <Rigidbody>().isKinematic = true);
        mainSequence.InsertCallback(.5f, () => car.GetComponent <Rigidbody>().isKinematic = false);
        deathText.text = "KABOOM! YOU DIED BY " + signal.DeathObject.ToUpper();
        GameEventMessage.SendEvent("Death");
    }
コード例 #30
0
        public void InvokeSystem()
        {
            GameEventMessage.SendEvent(NodyGameEventList.GAME_START);

            _readyLabelPresenter.ShowGoText();

            _itemCreaterPresenter.GameStartCreate();

            _hoppingCharaCreaterComponent.CreateHoppingCharacter();

            _bgmPresenter.PlayStartSound();
        }