Commit Graph

75 Commits

Author SHA1 Message Date
fd
2877d9bc3d Merge remote-tracking branch 'org/master' into ReplayTest
Conflicts:
	src/itdelatrisu/opsu/objects/HitObject.java
	src/itdelatrisu/opsu/states/Game.java
2015-03-18 00:20:34 -04:00
fd
93b336fdf6 Fixes Flickering during replay
Calculates Md5 for beatmap files.

Reverse Slider ball #50
2015-03-17 23:39:18 -04:00
Jeffrey Han
c14b4b4822 Implemented "autopilot" mod.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-17 19:03:50 -04:00
Jeffrey Han
e6206e52d4 Draw cursor location in "auto" mod.
Moves the cursor between hit objects and along hit object paths (slider curves, spinner circles).
- Added 'getPointAt(trackPosition)' and 'getEndTime()' methods to HitObject interface.
- Unhide default cursor for "auto" plays.

Other changes:
- Don't save replays for unranked plays ("auto", "relax", "autopilot" mods).
- For "auto" replays, don't parse replay frames: use default "auto" behavior instead.
- Fixed cursor location data not being reset upon entering states.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-17 14:48:13 -04:00
Jeffrey Han
b5a6455d0a Implemented "Flashlight" mod.
- Restricted view area using alpha maps and offscreen drawing. (credits: davedes)
- Added silver grades.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-15 15:38:04 -04:00
fd
60f2a9f142 ReplayTest
Seems to work
but still buggy
lots of flickering during replay
2015-03-15 14:31:26 -04:00
Jeffrey Han
f7c627e8a2 Follow-up to #49.
Allowed toggling HD image loading in-game; changed some names; other minor formatting changes.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-14 23:28:50 -04:00
fd
aeaaa9af4f @2x size images.
ComboBurst speed scaling.

CircumscribedCircle drawing optimization.
2015-03-14 18:50:09 -04:00
Jeffrey Han
35b1bf197f Minor follow-up to #48.
Created some more variables for readability.

Removed some unnecessary casts.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-12 23:53:25 -04:00
Jeffrey Han
49c85b3b08 Store raw hit object coordinates instead of scaled ones.
Fixes a bug where a resolution change (by restarting through the app) wouldn't re-scale hit object coordinates.  Scaled coordinates are now stored in HitObject fields.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-12 20:12:43 -04:00
Jeffrey Han
f6412f06e8 Initial replay parsing support.
- Basic implementation of viewing replays in the Game state.
- Added OsuReader class for reading certain osu! file types. (author: Markus Jarderot)
- Added Replay, ReplayFrame, and LifeFrame classes to capture replay data. (author: smoogipooo)
- Added 'keyPressed' parameter to HitObject.update().
- Added cursor-drawing methods in UI that take the mouse coordinates and pressed state as parameters.
- Added GameMod methods to retrieve/load the active mods state as a bitmask.
- Added Apache commons-compress dependency for handling LZMA decompression.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-09 18:32:43 -04:00
Jeffrey Han
f8e91cba64 Added error() method to DownloadListener interface.
Downloads failing due to connection errors will now send a bar notification instead of throwing an ErrorHandler dialog.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-07 23:57:18 -05:00
fd
421cfad6ad Fixes some sliders with too much control points. 2015-03-07 20:54:16 -05:00
Jeffrey Han
4718cb9aa5 Follow-up to #37.
- Removed 'currentObject' parameter from HitObject.draw() since it's no longer used.
- Changed "spun out" rpm.
- Formatting changes.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-07 15:38:59 -05:00
fd
75361e21e3 Spinner Changes
frame independent spin up/average
rpm for Auto/SpunOut
CCW rotation
fade in
addition
2015-03-07 13:03:21 -05:00
fd
b13787527a Spinner Changes
frame independent spin up/average
rpm for Auto/SpunOut
CCW rotation
fade in
addition
2015-03-07 12:40:14 -05:00
fd
f4969de438 Spinner Changes
frame independent spin up/average
rpm for Auto/SpunOut
CCW rotation
fade in
addition
2015-03-07 12:36:24 -05:00
Jeffrey Han
0a1b10fbdb Implemented "relax" mod.
Also added a few checks for related "autopilot" mod (probably incomplete).

