Move constants to base OsuHitObject representation.

This commit is contained in:
Dean Herbert
2017-03-06 12:58:14 +09:00
parent 910d9ccc00
commit 20fcb8848b
4 changed files with 38 additions and 23 deletions

View File

@ -5,11 +5,18 @@ using System;
using osu.Game.Modes.Objects;
using OpenTK;
using osu.Game.Beatmaps;
using osu.Game.Modes.Osu.Objects.Drawables;
namespace osu.Game.Modes.Osu.Objects
{
public abstract class OsuHitObject : HitObject
{
public const double HITTABLE_RANGE = 300;
public const double HIT_WINDOW_50 = 150;
public const double HIT_WINDOW_100 = 80;
public const double HIT_WINDOW_300 = 30;
public const double OBJECT_RADIUS = 64;
public Vector2 Position { get; set; }
public Vector2 StackedPosition => Position + StackOffset;
@ -26,6 +33,21 @@ namespace osu.Game.Modes.Osu.Objects
public abstract HitObjectType Type { get; }
public double HitWindowFor(OsuScoreResult result)
{
switch (result)
{
default:
return 300;
case OsuScoreResult.Hit50:
return 150;
case OsuScoreResult.Hit100:
return 80;
case OsuScoreResult.Hit300:
return 30;
}
}
public override void SetDefaultsFromBeatmap(Beatmap beatmap)
{
base.SetDefaultsFromBeatmap(beatmap);