Beispiel #1
0
    public void SwapStage(StageName stage, string overrideSpawnPoint = null)
    {
        currentStage = stage;
        foreach (var entry in _stageInfos)
        {
            var isTarget = entry.Key == stage;
            entry.Value.instance.SetActive(isTarget);

            if (isTarget)
            {
                RenderSettings.skybox = entry.Value.skybox;
                var       player = GameContext.Instance.player;
                Transform spawnPoint;
                if (string.IsNullOrEmpty(overrideSpawnPoint))
                {
                    spawnPoint = entry.Value.spawnPoint;
                }
                else
                {
                    spawnPoint = entry.Value.instance.transform.Find(overrideSpawnPoint);
                }
                var pos = spawnPoint.position;
                player.GetComponent <Rigidbody>().position = pos;
                player.transform.position = pos;
            }
        }
        EventBus.Post(new CameraPositionResetEvent());
        EventBus.Post(new SwapStageEvent {
            newStage = stage
        });
    }
Beispiel #2
0
        public void DeleteStageNameFromSession([FromBody] StageName stageName)
        {
            var stageNameToDeactivate = _context.StageNames.Where(s => s.Id == stageName.Id).SingleOrDefault();

            stageNameToDeactivate.IsActive = false;
            _context.SaveChanges();
        }
    string gererateSceneName(StageName targetStage)
    {
        string sceneName = "Title";

        sceneName = Enum.GetName(typeof(StageName), targetStage);

        return(sceneName);
    }
 void Update()
 {
     if (horizontalAxisHandler != AxisVectol.ZERO)
     {
         selectedStage = setNextSelectedStage();
         //Debug.Log( selectedStage );
     }
 }
Beispiel #5
0
        private async Task <Errorable <Stage> > getStageByName(StageName stageName)
        {
            FileInfo fiTracker = system.getStagePathByStageName(stageName);

            if (!fiTracker.Exists)
            {
                return(new StageNameDoesNotExistError(stageName));
            }

            byte[] buf;
            int    nr = 0;

            using (var fs = new FileStream(fiTracker.FullName, FileMode.Open, FileAccess.Read, FileShare.Read, 16384, true))
            {
                // TODO: implement an async buffered Stream:
                buf = new byte[16384];
                nr  = await fs.ReadAsync(buf, 0, 16384).ConfigureAwait(continueOnCapturedContext: false);

                if (nr >= 16384)
                {
                    // My, what a large tag you have!
                    throw new NotSupportedException();
                }
            }

            Stage.Builder sb = new Stage.Builder();

            // Parse the Stage:
            using (var ms = new MemoryStream(buf, 0, nr, false))
                using (var sr = new StreamReader(ms, Encoding.UTF8))
                {
                    string line = sr.ReadLine();

                    // Set Name:
                    line = sr.ReadLine();
                    if (line == null || !line.StartsWith("name "))
                    {
                        return(new StageParseExpectedNameError());
                    }
                    sb.Name = (StageName)line.Substring("name ".Length);

                    // Set TreeID:
                    if (line == null || !line.StartsWith("tree "))
                    {
                        return(new StageParseExpectedTreeError());
                    }
                    var ecid = TreeID.TryParse(line.Substring("tree ".Length));
                    if (ecid.HasErrors)
                    {
                        return(ecid.Errors);
                    }
                    sb.TreeID = ecid.Value;

                    return((Stage)sb);
                }
        }
 // Start is called before the first frame update
 void Start()
 {
     //for (int i = 1; i < 10; i++)
     //{
     //    DisableCursor(i);
     //}
     ic        = Singleton <InputController> .Instance;
     stageName = new StageName();
     rt        = GetComponent <RectTransform>();
     SetCursorPosition();
 }
    public override void Init(object[] args)
    {
        var result = StageName.TryParse((string)args[0], out _name);

        XDebug.Assert(result);

        if (args.Length > 1)
        {
            _overrideSpawn = args[1].ToString();
        }
    }