Fixed the wrong default background being shown in the ranking screen.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-06 00:25:48 -05:00
Jeffrey Han
5626cd1699 Added a "pop" effect to the combo counter.
Also changed drawSymbolString() and drawFixedSizeSymbolString() methods slightly: coordinates are now floats, and drawSymbolString() takes an 'alpha' argument.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-04 01:30:28 -05:00
Jeffrey Han
4bf5943ee0 Follow-up to #27.
- Removed 'isSpinner' field from GameData.hitResult() since it's now being passed the full OsuHitObject.
- Minor Javadoc fixes.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-01 13:58:03 -05:00
fd
f9f95aae11 Merge remote-tracking branch 'ita/master' into AudioTest
Conflicts:
	src/itdelatrisu/opsu/states/SongMenu.java
2015-03-01 13:14:44 -05:00
fd
04bfbc70fc Addition/Edge Addition SampleSet
Minor fix with combo colors and spinners
2015-03-01 11:06:46 -05:00
Jeffrey Han
c543ddea01 Follow-up to #25.
- Moved all MultiClip-handling methods into the MultiClip class.
- Destroy extra clips when starting and finishing new beatmaps.
- Reduced maximum number of extra clips to 20.
- Attempted fixes at multithreading issues.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-03-01 00:03:06 -05:00
fd
9c2c5e309a Half fix for some sliders
which doesn't have enough distance in the curve to reach the end.
2015-02-27 00:04:58 -05:00
Jeffrey Han
4f0f093b75 Very slightly tweaked slider rendering.
Increased color alpha level, and don't fade the begin/end circles.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-23 18:12:31 -05:00
Jeffrey Han
163e72d423 Made sliders very slightly easier.
Sliders no longer need to be held to the end, but near it (within a 300-hit offset) for perfect hit.

Also made a slight improvement to SongMenu.setFocus().

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-21 17:12:18 -05:00
Jeffrey Han
020dfbde32 Spinner updates and animated score percentage display.
- Added spinner RPM display. (image by @kouyang)
- Added "osu!" image for completed spinners.
- Changed spinner hit result ratios to be slightly harder.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-20 16:56:41 -05:00
Jeffrey Han
25a7a826f1 More graphical updates, some code cleanup, and minor fixes.
- The MenuButton class now fully supports hover effects (scale, fade, rotate) for Animations.
- Used a fixed location for the selection buttons in the song menu (previously based on the "back" button width, which varies widely in different skins).
- Added hover effects for "retry" and "exit" buttons in the ranking screen.
- Changed animation speed of back/skip buttons.
- Fixed a bug where main menu showed the incorrect number of songs loaded during searches.
- Removed unneeded draw() methods in Utils for color filters (since 69f5aa5).
- Moved Utils.drawCentered(Image, ...) into the Image class.
- Added overwritten Image class to Maven excludes.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-19 00:33:32 -05:00
Jeffrey Han
4826798fba Reformatting of #20, and disable the hit error bar by default.
Added an option (in the "Custom" tab) to enable the bar.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-15 01:40:01 -05:00
fd
5a2fbd82fa Removed Hit Error Bar during breaks
Keep Hit Error Ticks inside bar
Removed Miss Locations
2015-02-14 22:15:41 -05:00
fd
597c4bfb19 Visual Changes
mostly personal preferences though

