osu/osu.Game.Modes.Osu/Objects/OsuHitObject.cs

42 lines
1.1 KiB
C#
Raw Normal View History

// Copyright (c) 2007-2017 ppy Pty Ltd <contact@ppy.sh>.
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
2016-10-07 20:35:14 +00:00
using System;
using osu.Game.Beatmaps.Samples;
2016-11-14 09:54:24 +00:00
using osu.Game.Modes.Objects;
2016-11-14 09:03:20 +00:00
using OpenTK;
using osu.Game.Beatmaps;
2016-11-14 09:54:24 +00:00
namespace osu.Game.Modes.Osu.Objects
{
public abstract class OsuHitObject : HitObject
{
2016-10-07 20:35:14 +00:00
public Vector2 Position { get; set; }
public float Scale { get; set; } = 1;
public virtual Vector2 EndPosition => Position;
public override void SetDefaultsFromBeatmap(Beatmap beatmap)
{
base.SetDefaultsFromBeatmap(beatmap);
Scale = (1.0f - 0.7f * (beatmap.BeatmapInfo.BaseDifficulty.CircleSize - 5) / 5) / 2;
}
2016-10-07 20:35:14 +00:00
[Flags]
internal enum HitObjectType
2016-10-07 20:35:14 +00:00
{
Circle = 1,
Slider = 2,
NewCombo = 4,
CircleNewCombo = 5,
SliderNewCombo = 6,
2016-10-07 20:35:14 +00:00
Spinner = 8,
ColourHax = 122,
Hold = 128,
ManiaLong = 128,
2016-10-07 20:35:14 +00:00
}
}
}