Commit Graph
223 Commits
Author SHA1 Message Date
yugecin 3a30087929 Fix selecting "IAHN - Transform [Aspire]" map crashing the game (#5) 2016-10-01 21:21:33 +02:00
yugecin f15ead1476 better sliderball scale 2016-10-01 15:57:41 +02:00
yugecin 9d6c413eb7 Implement circleslowsliders 2016-10-01 14:46:39 +02:00
yugecin 58b22cadd6 remove debug println 2016-10-01 13:14:58 +02:00
yugecin 9dc566ca4e always use white reversearrows 2016-10-01 13:14:31 +02:00
yugecin 70d006b645 make reversearrows scale to the bpm 2016-10-01 13:12:02 +02:00
yugecin ea45767fa1 Onyl show mirrored object hitresults if autopilot is active >.< 2016-10-01 12:39:52 +02:00
yugecin eee65a589e fix first object movement 2016-10-01 11:34:32 +02:00
yugecin 5a899e29cb don't play the hitsounds twice >.< 2016-10-01 00:25:55 +02:00
yugecin 230dd6d98f put common stuff in utils 2016-09-30 23:56:07 +02:00
yugecin ad370fd8fb Show mirrored result for slider ends 2016-09-30 23:53:48 +02:00
yugecin 4409d538fd Show mirrored results for hitcircles 2016-09-30 23:51:28 +02:00
yugecin b1d69cf9f4 Instantly show hitresult on slider initial circle, don't show the other end when finishing. Also show results in mirrored circles 2016-09-30 23:48:02 +02:00
yugecin 2f5f2a610d add opposite combo color as override option 2016-09-30 21:32:24 +02:00
yugecin ae9bdcd68f implement sliderballtint 2016-09-30 21:11:16 +02:00
yugecin f6b791cf25 Option to apply last object color to cursor 2016-09-30 19:38:02 +02:00
yugecin add5e96af1 Options to use object color overrides 2016-09-30 19:05:53 +02:00
yugecin 46e2b7069f option for rgb objs 2016-09-30 09:17:39 +02:00
yugecin 0d77d7f56a remove debug println, whoops 2016-09-30 09:13:10 +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 fa57e63a2f option to hide approach circles 2016-09-29 23:34:11 +02:00
yugecin 0d89c2612d attempt to make sliderbody look better 2016-09-29 23:22:41 +02:00
yugecin 923f8dcb49 black sliders 2016-09-29 22:45:16 +02:00
yugecin d3af3c17d0 move shit to utils 2016-09-29 22:41:56 +02:00
yugecin 33895b24c8 mirrored objects +180° hue 2016-09-29 21:55:23 +02:00
yugecin 9a73ab23e9 render mirrored 2016-09-29 21:40:42 +02:00
yugecin 72aa856818 don't draw sliderend 2016-09-28 22:03:45 +02:00
yugecin 43548fa058 implement lazy sliders 2016-09-27 22:23:14 +02:00
yugecin eb696077a2 we want to dance 2016-09-27 21:29:03 +02:00
yugecin 857118accb update forgotten dummyobj 2016-09-27 19:56:02 +02:00
yugecin b842a564f7 add isSpinner, isCircle etc in GameObject 2016-09-27 18:26:53 +02:00
yugecin e7e33cd406 put more information in gameobject 2016-09-27 18:17:53 +02:00
MatteoS 78511737ce Draw reversing arrow in black if the slider is lightly colored 2015-11-21 15:30:25 +01:00
MatteoS 3e285e05fc Add falling game objects on fail 2015-11-18 22:29:18 +01:00
Jeffrey Han 14496050ea Minor style changes from #134.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-18 16:02:19 -04:00
Peter Tissen 131138ea8c Snaking sliders initial implementation.
Draws curves in a range from 0 to x (where x is a value between 0 and 1) while blending them in (if enabled in the options)
Cache a unit-cone once and re-use that with scaling and translation instead of generating it each time again.
This is more for readability than performance (since presumably feeding it mostly constants like before would be faster)

Only draws the cones in the curve once if possible
(only possible if consective calls to draw with the intervals x_1 before x_2 are made and [0, x_1] [0, x_2] with x_1 < x_2 holds true)

minor refactoring and cleanup

Omg my code is such a mess. I feel like I've committed a crime against humanity by just randomly putting that
random vbo id into the class called "Rendertarget". But there's really no good place for it now (that has a way to clean it up).
But if "Rendertarget" will ever be used by anything else but the sliders I'm gonna pull that out.

added blending in for return arrows and ticks
2015-09-18 20:21:37 +02:00
Jeffrey Han 01fb9c50c9 Replace xy float[] arrays with Vec2f (mostly in game objects).
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-05 12:53:42 -05:00
Jeffrey Han c516d93d1e Check for parallel vectors before constructing a CircumscribedCircle.
If the check fails, use a LinearBezier instead. (e.g. in map 45471).

Moved slider time and curve calculations into HitObject so that they can be reused.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-02 10:51:52 -05:00
Jeffrey Han d360b73bf5 Specify whether Curve uses scaled or unscaled coordinates.
Unscaled coordinates will be used in a future commit (hopefully).

Added a normalize() method to Vec2f.

Throw RuntimeExceptions for any Curve initialization errors; the game would crash anyway, and this way the objects can be substituted for DummyObjects for a graceful failure.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-02 01:47:15 -05:00
Jeffrey Han fdd70a81c4 Removed leftover/unused 'color' parameter in Curve constructor.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-09-01 21:57:37 -05:00
Jeffrey Han df3e662865 Marked a couple more members as 'final'. (continuation of 441bb95)
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-31 22:54:35 -05:00
Jeffrey Han 8892973d98 Now using official formulas for circle diameter and timing offsets.
The previous formulas were extremely close, so you shouldn't notice any gameplay differences at all.

Circle diameter:
- Previously: 104 - (CS * 8)
- Now: 108.848 - (CS * 8.9646)

Timing offsets: added 1.5ms to 300, 100, and 50 hit result offsets.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-30 19:01:40 -05:00
Jeffrey Han 34c7942f4b Fixed "Hidden" mod timing issues. (fixes #121)
This introduces more accurate timing formulas associated with the "Hidden" mod (previously, in #115, these values were hardcoded).  The values seem somewhat close to the values in osu!, but were not extensively tested.

Also set an upper bound on the fade in time for hit objects proportional to the approach time, or else the timing values in the "Hidden" mod would be too inconsistent.

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-08-28 21:12:47 -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
Szunti 017150233b Rewrote shaders for GLSL 110 (openGL2.0). 2015-08-24 22:18:11 +02: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 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 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