Commit Graph

138 Commits

Author SHA1 Message Date
yugecin
1df25520e4 overhaul event system 2017-05-26 21:32:55 +02:00
yugecin
b8dd507dc5 better Utils#cleanFileName 2017-05-26 17:57:02 +02:00
yugecin
c8df3d5b57 change getQuadrant to getRegion 2017-05-26 17:18:44 +02:00
yugecin
e408fd9607 fix Nullable annotations 2017-05-26 11:13:20 +02:00
yugecin
6ccedf4636 better jar handling; get native files from manifest instead of iterator over every file in the jar 2017-05-25 01:03:15 +02:00
yugecin
ec53f531c8 got rid of dependency injection, it doesn't add anything at this point and only slows down things and makes a mess. Also some refactoring. 2017-05-21 11:12:55 +02:00
yugecin
be23541ac3 refactor options 2017-03-26 22:57:10 +02:00
yugecin
8d19288f81 remove the pair 2017-03-05 21:20:56 +01:00
yugecin
2f1f860ca3 fix sliders disappearing when multiple sliders are active or when later sliders is done earlier (2b maps etc) 2017-03-05 11:58:07 +01:00
yugecin
77a5ebf537 make the eventbus static 2017-02-06 00:39:45 +01:00
yugecin
f730935622 use the new errorhandler & bubble notifs 2017-01-21 01:16:27 +01:00
yugecin
8b226f3afc working splash state 2017-01-17 23:18:12 +01:00
yugecin
68ac7f3d10 ErrorHandler 2017-01-11 20:41:13 +01:00
yugecin
9ec2d1a5a8 attempts to merge mirrored curves 2016-12-25 17:30:09 +01:00
yugecin
a6540044b6 Merge remote-tracking branch 'remotes/original/master' into upstream
# Conflicts:
#	src/itdelatrisu/opsu/Container.java
#	src/itdelatrisu/opsu/GameData.java
#	src/itdelatrisu/opsu/Options.java
#	src/itdelatrisu/opsu/audio/MusicController.java
#	src/itdelatrisu/opsu/objects/Circle.java
#	src/itdelatrisu/opsu/objects/Slider.java
#	src/itdelatrisu/opsu/render/CurveRenderState.java
#	src/itdelatrisu/opsu/states/Game.java
#	src/itdelatrisu/opsu/states/MainMenu.java
#	src/itdelatrisu/opsu/states/SongMenu.java
#	src/itdelatrisu/opsu/ui/Colors.java
#	src/itdelatrisu/opsu/ui/MenuButton.java
2016-12-24 14:35:20 +01:00
Jeffrey Han
81c8a61bb8 Better-defined root directory.
- If running from a JAR, the root directory will be the same directory as the JAR (not where it was launched).
- Otherwise, use the current working directory.
- XDG unaffected.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2016-12-22 19:54:05 -05:00
Jeffrey Han
e161d0180e Follow-up to #211: fix slider hit results not appearing; code cleanup.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2016-12-19 16:33:20 -05:00
yugecin
d96bbd3a08 attempt to fix shrinking sliders 2016-12-10 19:30:21 +01:00
yugecin
e878f0fb0d Merge branch 'master' of https://github.com/itdelatrisu/opsu into 'upstream'
# Conflicts:
#	README.md
#	src/itdelatrisu/opsu/Opsu.java
#	src/itdelatrisu/opsu/Utils.java
#	src/itdelatrisu/opsu/render/CurveRenderState.java
#	src/itdelatrisu/opsu/states/Game.java
2016-12-10 01:19:31 +01:00
Jeffrey Han
2d150c9939 Follow-up to dabfb82.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2016-10-13 04:20:03 -04:00
Jeffrey Han
76c8efb0c2 Disable SSL validation for YaSOnlineServer.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2016-10-13 01:17:59 -04:00
yugecin
230dd6d98f put common stuff in utils 2016-09-30 23:56:07 +02:00
yugecin
add5e96af1 Options to use object color overrides 2016-09-30 19:05:53 +02:00
yugecin
0c16802523 use shifthue 2016-09-30 09:12:54 +02:00
yugecin
e126edbff7 shift hue on each new object 2016-09-30 09:09:14 +02:00
yugecin
d3af3c17d0 move shit to utils 2016-09-29 22:41:56 +02:00
yugecin
a39ac19bb0 move width/height from container to options class 2016-09-27 20:52:52 +02:00
yugecin
632c8a7fcf double ver of Utils.distance 2016-09-27 18:44:02 +02:00
yugecin
b1894ade26 getQuadrant func 2016-09-27 18:36:09 +02:00
Jeffrey Han
6506967c12 Added some missing @param and @throws Javadoc comments.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-09 23:51:16 -04:00
Jeffrey Han
6c369f6329 Minor code cleaning.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-08 12:26:28 -04:00
Jeffrey Han
c70fcb296f Add git hash (from refs/remotes/origin/master) to error reports.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-31 17:54:32 -05:00
Jeffrey Han
9d19dacab4 Removed some unneeded methods.
- Removed "isImplemented" field from GameMod as all of the base mods have been implemented.
- Removed Utils.getBoundedValue() methods in preference for Utils.clamp().

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-30 17:56:05 -05:00
Jeffrey Han
6d284cdd80 Organize imports.
Some of these got re-ordered when I updated Eclipse -- resetting to the original sort order.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-28 21:29:21 -05:00
Jeffrey Han
b54886a379 Follow-up to #126.
- Fix the XDG directory flag that got removed with JarSplice. To enable XDG directories, set the 'Use-XDG' property in either build file to 'true'.
- Always re-build jars in the Gradle script (disable "up to date" for the task).
- Delete JarSplicePlus.jar since it's no longer being used.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-27 14:14:04 -05:00
Lemmmy
dea0104c4d Added the Gradle build system and added a new native loader 2015-08-27 15:50:36 +01:00
Jeffrey Han
b83d6be5fd Clarified GameImage "skinnable" field as "beatmap-skinnable".
Renamed some methods and modified comments to avoid this confusion, as game skins were implemented much later than beatmap skins.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-23 20:41:09 -05:00
Jeffrey Han
0a7aef7347 Moved all Utils.FONT_* into new class opsu.ui.Fonts.*.
- Moved Utils.loadGlyphs() into this class, and rewrote it to take a single generic string (instead of beatmap title/artist strings, specifically).
- Also moved font initialization into this class.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 20:40:07 -05:00
Jeffrey Han
91f07855a7 Moved all Utils.COLOR_* into new class opsu.ui.Colors.*.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 20:02:23 -05:00
Jeffrey Han
6e7de654b0 Hit animation bug fixes.
- In "Hidden" mod, don't draw expanding animation for circles. (related to #121)
- With "Show Perfect Hits" disabled, still show the hit animations instead of having the objects just disappear. (also mentioned in #121)
- Removed the two easing functions in Utils (and replaced references with calls to AnimationEquations).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 18:40:10 -05:00
Jeffrey Han
c91146b024 Added easing functions for all-around better animations.
These are Robert Penner's easing functions (http://robertpenner.com/easing/), refactored by CharlotteGore to only take a t parameter (https://github.com/CharlotteGore/functional-easing). Licensed under BSD (the former) and MIT (the latter).

Related changes:
- Added "AnimatedValue" utility class for updating values used in animations.
- MenuButton now uses AnimatedValue to handle its animations (still linear by default).
- Added in-out-back easings on logo, mods, and various other elements; added out-bounce easings on button menu.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-05 22:28:14 -05:00
Jeffrey Han
4e2074e41b Show errors if any directories could not be created. (fixes #97)
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-07-11 10:51:52 -05:00
Jeffrey Han
2c47e9a1b9 Moved "UI" and "MenuButton" classes to new package "opsu.ui".
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-29 01:55:57 -04:00
Jeffrey Han
b804a4d154 Skin options: CursorRotate, CursorExpand, SpinnerFadePlayfield, CursorTrailRotate, ComboBurstRandom, Combo[1-8], SongSelect(Active|Inactive)Text.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-24 22:17:45 -04:00
Jeffrey Han
40e4495030 Initial skin loader implementation.
- Skins are now loaded from subdirectories of the root "Skins" directory, and can be changed in-game (but requires a restart).
- Changed the default skin directory to the osu! directory, if available.

This implements a full parser for skin.ini (excluding CTB/Mania elements) based on the current wiki information.  None of the settings have been implemented yet.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-23 23:48:28 -04:00
Jeffrey Han
fe8c6a6f02 Added Utils.parseBoolean() method to parse 0/1 booleans.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-23 14:52:03 -04:00
Jeffrey Han
b5c434a808 Added Hexide download server.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-17 01:58:54 -04:00
Jeffrey Han
250f7acc93 Continuation of 53c79c5 - HitObject name changes.
Attempts to eliminate any confusion between OsuHitObject (raw, parsed hit objects) and HitObject (interface for game object types).
- Renamed "HitObject" interface to "GameObject", since these objects are specific to gameplay.
- Renamed "OsuHitObject" to "HitObject", since these objects are primarily containers for parsed data.

Sorry if the name-swapping is confusing; these should be better names in the long run.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-16 21:42:03 -04:00
Jeffrey Han
53c79c5d85 Major refactoring - now using far more logical class names.
- Renamed "OsuFile" to "Beatmap".  All related variables and methods with "osu" have also been renamed to "beatmap" (or variants of each).
- Renamed "OsuGroupNode" to "BeatmapSetNode".  Avoids confusion since groups are identified by a "set ID", not a "group ID".
- Renamed "OsuGroupList" to "BeatmapSetList", for the same reason as above.
- Renamed "OsuDB" to "BeatmapDB", for the same reason as above.
- Moved classes directly related to parsed beatmaps (Beatmap, BeatmapSetList, BeatmapSetNode, OsuHitObject, and TimingPoint) into a new "beatmap" package.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-16 21:25:19 -04:00
Jeffrey Han
6c8d4ea49a Changed font to Droid Sans Fallback v2.55b. (fixes #65)
Generally much cleaner than Kochi Gothic, and half the file size.  Uses an older version of the font, since many glyphs were removed in later versions (due to the glyphs being supported in other Google fonts).

Droid Sans Fallback is licensed under the Apache License, Version 2.0.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-05-15 01:33:53 -04:00