Beispiel #8
0
 private void deleteStage(StageName name)
 {
     lock (FileSystem.SystemLock)
     {
         FileInfo fi = system.getStagePathByStageName(name);
         if (fi.Exists)
         {
             fi.Delete();
         }
     }
 }
Beispiel #9
0
 public Stage(StageName Name = StageName.Lobby)
 {
     if (Name == StageName.Lobby)
     {
         info.Load_Lobby(this);
     }
     if (Name == StageName.Hyrule)
     {
         info.Load_Hyrule(this);
     }
 }
Beispiel #10
0
        public StageData(StageName name, int minX, int minY, int maxX, int maxY)
        {
            Name = name;
            X    = minX;
            Y    = minY;
            MaxX = maxX;
            MaxY = maxY;

            Width  = maxX - minX;
            Height = maxY - minY;
        }
Beispiel #11
0
    private void _AddStage(StageName name, StageLoadInfo loadInfo)
    {
        var instance   = Instantiate(loadInfo.prefab);
        var spawnPoint = instance.transform.Find("SpawnPoint");

        instance.gameObject.SetActive(false);
        _stageInfos.Add(name, new StageInfo {
            instance   = instance,
            spawnPoint = spawnPoint,
            skybox     = loadInfo.skybox
        });
    }
 public void ToggleWindows(StageName stageName)
 {
     if (stageName == StageName.MainMenu)
     {
         menuWindowView.gameObject.SetActive(true);
         stageWindowView.gameObject.SetActive(false);
     }
     else
     {
         stageWindowView.gameObject.SetActive(true);
         menuWindowView.gameObject.SetActive(false);
         stageWindowView.ChangeStageTitle(stageName);
     }
 }
Beispiel #13
0
        public async Task <Errorable <Stage> > DeleteStageByName(StageName name)
        {
            var stg = await getStageByName(name);

            if (stg.HasErrors)
            {
                return(stg.Errors);
            }

            Debug.Assert(stg.Value != null);

            deleteStage(name);

            return(stg);
        }
Beispiel #14
0
        public override bool Equals(object other)
        {
            if (other == null || other.GetType() != GetType())
            {
                return(false);
            }

            var otherSupervisor = (ConfiguredSupervisor)other;

            return(StageName.Equals(otherSupervisor.StageName) &&
                   SupervisorName.Equals(otherSupervisor.SupervisorName) &&
                   (SupervisedProtocol == null && otherSupervisor.SupervisedProtocol == null ||
                    SupervisedProtocol != null && otherSupervisor.SupervisedProtocol != null &&
                    SupervisedProtocol == otherSupervisor.SupervisedProtocol) &&
                   SupervisorClass == otherSupervisor.SupervisorClass);
        }
Beispiel #15
0
        internal FileInfo getStagePathByStageName(StageName stageName)
        {
            if (stageName == null)
            {
                throw new ArgumentNullException("stageName");
            }

            DirectoryInfo stgDir = getStageDirectory();

            string[] parts = new string[1] {
                stgDir.FullName
            }.Concat(stageName.Parts).ToArray(stageName.Parts.Count + 1);
            string path = System.IO.Path.Combine(parts);

            return(new FileInfo(path));
        }
    public void LoadStage(StageName stageName)
    {
        if (_currentStage == stageName)
        {
            return;
        }

        _windowsManager.ToggleWindows(stageName);

        ClearCurrentContent(_currentContent);

        _currentStage = stageName;

        if (_stageContentDictionary.TryGetValue(stageName, out var contentPath))
        {
            InstantiateContent(contentPath);
        }
    }
        private async Task<Errorable<Stage>> getStageByName(StageName stageName)
        {
            FileInfo fiTracker = system.getStagePathByStageName(stageName);
            if (!fiTracker.Exists) return new StageNameDoesNotExistError(stageName);

            byte[] buf;
            int nr = 0;
            using (var fs = new FileStream(fiTracker.FullName, FileMode.Open, FileAccess.Read, FileShare.Read, 16384, true))
            {
                // TODO: implement an async buffered Stream:
                buf = new byte[16384];
                nr = await fs.ReadAsync(buf, 0, 16384).ConfigureAwait(continueOnCapturedContext: false);
                if (nr >= 16384)
                {
                    // My, what a large tag you have!
                    throw new NotSupportedException();
                }
            }

            Stage.Builder sb = new Stage.Builder();

            // Parse the Stage:
            using (var ms = new MemoryStream(buf, 0, nr, false))
            using (var sr = new StreamReader(ms, Encoding.UTF8))
            {
                string line = sr.ReadLine();

                // Set Name:
                line = sr.ReadLine();
                if (line == null || !line.StartsWith("name ")) return new StageParseExpectedNameError();
                sb.Name = (StageName)line.Substring("name ".Length);

                // Set TreeID:
                if (line == null || !line.StartsWith("tree ")) return new StageParseExpectedTreeError();
                var ecid = TreeID.TryParse(line.Substring("tree ".Length));
                if (ecid.HasErrors) return ecid.Errors;
                sb.TreeID = ecid.Value;

                return (Stage)sb;
            }
        }
