Commit Graph

746 Commits

Author SHA1 Message Date
Jeffrey Han
5efb61d3bb Fixed bug where skinned old-style cursors were ignored. (part of #120)
Previously, enabling old-style cursors would try to load files "cursor2" and "cursortrail2". Now the actual files are loaded, and the -2 images are only used when no game skin image is provided.

Added a hasGameSkinImage() method in GameImage to check if the "default" image is skinned (by a game skin).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-23 21:16:28 -05: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
949b2c215c Added a WatchService to watch the beatmap directory tree for changes.
Any CREATE and DELETE that occur in the song menu state will now show a notification and modify the behavior of the 'F5' key. Changes that occur in other states will force a reload upon entering the song menu.

This is part of osu!, but as it's not incredibly helpful, I've left it disabled by default.  It can be enabled in the options menu.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-21 10:25:52 -05:00
Jeffrey Han
ae5016f3ab Validate audio files before trying to load them. (part of #120)
Also fixed an issue where songMenu.resetGameDataOnLoad() sometimes wasn't being called when it should be (e.g. after playing a beatmap, if you move to a different screen, your score won't appear in the song menu right away).  It's now being called more often than necessary, but that should be fine.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 22:58:45 -05:00
Jeffrey Han
130f9bf445 Game ranking screen fixes.
- Show retry button only when appropriate (e.g. not when viewing replays or when playing with "Auto" enabled).
- Watching a (fake) "replay" with "Auto" enabled will actually just call the "retry" code now.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 22:06:27 -05:00
Jeffrey Han
ae149a61f6 HP is now drained while holding sliders. (fixes #103)
Slider ticks now give HP, and the HP for SLIDER30 results is doubled.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 21:24:58 -05:00
Jeffrey Han
441bb95a09 Added lots of 'final' modifiers to class fields where applicable.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 21:11:55 -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
7b5b96752c Moved some duplicate colors into the Colors class.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 20:14:24 -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
5f5c0cdbc4 Fix program crashing if unable to connect to BeatmapDB. (fixes #111)
In this case, load all beatmaps from disk instead of trying to read from the cache.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-20 18:54:18 -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
8efcc1f2ee Attempted fix for a null pointer exception in #123.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-15 10:06:19 -05:00
Jeffrey Han
96f882bd99 Fixed two incorrect shortcut keys for selecting game mods.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-14 18:15:19 -05:00
Jeffrey Han
988e4139f8 Merge pull request #122 from Bigpet/master
Lower GLSL version requirement to GLSL 130/OpenGL 3.0
2015-08-13 12:04:22 -05:00
Peter Tissen
f0b87c99ab Lower GLSL version requirement
I didn't really use any of the newer features anyway.
This should accomodate open source drivers that use older versions of MESA.
2015-08-13 11:28:04 +02:00
Jeffrey Han
93615736af Minor port-related fixes.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-12 22:00:58 -05:00
Jeffrey Han
7dc5f973de Show a more informative error message for BindException. (fixes #119)
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-12 21:46:10 -05:00
Jeffrey Han
f22498ae7d Updater UI improvements.
Replaced ugly 'bang' image with 'fa-arrow-circle-o-down' and 'fa-restart' icons from Font Awesome v4.4.0 (https://github.com/FortAwesome/Font-Awesome).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-12 19:06:58 -05:00
Jeffrey Han
52e973caf8 Added animation loop capabilities to MenuButton.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-12 19:03:50 -05:00
Jeffrey Han
a4898d01a7 Fix hard rock coordinate modifier in replays. (fixes #118)
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-10 17:14:02 -05:00
Jeffrey Han
e68bcf8abc Fix PreparedStatement bug in ScoreDB with null string fields.
This was causing deleteScoreStmt to always fail.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-10 16:18:14 -05:00
Jeffrey Han
4195bb1a8c Merge pull request #117 from mad-s/master
Fix #116
2015-08-09 13:52:19 -05:00
MatteoS
35524a22ad Fix #116 2015-08-09 17:41:29 +02:00
Jeffrey Han
fee85c6a73 Improvements in search query switching in the downloads menu.
Submitting new queries will now actually cancel the old query and immediately use the result of the new query.  The old behavior was very inconsistent about this.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 21:57:43 -05:00
Jeffrey Han
8173b9b4c2 Added Mnetwork download mirror.
URL: http://osu.uu.gl/

Note that there's no API available, so this just parses the HTML for beatmap data.  It's pretty slow compared to the other servers.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 20:34:49 -05:00
Jeffrey Han
0909377d14 Follow-up to #115: some fixes and whitespace changes.
- Hide the spinner approach circle instead of the spinner circle.
- Show the slider ball.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 19:15:49 -05:00
Jeffrey Han
262fa9d4c4 Merge pull request #115 from mad-s/master
'Hidden' gamemod
2015-08-08 18:40:37 -05:00
MatteoS
a13ea9308d Corrections for 'hidden' mod 2015-08-09 01:20:45 +02:00
Jeffrey Han
dbb5eebf5c Added YaS Online download mirror.
URL: http://osu.yas-online.net/

Note that fetching the direct download URL for a beatmap requires an extra query, which is not currently done asynchronously (but it really should be).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 17:12:07 -05:00
Jeffrey Han
b9adf59d53 Allow HTTP <--> HTTPS redirects (max 3) in Download class.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 17:08:36 -05:00
mad-s
d82b8188e8 Hit indicators *do* show up in hidden mode.
I failed...
2015-08-08 23:17:25 +02:00
MatteoS
34356d9c08 Implement 'hidden' game mod 2015-08-08 21:12:02 +02:00
MatteoS
351064e0ba Update .gitignore to allow eclipse custom builder 2015-08-08 21:00:36 +02:00
Jeffrey Han
b98c646106 Removed osu!Mirror download server, which is now officially offline.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 13:33:38 -05:00
Jeffrey Han
40ab94794f Bug fixes and tweaks.
- Check if other Desktop actions are supported (follow-up to #114).
- The cursor-middle image is no longer scaled (when clicking).
- Changed the options menu background image (created with Trianglify at http://qrohlf.com/trianglify/), and made it fit the entire page.
- Slightly increased minimum splash screen time.
- Switched more animations to use AnimatedValue.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-08 12:04:15 -05:00
Jeffrey Han
cd59c332ab Merge pull request #114 from mad-s/master
Various bug fixes
2015-08-08 10:45:03 -05:00
MatteoS
b537b83736 Game doesn't crash when being unable to go to the github repo page 2015-08-08 16:29:08 +02:00
MatteoS
110e54e063 Fix crash on pressing extra mouse buttons 2015-08-08 16:20:00 +02:00
MatteoS
940e9baa41 Correct detection of GLSL version for curve rendering 2015-08-08 14:43:56 +02:00
Jeffrey Han
c0b3da37c2 Changed more messy animations to use AnimatedValue.
Also finally refactored the main menu logo controller code...

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-06 00:53:30 -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
6a4c6a8d37 Updating to version 0.10.1.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-07-18 23:55:06 -05:00
Jeffrey Han
5dac21a545 Cursor trail now considers actual FPS (not target FPS). (fixes #109)
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-07-16 18:14:46 -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
05c7ac0a02 Minor follow-up to #108.
Set minimum OpenGL version for mmsliders to 3.0 (from 3.2) and removed an unused variable.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-07-09 11:59:53 -05:00
Jeffrey Han
2be92ecdca Merge pull request #108 from Bigpet/viewport_fix
Backup and restore the viewport size when rendering sliders
2015-07-09 11:54:27 -05:00
Peter Tissen
7941a70238 use EXT version of FBOs instead of the ARB version
This doesn't actually make a difference in functionality.
The issue is that the flashlight mod uses Slicks FBO functions which
use the EXT version and Intel drivers generate the same FBO IDs twice
if the EXT and ARB versions are mixed.
2015-07-09 18:37:39 +02:00
Peter Tissen
420f1fb02c Backup and restore the viewport size when rendering sliders. Needed because Slick tends to allocate offscreen buffers for itself only with power of two textures, so it will use another viewport when rendering to its own offscreen buffers. 2015-07-08 16:23:59 +02:00
Jeffrey Han
26ab61910e Added option to disable automatic checking for updates.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-07-07 19:03:54 -05:00