Exemplo n.º 1
0
 private void Update()
 {
     if (Input.GetKeyDown(KeyCode.Escape))
     {
         SceneUtil.ExitGame();
     }
 }
Exemplo n.º 2
0
 public void HideSocket()
 {
     if (Socket != null)
     {
         SceneUtil.SetVisible(Socket, false);
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Callback method for when the Unity scene changes.
        /// </summary>
        /// <param name="oldScene">The old scene instance.</param>
        /// <param name="newScene">The new scene instance.</param>
        private void OnSceneChange(Scene oldScene, Scene newScene)
        {
            Logger.Get().Info(this, $"Scene changed from {oldScene.name} to {newScene.name}");

            // Always recycle existing players, because we changed scenes
            _playerManager.RecycleAllPlayers();

            // For each known player set that they are not in our scene anymore
            foreach (var playerData in _playerData.Values)
            {
                playerData.IsInLocalScene = false;
            }

            // If we are not connected, there is nothing to send to
            if (!_netClient.IsConnected)
            {
                return;
            }

            _sceneChanged = true;

            // Reset the status of whether we determined the scene host or not
            _sceneHostDetermined = false;

            // Ignore scene changes from and to non-gameplay scenes
            if (SceneUtil.IsNonGameplayScene(oldScene.name) && SceneUtil.IsNonGameplayScene(newScene.name))
            {
                return;
            }

            _netClient.UpdateManager.SetLeftScene();
        }
Exemplo n.º 4
0
 void _onLoadBattleFieldScene(object sender, System.EventArgs args)
 {
     if (ConnectionController.Instance.isMasterClient)
     {
         ConnectionController.Instance.LoadLevelAsyncViaPhoton(SceneUtil.GetSceneName(SceneType.BattleField));
     }
 }
Exemplo n.º 5
0
 public void ShowSocket()
 {
     if (Socket != null)
     {
         SceneUtil.SetVisible(Socket, true);
     }
 }
Exemplo n.º 6
0
        public void TestSetAndClearMaterialsForFaceClearsEntry()
        {
            var sop = SceneUtil.RandomSOP("Root", 1);
            sop.OwnerMask = (uint)(PermissionMask.Copy | PermissionMask.Transfer | PermissionMask.Modify);
            var group = new SceneObjectGroup(sop);
            var lslSystemApi = new LSLSystemAPI(engine, sop, 0, UUID.Zero);

            // Check that its Zeroed
            var emptyResult = new LSLList(new List<object> { UUID.Zero.ToString(), new Vector3(1, 1, 0), new Vector3(0, 0, 0), 0 });
            var rules = new LSLList(new List<object> { ScriptBaseClass.PRIM_NORMAL, 0 });
            LSLList asList = lslSystemApi.llGetPrimitiveParams(rules);
            Assert.That(asList.ToString(), Is.EqualTo(emptyResult.ToString()));

            // Set a value and check it
            var textureId = UUID.Random();
            var faceZeroData = new LSLList(new List<object> { textureId.ToString(), new Vector3(1, 1, 0), new Vector3(0, 0, 0), 0 });
            var setMaterialsRequest = rules.Append(faceZeroData);
            lslSystemApi.llSetLinkPrimitiveParamsFast(0, setMaterialsRequest);
            LSLList setMaterialsResult = lslSystemApi.llGetLinkPrimitiveParams(0, rules);
            Assert.That(setMaterialsResult.ToString(), Is.EqualTo(faceZeroData.ToString()));

            // Clear it and Check thats its zeroed
            var clearMaterialsRequest = rules.Append(emptyResult);
            lslSystemApi.llSetLinkPrimitiveParamsFast(0, clearMaterialsRequest);
            LSLList clearMaterialsResult = lslSystemApi.llGetLinkPrimitiveParams(0, clearMaterialsRequest);
            Assert.That(clearMaterialsResult.ToString(), Is.EqualTo(emptyResult.ToString()));
        }
Exemplo n.º 7
0
    void on_visible_clicked(PanelRow row)
    {
        bool set_visible = !SceneUtil.IsVisible(row.SO);

        SceneUtil.SetVisible(row.SO, set_visible);
        row.visibleButton.image.sprite = (set_visible) ? visible_on : visible_off;
    }
Exemplo n.º 8
0
        public override void Connect(bool bRestore)
        {
            if (indicators == null)
            {
                FScene scene = GetScene();
                indicators = new SOSceneIndicatorSet(this, scene);

                LineIndicator line = new LineIndicator()
                {
                    LineWidth   = fDimension.Scene(0.5),
                    VisibleF    = () => { return(LineAlwaysVisible || SceneUtil.IsVisible(this)); },
                    SceneStartF = () => { return(MinPosS); },
                    SceneEndF   = () => { return(MaxPosS); },
                    LayerF      = () => { return(FPlatform.GeometryLayer); }
                };
                indicators.AddIndicator(line);

                SectionPlaneIndicator plane = new SectionPlaneIndicator()
                {
                    Width       = fDimension.Scene(() => { return(BoundsDim); }),
                    ColorF      = () => { return(Colorf.VideoYellow.WithAlpha(0.5f)); },
                    VisibleF    = () => { return(GetScene().IsSelected(this) || (active_gizmo != null && active_gizmo.IsCapturing)); },
                    SceneFrameF = () => {
                        Vector3f curPosS = GetLocalFrame(CoordSpace.SceneCoords).Origin;
                        return(new Frame3f(CenterPosS + (curPosS - MinPosS)));
                    }
                };
                indicators.AddIndicator(plane);
            }
        }
Exemplo n.º 9
0
    /// <summary>
    /// 保存并退出
    /// </summary>
    public void saveAndExitOnClick()
    {
        if (CommonData.GameStatus == 1)
        {
            CommonData.GameStatus = 4;
            PuzzlesProgressBean progressBean = new PuzzlesProgressBean();


            GameMainUIControl gameMainUI = mUIMasterControl.getUIByType <GameMainUIControl>(UIEnum.GameMainUI);
            if (gameMainUI != null)
            {
                //设置游戏时间
                progressBean.gameTime = gameMainUI.getGameTimer();
            }
            //设置ID
            progressBean.puzzleId     = CommonData.SelectPuzzlesInfo.puzzlesInfo.id;
            progressBean.markFileName = CommonData.SelectPuzzlesInfo.puzzlesInfo.mark_file_name;
            progressBean.progress     = GameUtil.getGameProgress();

            DataStorageManage.getPuzzlesProgressDSHandle().saveData(progressBean);
            SceneUtil.jumpMainScene();
        }
        else
        {
            DialogManager.createToastDialog().setToastText("不能进行此操作");
        }
    }
Exemplo n.º 10
0
    public override void process(SCHitMsg hitMsg)
    {
        if (!SceneUtil.InBattleScene())
        {
            return;
        }

        if (hitMsg.attackPlayerId == InstanceManager.instance.playerManager.myPlayerInfo.id)
        {
            GameObject scoreTextGo = GameObject.Find("ScoreText");

            Text scoreText = scoreTextGo.GetComponent <Text>();

            scoreText.text = "score : " + hitMsg.score;
        }

        PlayerInfo attackPlayer = InstanceManager.instance.playerManager.GetPlayerInfo(hitMsg.attackPlayerId);

        if (attackPlayer != null)
        {
            attackPlayer.hp = hitMsg.attackPlayerHp;
            InstanceManager.instance.playerManager.UpdatePlayerSize(attackPlayer);
        }


        PlayerInfo hitPlayer = InstanceManager.instance.playerManager.GetPlayerInfo(hitMsg.hitTargetId);

        if (hitPlayer != null)
        {
            hitPlayer.hp = hitMsg.targetHp;
            InstanceManager.instance.playerManager.UpdatePlayerSize(hitPlayer);
        }
    }
Exemplo n.º 11
0
        /// <summary>
        /// 场景加载完成回调
        /// </summary>
        /// <param name="scene">加载完成的场景</param>
        /// <param name="arg1">加载模式</param>
        private void OnSceneLoaded(Scene scene, LoadSceneMode arg1)
        {
            if (SceneUtil.IsGameScene(scene.name))
            {
                UiManager.Instance.ShowSceneNameOnUi(scene.name);

                QMhelper.SetActive(true);

                Player.ShowPlayer(Vector3.zero);

                if (PixelCameraFollower != null)
                {
                    PixelCameraFollower.m_Target = Player.transform;
                    return;
                }

                if (miniPixelCameraFollower != null)
                {
                    miniPixelCameraFollower.m_Target = Player.transform;
                    return;
                }
            }
            else
            {
                Player.HidePlayer();
                QMhelper.SetActive(false);
            }
        }
Exemplo n.º 12
0
        private bool CreateAndBindInstance(PositioningParams pstParams)
        {
            var _valid = prefabs.Where(a => a != null).ToList();

            if (_valid.Count == 0)
            {
                return(false);
            }

            var _prefab = _valid.SelectRandom();

            if (_prefab == null)
            {
                return(false);
            }

            var _instance = SceneUtil.Instantiate(_prefab);

            _instance.hideFlags = HideFlags.NotEditable;

            _instance.transform.SetParent(transform);
            pstParams.gameObjectBinding = _instance;

            pstParams.scale         = Random.Range(scaleVariation.x, scaleVariation.y);
            pstParams.rotationAngle = Random.Range(rotationVariation.x, rotationVariation.y);
            return(true);
        }
Exemplo n.º 13
0
 public void ResetGame()
 {
     UIHandler.Instance.manager.CloseAllUI();
     PersonHandler.Instance.manager.ClearAllPerson();
     BuildingHandler.Instance.manager.ClearAllBuilding();
     SceneUtil.SceneChange(ScenesEnum.Game);
 }
Exemplo n.º 14
0
        protected override void DoOfflineBattle()
        {
            if (battleField != null)
            {
                if (battleField.IsGameActive)    //game has already begun.
                {
                    return;
                }
                else if (battleField.IsGameEnd)    //game has already ended.
                {
                    return;
                }
                //wait for player disconnected callback.
            }

            if (M3GameCache.GetIsFriendlyBattle())
            {
                DoCannotDoBattle();
            }
            else
            {
                Helpers.Utility.LogMessage("StateOnlineBattle: Going for offlineBattle");
                Events.EventManager.Instance.BattleFieldSceneUnloadedHandler += onBattleFieldSceneUnloaded;
                if (SceneManager.GetActiveScene().name == SceneUtil.GetSceneName(SceneType.BattleField))
                {
                    ConnectionController.Instance.LoadLevelAsyncViaPhoton(SceneUtil.GetSceneName(SceneType.BattleReloadScene));
                }
                else
                {
                    onBattleFieldSceneUnloaded(null, null);
                }
            }
        }
Exemplo n.º 15
0
    private void Update()
    {
        if (StageController.Instance.IsStageProcessing == true)
        {
            remainTimeText.text = ((int)StageController.Instance.RemainElapsedTime).ToString();

            if (Input.GetKeyDown(KeyCode.Escape) == true || Input.GetButtonDown("Back") == true)
            {
                if (option.IsShowing == false)
                {
                    option.Show();
                }
                else
                {
                    option.Hide();
                }
            }
        }

        if (isSceneChanging == false)
        {
            if (Input.GetKeyDown(KeyCode.Return) == true || Input.GetButtonDown("Back") == true)
            {
                SceneUtil.LoadScene("MainMenu");
            }
        }
    }
Exemplo n.º 16
0
 protected virtual void set_targets_visibility(bool bVisible)
 {
     foreach (var so in this.InputSOs)
     {
         SceneUtil.SetVisible(so, bVisible);
     }
 }
Exemplo n.º 17
0
        public AxisAlignedBox3f GetPrintMeshesBounds(bool bPrecise)
        {
            AxisAlignedBox3f b = AxisAlignedBox3f.Empty;

            foreach (PrintMeshSO so in PrintMeshes)
            {
                if (SceneUtil.IsVisible(so) == false)
                {
                    continue;
                }

                if (bPrecise)
                {
                    var xform = SceneTransforms.ObjectToSceneXForm(so);
                    foreach (Vector3d v in so.Mesh.Vertices())
                    {
                        b.Contain((Vector3f)xform.TransformP(v));
                    }
                }
                else
                {
                    Box3f sobox = so.GetBoundingBox(CoordSpace.SceneCoords);
                    if (sobox.Volume > 0)
                    {
                        foreach (Vector3d v in sobox.VerticesItr())
                        {
                            b.Contain(v);
                        }
                    }
                }
            }
            return(b);
        }
Exemplo n.º 18
0
 protected virtual void set_preview_visibility(bool bVisible)
 {
     if (PreviewSO != null)
     {
         SceneUtil.SetVisible(PreviewSO, bVisible);
     }
 }
Exemplo n.º 19
0
        /*
         * setup/teardown for Sculpt Curve tool, which is applied to area curves, trimline curve, etc
         */
        public static bool CanSculptCurve()
        {
            var M = OG.Model;

            if (M.Context.ToolManager.ActiveRightTool != null)
            {
                return(false);
            }

            // can always sculpt trimline
            if (SceneUtil.IsSelectionMatch(M.Scene, typeof(TrimLoopSO), 1))
            {
                return(true);
            }

            // if polycurve, check that it is attached to the right kind of modeling op
            if (SceneUtil.IsSelectionMatch(M.Scene, typeof(PolyCurveSO), 1) == false)
            {
                return(false);
            }
            PolyCurveSO      so = M.Scene.Selected[0] as PolyCurveSO;
            ModelingOperator op = M.leg.FindOpForSO(so);

            if (op is EnclosedRegionOffsetOp || op is EnclosedRegionSmoothOp)
            {
                return(true);
            }
            return(false);
        }
Exemplo n.º 20
0
    /// <summary>
    /// Loads the current level with the loaded level descriptor.
    /// </summary>
    /// <returns>If the level is loaded or not.</returns>
    public bool LoadLevel()
    {
        if (LevelDescriptor != null)
        {
            // Set some logic data:
            changeSteps(0);
            changeSecond(0);

            // Clean unused assets:
            Resources.UnloadUnusedAssets();

            // Add the input controller to the world:
            var world = SceneUtil.Find(CoreManager.WORLD_GOBJ_NAME);
            levelController         = world.AddComponent <LevelController>();
            levelController.enabled = true;

            // Change the layer of the terrain and entities nodes:
            Action <string, GameObject, float> updateNode = (name, parent, z) => {
                var victim = SceneUtil.Find(name);
                SceneUtil.SetParent(victim, parent);
                SceneUtil.SetPosition(victim, 0.0f, 0.0f, z);
            };

            updateNode(CoreManager.TERRAIN_GOBJ_NAME, world, 1.0f);
            updateNode(CoreManager.ENTITIES_GOBJ_NAME, world, 0.0f);

            // Create the current level:
            Level = new LevelData();
            Level.Create(LevelDescriptor);
            return(Level.IsLoaded);
        }
        return(false);
    }
Exemplo n.º 21
0
 public void SetOpWidgetVisibility(bool bVisible)
 {
     foreach (SceneObject so in SO_Op.FirstTypeItr())
     {
         SceneUtil.SetVisible(so, bVisible);
     }
 }
Exemplo n.º 22
0
        private void OnSceneChange(Scene oldScene, Scene newScene)
        {
            Logger.Get().Info(this, $"Scene changed from {oldScene.name} to {newScene.name}");

            // Always destroy existing players, because we changed scenes
            _playerManager.DestroyAllPlayers();

            // If we are not connected, there is nothing to send to
            if (!_netClient.IsConnected)
            {
                return;
            }

            _sceneChanged = true;

            // Reset the status of whether we determined the scene host or not
            _sceneHostDetermined = false;

            // Ignore scene changes from and to non-gameplay scenes
            if (SceneUtil.IsNonGameplayScene(oldScene.name) && SceneUtil.IsNonGameplayScene(newScene.name))
            {
                return;
            }

            _netClient.UpdateManager.SetLeftScene();
        }
Exemplo n.º 23
0
 public void Back2MainMenu()
 {
     HideMenu();
     SceneUtil.BackToMainMenu();
     // TODO: 减缓音量
     Destroy(AudioManager.Instance.gameObject);
 }
Exemplo n.º 24
0
        private void Awake()
        {
            Instance = this;

            var currentSceneName = SceneUtil.GetCurrentSceneName();

            goBackToTown.animator.updateMode  = AnimatorUpdateMode.UnscaledTime;
            resumeButton.animator.updateMode  = AnimatorUpdateMode.UnscaledTime;
            restartButton.animator.updateMode = AnimatorUpdateMode.UnscaledTime;
            exitButton.animator.updateMode    = AnimatorUpdateMode.UnscaledTime;

            if (!currentSceneName.Contains(SceneUtil.Scenes.TownScene) &&
                !currentSceneName.Contains(SceneUtil.Scenes.TutorialScene))
            {
//                goBackToTown.enabled = true;
//                var colorBlock = goBackToTown.colors;
//                colorBlock.normalColor = Color.white;
//                goBackToTown.colors = colorBlock;

                goBackToTown.interactable = true;
            }
            else
            {
                goBackToTown.interactable = false;

//                goBackToTown.enabled = false;
//                var colorBlock = goBackToTown.colors;
                // TODO: 使用更和谐的颜色
//                colorBlock.normalColor = Color.black;
//                goBackToTown.colors = colorBlock;
            }
        }
Exemplo n.º 25
0
 /// <summary>
 /// <inheritdoc cref="SceneUtil.BackToTown"/>
 /// </summary>
 public void BackToTown()
 {
     GameManager.IsStop = false;
     Time.timeScale     = 1;
     HideMenu();
     SceneUtil.BackToTown();
 }
        static void Postfix(AudioTimeSyncController __instance)
        {
#if DEBUG
            Plugin.Log.Info("AudioTimeSyncController.StartSong()");
#endif
            SceneUtil.SongStarted(__instance);
        }
Exemplo n.º 27
0
    private IEnumerator ResultsAnim() {
        if (SceneUtil.IsCurrentLevelIndex) {
            LevelParams level = SceneUtil.GetParams(SceneUtil.LevelIndex);
            if (level.HasTrophy) {
                GameJolt.API.Trophies.Unlock(level.TrophyID);
            }
        }

        foreach (TutorialBoard tb in FindObjectsOfType<TutorialBoard>()) {
            Destroy(tb.gameObject);
        }
        DungeonInfo info = DungeonInfo.Instance;

        success.text = string.Format("<color=yellow>{0}</color>\ncleared", info.LevelName);
        success.gameObject.SetActive(true);
        yield return Util.Lerp(successFadeInDuration, t => success.color = Color.Lerp(Color.clear, Color.white, t));
        window.gameObject.SetActive(true);
        yield return Util.Lerp(windowTransitionDuration, t => window.transform.localScale = Vector2.Lerp(Vector2.up, Vector2.one, t));
        exit.gameObject.SetActive(true);
        yield return WaitThenDisplay(1f, results.gameObject);
        foreach (GameObject display in stats) {
            yield return WaitThenDisplay(0.25f, display);
        }
        yield return Util.AnimateScore(time, 0, (int)Time.timeSinceLevelLoad, 0.25f, scoreSound);
        int stepCount = Player.Instance.Stats.StepCount;
        yield return Util.AnimateScore(steps, 0, stepCount, 0.25f, scoreSound);
        isDoneShowingResults = true;
        // Ranking and leaderboard
        yield return AnimateRank(stepCount);
    }
Exemplo n.º 28
0
 private void Start() {
     int buildIndex = SceneManager.GetActiveScene().buildIndex;
     if (SceneUtil.IsCurrentLevelIndex) {
         scoreIDOverride = SceneUtil.GetParams(SceneUtil.LevelIndex).ScoresID;
         Debug.Log("Using score ID: " + scoreIDOverride);
     }
 }
Exemplo n.º 29
0
 void set_targets_visibility(bool bVisible)
 {
     // hide target objects
     foreach (var so in this.InputSOs)
     {
         SceneUtil.SetVisible(so, bVisible);
     }
 }
Exemplo n.º 30
0
    public void ChangeScene() {
        SceneUtil.LoadScene(SceneUtil.GetNextSceneIndex());

        LevelInfo info = LevelInfo.Instance;
        if (info != null) {
            info.IsLevelCleared = true;
        }
    }