Beispiel #18
0
    public override int GetHashCode()
    {
        int hashcode = 157;

        unchecked {
            hashcode = (hashcode * 397) + IdContentCreator.GetHashCode();
            if (__isset.givenName)
            {
                hashcode = (hashcode * 397) + GivenName.GetHashCode();
            }
            if (__isset.lastName)
            {
                hashcode = (hashcode * 397) + LastName.GetHashCode();
            }
            if (__isset.email)
            {
                hashcode = (hashcode * 397) + Email.GetHashCode();
            }
            if (__isset.password)
            {
                hashcode = (hashcode * 397) + Password.GetHashCode();
            }
            if (__isset.stageName)
            {
                hashcode = (hashcode * 397) + StageName.GetHashCode();
            }
            if (__isset.description)
            {
                hashcode = (hashcode * 397) + Description.GetHashCode();
            }
            if (__isset.imageStoragePath)
            {
                hashcode = (hashcode * 397) + ImageStoragePath.GetHashCode();
            }
        }
        return(hashcode);
    }
    //次候補に移動する
    private StageName setNextSelectedStage()
    {
        StageName nextStage = StageName.DEFAULT;

        switch (horizontalAxisHandler)
        {
        case AxisVectol.RIGHT:
            int axisVectolLength = getEnumLength <StageName>();
            if (( int )selectedStage < axisVectolLength)
            {
                nextStage = ( StageName )Enum.ToObject(typeof(StageName), ( int )selectedStage++);
            }
            break;

        case AxisVectol.LEFT:
            if (( int )selectedStage > 0)
            {
                nextStage = ( StageName )Enum.ToObject(typeof(StageName), ( int )selectedStage--);
            }
            break;
        }

        return(nextStage);
    }
        public int       WrongTimes2;   //錯誤次數

        /// <summary>
        /// 關卡資料
        /// </summary>
        /// <param name="stageType">關卡類別</param>
        /// <param name="stageName">關卡名稱</param>
        /// <param name="CorrectTimes">正確次數</param>
        /// <param name="WrongTimes">錯誤次數</param>
        /// <param name="PositiveScore">得分分數</param>
        /// <param name="NegativeScore">扣分分數</param>
        /// <param name="TakeTime">花費時間</param>
        public StageData(
            StageType stageType = StageType.Undefined,
            StageName stageName = StageName.未定義,
            PassOrNot passOrNot = PassOrNot.Undefined,
            int CorrectTimes    = 0,
            int WrongTimes      = 0,
            int PositiveScore   = 0,
            int NegativeScore   = 0,
            int TakeTime        = 0,
            int CorrectTimes2   = 0,
            int WrongTimes2     = 0
            )
        {
            this.stageType     = stageType;
            this.stageName     = stageName;
            this.passOrNot     = passOrNot;
            this.CorrectTimes  = CorrectTimes;
            this.WrongTimes    = WrongTimes;
            this.PositiveScore = PositiveScore;
            this.NegativeScore = NegativeScore;
            this.TakeTime      = TakeTime;
            this.CorrectTimes2 = CorrectTimes2;
            this.WrongTimes2   = WrongTimes2;
        }
