Exemplo n.º 1
0
        protected override SnapResult SnapForBlueprint(PlacementBlueprint blueprint)
        {
            double time = column.TimeAtScreenSpacePosition(InputManager.CurrentState.Mouse.Position);
            var    pos  = column.ScreenSpacePositionAtTime(time);

            return(new SnapResult(pos, time, column));
        }
        public void EndPlacement(HitObject hitObject)
        {
            AddHitObject(CreateHitObject(hitObject));

            Remove(currentBlueprint);
            Add(currentBlueprint = CreateBlueprint());
        }
        protected override SnapResult SnapForBlueprint(PlacementBlueprint blueprint)
        {
            var result = base.SnapForBlueprint(blueprint);

            result.Time = Math.Round(HitObjectContainer.TimeAtScreenSpacePosition(result.ScreenSpacePosition) / TIME_SNAP) * TIME_SNAP;
            return(result);
        }
        protected override void LoadComplete()
        {
            base.LoadComplete();

            inputManager         = GetContainingInputManager();
            Add(currentBlueprint = CreateBlueprint());
        }
        private void createPlacement()
        {
            if (currentPlacement != null)
            {
                return;
            }

            var blueprint = CurrentTool?.CreatePlacementBlueprint();

            if (blueprint != null)
            {
                // doing this post-creations as adding the default hit sample should be the case regardless of the ruleset.
                blueprint.HitObject.Samples.Add(new HitSampleInfo {
                    Name = HitSampleInfo.HIT_NORMAL
                });

                placementBlueprintContainer.Child = currentPlacement = blueprint;

                // Fixes a 1-frame position discrepancy due to the first mouse move event happening in the next frame
                updatePlacementPosition();

                updatePlacementSamples();

                updatePlacementNewCombo();
            }
        }
Exemplo n.º 6
0
 protected void ResetPlacement()
 {
     if (CurrentBlueprint != null)
     {
         Remove(CurrentBlueprint);
     }
     Add(CurrentBlueprint = CreateBlueprint());
 }
Exemplo n.º 7
0
        private void removePlacement()
        {
            if (currentPlacement == null)
            {
                return;
            }

            currentPlacement.EndPlacement(false);
            currentPlacement.Expire();
            currentPlacement = null;
        }
Exemplo n.º 8
0
        /// <summary>
        /// Refreshes the current placement tool.
        /// </summary>
        private void refreshTool()
        {
            placementBlueprintContainer.Clear();
            currentPlacement = null;

            var blueprint = CurrentTool?.CreatePlacementBlueprint();

            if (blueprint != null)
            {
                placementBlueprintContainer.Child = currentPlacement = blueprint;

                // Fixes a 1-frame position discrepancy due to the first mouse move event happening in the next frame
                updatePlacementPosition(inputManager.CurrentState.Mouse.Position);
            }
        }
Exemplo n.º 9
0
        private void createPlacement()
        {
            if (currentPlacement != null)
            {
                return;
            }

            var blueprint = CurrentTool?.CreatePlacementBlueprint();

            if (blueprint != null)
            {
                placementBlueprintContainer.Child = currentPlacement = blueprint;

                // Fixes a 1-frame position discrepancy due to the first mouse move event happening in the next frame
                updatePlacementPosition();
            }
        }
Exemplo n.º 10
0
 protected virtual SnapResult SnapForBlueprint(PlacementBlueprint blueprint) =>
 new SnapResult(InputManager.CurrentState.Mouse.Position, null);
Exemplo n.º 11
0
 private void load()
 {
     Add(currentBlueprint = CreateBlueprint());
 }
Exemplo n.º 12
0
 private void load()
 {
     Beatmap.Value.BeatmapInfo.BaseDifficulty.CircleSize = 2;
     Add(currentBlueprint = CreateBlueprint());
 }