Larger hit circles
Circle overlay after drawing circle
Fade in approach circles
Fade in sliders (I don't think it looks that bad)
Fade out hit lighting
Hit Error Bar
 Probably need an option for this.
Miss locations(I don't know)

Reverse Slider ball rotation on repeats
2015-02-14 13:45:14 -05:00
Jeffrey Han
54806303f4 Reformatting of #17 and #18, and minor bug fix in #17.
Fixed not losing any health at near-zero rotation angles.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-14 01:07:17 -05:00
Jeffrey Han
2c59b345b5 Merge pull request #17 from PizzaLovers007/master
Reworked Spinner
2015-02-14 00:37:55 -05:00
PizzaLovers007
e88ebbbea2 Removed extra debug code 2015-02-13 21:48:11 -06:00
PizzaLovers007
c891cbeafa Changed spinner calculations again
Sets the RPM to the average of the last 50 velocities read by the
cursor.
2015-02-13 21:46:17 -06:00
PizzaLovers007
8e6ecd2326 Removed extra debug code 2015-02-13 17:18:48 -06:00
PizzaLovers007
548e389724 Completely reworked how the spinner spins
Added a “weight” to the spinner to make the RPM more like osu!

May need to tweak constants to make the spinner feel more natural.
2015-02-13 17:12:04 -06:00
Jeffrey Han
99bc944ed6 Minor updates.
- Draw the playfield background in the song menu if a background cannot be drawn for the focused beatmap.
- Added ScoreDB.deleteScore() method to delete a score from the database.
- Added @author tags for curve-related classes (by fluddokt, #12).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-11 02:56:02 -05:00
Jeffrey Han
63271c125c Quick fix: rotate spinner circle. (fluddokt/opsu@da475df)
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-10 00:26:48 -05:00
Jeffrey Han
f56c02864b Updates and fixes from fluddokt/opsu@76778f8 and fluddokt/opsu@cf321e9.
- Rotate slider ball image along the curve.
- Show download speed and time remaining when hovering over the download info button.
- Maintain aspect ratio of beatmap background image during gameplay.
- Clear beatmap background image cache after reaching OsuFile.MAX_CACHE_SIZE.
- Multiply hit circle size by OsuHitObject.getXMultiplier().
- Scale MENU_BUTTON_BG based on SongMenu.MAX_SONG_BUTTONS.
- Fixed download search TextField retaining focus even after leaving the downloads menu.
- Include Unicode title/artist strings in searches.
- Parse x,y beatmap coordinates as floats (instead of integers), and only read Kiai time if present.
- Added 1600x1200 resolution.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-09 21:40:38 -05:00
Terrence
6c7aac53f4 Revert "Revert "Further implementation of "weighted" spinner""
This reverts commit 582af96e12.
2015-02-09 17:58:04 -06:00
Terrence
582af96e12 Revert "Further implementation of "weighted" spinner"
This reverts commit 7ec6e81e8f.
2015-02-09 17:57:49 -06:00
Terrence
7ec6e81e8f Further implementation of "weighted" spinner
Current Issues:
- Need to handle change in direction better
- Spinning speed seems to be inaccurate
2015-02-09 17:57:20 -06:00
PizzaLovers007
826376a127 Initial Implementation of a "weighted" spinner
Added angular velocity and angular drag
2015-02-09 17:11:49 -06:00
Jeffrey Han
84e463e8fb Added a listener for the end of music tracks.
Fixes a bug during gameplay where if the music track ends before the last hit object is processed (esp. spinners), the game would hang.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-01-29 21:24:21 -05:00
Jeffrey Han
e93fe25834 Code style cleanup from #12.
- Moved all curve-related classes into a new package.
- Added some fields and methods to Curve abstract class.
- Removed the old (no longer used) Bezier subclass.
- Changed Error throwing to ErrorHandler.error() calls.
- Formatted code.

Also fixed a crash when reaching the ranking screen with the "Auto" mod active.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-01-29 20:36:23 -05:00
Jeffrey Han
94d7ff37eb Merge pull request #12 from fluddokt/omaster
New slider curve types (CircumscribedCircle, LinearBezier) and other fixes.
- Better rendering of multi-repeat arrows.
- Fixed circle color ordering.
- Better multipliers for hit object coordinates.
2015-01-29 15:04:44 -05:00
Jeffrey Han
baba1540a5 Javadoc fixes.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-01-29 03:17:53 -05:00
fd
0e9fd24754 Minor Fixes for beziers angles 2015-01-29 01:08:23 -05:00
fd
07f6ef9479 Comments for previous commit 2015-01-29 00:37:25 -05:00