Beispiel #21
0
 //セット用
 public void setStage(StageName e)
 {
     currentStage = e;
 }
Beispiel #22
0
 //端末にクリア情報を保存する
 public void setCleared(StageName s, int i)
 {
     //i == 1 でクリア
     PlayerPrefs.SetInt(s.ToString(), i);
 }
Beispiel #23
0
 public StageNameDoesNotExistError(StageName stageName) : base("A stage with stage name '{0}' does not exist", stageName)
 {
 }
 public Task<Errorable<Stage>> DeleteStageByName(StageName name)
 {
     throw new NotImplementedException();
 }
Beispiel #25
0
 public Task <Errorable <Stage> > GetStageByName(StageName name)
 {
     return(getStageByName(name));
 }
        internal FileInfo getStagePathByStageName(StageName stageName)
        {
            if (stageName == null) throw new ArgumentNullException("stageName");

            DirectoryInfo stgDir = getStageDirectory();

            string[] parts = new string[1] { stgDir.FullName }.Concat(stageName.Parts).ToArray(stageName.Parts.Count + 1);
            string path = System.IO.Path.Combine(parts);
            return new FileInfo(path);
        }
Beispiel #27
0
 public override int GetHashCode()
 {
     return(StageName.GetHashCode());
 }
Beispiel #28
0
 /// <summary>
 /// Converts the <see cref="sourceValue" /> parameter to the <see cref="destinationType" /> parameter using <see cref="formatProvider"
 /// /> and <see cref="ignoreCase" />
 /// </summary>
 /// <param name="sourceValue">the <see cref="System.Object"/> to convert from</param>
 /// <param name="destinationType">the <see cref="System.Type" /> to convert to</param>
 /// <param name="formatProvider">not used by this TypeConverter.</param>
 /// <param name="ignoreCase">when set to <c>true</c>, will ignore the case when converting.</param>
 /// <returns>
 /// an instance of <see cref="StageName" />, or <c>null</c> if there is no suitable conversion.
 /// </returns>
 public override object ConvertFrom(object sourceValue, global::System.Type destinationType, global::System.IFormatProvider formatProvider, bool ignoreCase) => StageName.CreateFrom(sourceValue);
Beispiel #29
0
 public GameObject GetStageInstance(StageName n)
 {
     return(_stageInfos[n].instance);
 }
 void Start()
 {
     selectedStage = StageName.DEFAULT;
 }
 public Builder(
     StageName pName
    ,TreeID pTreeID
 )
 {
     this.Name = pName;
     this.TreeID = pTreeID;
 }
 public StageNameDoesNotExistError(StageName stageName) : base("A stage with stage name '{0}' does not exist", stageName) { }
 public Task<Errorable<Stage>> GetStageByName(StageName name)
 {
     return getStageByName(name);
 }
        public async Task<Errorable<Stage>> DeleteStageByName(StageName name)
        {
            var stg = await getStageByName(name);
            if (stg.HasErrors) return stg.Errors;

            Debug.Assert(stg.Value != null);

            deleteStage(name);

            return stg;
        }
Beispiel #35
0
 public void setStage(StageName e)
 {
     stageName = e;
 }
 private void deleteStage(StageName name)
 {
     lock (FileSystem.SystemLock)
     {
         FileInfo fi = system.getStagePathByStageName(name);
         if (fi.Exists) fi.Delete();
     }
 }
Beispiel #37
0
 public void AddStageNameToSession([FromBody] StageName stageName)
 {
     _context.StageNames.Add(stageName);
     _context.SaveChanges();
 }
Beispiel #38
0
 public override int GetHashCode()
 => 31 *StageName.GetHashCode() + SupervisorName.GetHashCode();
 public void ChangeStageTitle(StageName stageName)
 {
     _stageTitles.TryGetValue(stageName, out var formattedTitle);
     title.text = formattedTitle;
 }
 private void OnStageButtonClick(StageName stageName)
 {
     _gameController.LoadStage(stageName);
 }
Beispiel #41
0
 public Task <Errorable <Stage> > DeleteStageByName(StageName name)
 {
     throw new NotImplementedException();
 }