Commit Graph
4533 Commits
Author SHA1 Message Date
Jason Felds 8ead89d484 Some OSes need tomcrypt defines in StepMania too. 2015-04-18 12:27:32 -04:00
Kyzentun 9314555e6d Added preference for showing multiple toasties in one song. Added IsWaiting to Transition. 2015-04-18 08:52:57 -06:00
Kyzentun 862eba8f7d Changed logic to allog ToastyTriggersAt to be a function that returns the next increment. Added ToastyMinTNS metric for controlling the TNS for a toasty. 2015-04-17 23:24:49 -06:00
Kyzentun c50b12b8c6 Changed toasty logic to trigger multiple times without requiring a W3. 2015-04-17 16:26:39 -06:00
Jason Felds 52d2c99048 Merge pull request #558 from wolfman2000/wolf-cmake-cpack-clean
Provide initial cpack support. Mainly for devs.
2015-04-16 18:34:04 -04:00
Jason Felds 1bb24245ce Only use -lva for StepMania, not ffmpeg. 2015-04-15 19:08:51 -04:00
Kyzentun fc6ce722ca Disabled late join on SSM if on extra stage to prevent crash in summary screen. 2015-04-14 12:25:40 -06:00
sigatrev b4f861a8d5 ancient NoteData::ClearRangeForTrack bug fix
When clearing a range, if the first note in any track in the range was a
hold note, it would place it a hold the end of the cleared range.
2015-04-13 18:51:02 -05:00
Kyzentun b04e7faec6 Fixed RevertFromDisk by making it turn off the InStepEditor flag while reloading the song. Removed redundant call of loaderSSC.TidyUpData from NotesLoader::LoadFromDir because loaderSSC.LoadFromDir calls it. 2015-04-13 10:33:09 -06:00
Kyzentun bac4356672 Changed TimingData to always return the entry before the closest one when using the lookup table to avoid various problems that occur only when the current time is exactly on the current entry in the lookup table. 2015-04-11 22:50:06 -06:00
Jason Felds 361df3a496 Provide initial cpack support. Mainly for devs.
There are two targets you may not be familiar with, `install` and `package`.
* For Linux, `install` now defaults to `/usr/local`, but you can set it back to `/opt` with `cmake -DCMAKE_INSTALL_PREFIX=/opt` if you wish.
* For Windows, `install` may not work, but this is not a target you would want usually.
* For Linux, `package` has not been tested yet. It will likely create an archive file of what is installed.
* For Windows, `package` will create an NSIS package that can be used to install StepMania. One minor change as a result is that the binary and companion dlls will be placed in `bin` instead of `Program` now, but it makes no difference code-wise.

Mac OS X users: for now, use the `dmg` target instead.

This commit does *not* deprecate the original nsi script yet. The Texture Font Generator program has not been addressed yet.
2015-04-11 23:47:42 -04:00
Kyzentun cf3c967a51 Allow songs with invalid characters such as # in the title to work by calling TidyUpData after loading. 2015-04-10 22:40:49 -06:00
Kyzentun 1c3db82537 Modified StepsID operators to consider 0 equal to all other hash values. See comment in source for details. Changed operator>>(RString&, int&) functions to be based off a template. 2015-04-10 09:10:51 -06:00
Kyzentun 60349d849e Modified NoteDataWithScoring::GetActualRadarValues to use the time between the first and last hittable notes instead of the first and last seconds of the song because the song could start or end with mines or other unhittable notes. 2015-04-08 20:15:18 -06:00
Kyzentun 8993cfe729 Added MuteActions preference checking to RageSound::PlayCopy. Modified ActorSound and GameSoundManager::PlayOnce to take is_action args. Fixed doc for playcommand to mention the param table. 2015-04-08 16:15:14 -06:00
Kyzentun 84b57e7ca4 Song::TidyUpData needs to happen after edits in the song folder are loaded so that their radar stuff will be calculated. Bumped cache version. 2015-04-07 12:47:51 -06:00
Kyzentun 8c33bf92fb Merge pull request #541 from kyzentun/board_under_everything
Board under everything
2015-04-06 23:35:04 -06:00
Kyzentun 3cb7b5d2a5 Typo fix in ScreenEdit help from SpookyMagician. 2015-04-06 23:00:51 -06:00
Kyzentun 9658252bc3 Merge pull request #543 from kyzentun/edit_timing_data
Shift timing data in Edit Mode
2015-04-06 22:50:56 -06:00
Kyzentun 88af6acdfd Merge pull request #552 from kyzentun/radar_note_count
RadarCategory_Notes, uncapping and fixes to radar calculation.
2015-04-06 22:49:42 -06:00
Kyzentun 1e668c660f Removed _t from typenames because of POSIX. Fixed bug that made a warp and stop on the same row skip the marker in TimingData. 2015-04-06 21:49:46 -06:00
Jason Felds 4374d18cb8 Merge pull request #544 from wolfman2000/wolf-cmake-dmg-generator
Allow generating dmg files thanks to cmake.
2015-04-06 22:58:53 -04:00
Kyzentun 5852067f47 Added RadarCategory_Notes. Rewrote NoteDataWithScoring stuff to only traverse the NoteData once, and match the radar code in NoteDataUtil. Fixed hand and lift counting in NoteDataUtil::CalculateRadarValues. Removed cap from RadarValues so that Stream, Voltage, Air, Freeze, and Chaos can be over 1.0. Fixed Stream and Voltage to not count hold heads twice. Changed SetRadarValues in NotesLoaderSSC to not require the stepfile version number. 2015-04-06 18:45:23 -06:00
Kyzentun d7e032b478 Added 1, 2, and 4 measure choices to shift menus in edit mode. 2015-04-04 22:38:18 -06:00
Colin Wallace 8ed944368c Fix OSX key translation crash (#504) 2015-04-05 02:55:54 +00:00
Jason Felds 01032b6049 Allow generating dmg files thanks to cmake.
A new target is introduced called `dmg`. This must be run explicitly.
Upon running it, it creates the dmg file.

The target respects if we are in a full release or not.

This will officially deprecate the ruby release script in the Xcode
folder upon a successful merge.
2015-04-04 15:23:28 -04:00
Kyzentun 9e5081476f Added timing menu options to Edit Mode that allow shifting and copying timing segments of a chosen type in the selected region or everywhere below the cursor. 2015-04-04 09:10:00 -06:00
Jason Felds 016a4053e1 More CMake improvements and education.
* `set_target_properties` can have multiple properties assigned in one go.
* Have version information be generated from CMake, not later plist preprocessing.
* Configure the plist file regardless of OS. This should be a safe command: following the example from the knut repository.

The old fashioned Info-StepMania.plist file can be considered deprecated
upon a full migration to CMake.
2015-04-03 23:24:46 -04:00
Kyzentun b4893e4a10 Structural changes to ScreenGameplay, Player, and NoteField to put the NoteField Board underneath everything except the song background. This includes underneath the combo/judgment when those are under the field. Screen filter in default theme moved to be part of the NoteField board so that it's always in the right place. 2015-04-03 14:19:28 -06:00
Kyzentun 2f1a348565 Commify handles negative numbers now. 2015-04-02 18:02:38 -06:00
Kyzentun d789ef7c6b Exposed commify function to lua and made it handle decimal numbers. 2015-04-02 13:36:41 -06:00
Jason Felds b3addbedbc CMake adjusted to allow proper releasing.
Mac side is ready.
2015-03-31 21:17:20 -04:00
Kyzentun 2b4cabfb57 Added keybinding for reloading songs on SSM, and lua function for doing it from lua. Added NeverCacheList preference for WIP groups that should never be cached. Rewrote TimingData::CopyRange in preparation for using it to copy/paste timing data from the selected area in edit mode. 2015-03-31 15:20:37 -06:00
Kyzentun 0e66d625e6 Merge pull request #534 from kyzentun/song_manager_restructure
Various changes to speed up start up time
2015-03-31 09:41:15 -06:00
Kyzentun e08182446e Fixed bug in TimingData lookup table for elapsed time. The entries were being added with the time for lookup when they should have been added with the beat. Also fixed the way GetElapsedTimeInternal uses FindEvent so that FindEvent won't spuriously find the marker when building the lookup table. 2015-03-30 22:41:40 -06:00
Kyzentun 8b09da8e64 Various changes to speed up start up time:
Added delay_save_cache to SongCacheIndex so that it doesn't write the entire cache index file after every song is loaded when loading songs.
Added m_SongsByDir to SongManager so that GetSongFromDir doesn't have to walk the entire list of songs.
Minor changes to when LoadEnabledSongsFromPref occurs and how SanityCheckGroupDir works to speed up loading.
Song::ReloadFromSongDir removes cache file to force an actual reload from the song dir instead of reloading from the cache.  ReloadFromSongDir exposed to lua.
Reordered Actor::LoadFromNode to put Command first because that case is more common.
Course::GetTrailUnsorted reserves entries before starting to save time reallocating.
join in RageUtil calculates the final size of the concatenated strings reserves it to save time reallocating.
Added time log file to RageLog for profiling.
2015-03-30 17:45:52 -06:00
Kyzentun 3c70b13fcf Fixed unitialized radar in CalculateRadarValues. Changed song deletion message to use translated string. Updated changelog. 2015-03-27 17:04:58 -06:00
Colin Wallace 473974e52f Add ability to delete songs from disk at the song selection screen (Ctrl+Backspace) 2015-03-27 05:22:55 +00:00
Dan Guzek e67c8e010a update CMake to use new ArchHooks_MacOSX.mm file
It is necessary to clear existing cmake cache and generate a new Xcode
project, following wolfman2000's instructions in ./Build/README.md

Witht that done, you can use the StepMania.xcodeproj generated by cmake
to successfully build a fresh StepMania.app and it properly logs the OS
X version.
2015-03-25 23:03:23 -04:00
Dan Guzek 2c16c6870c log OS X version properly - take 2
There was code in place to log the OS X kernel version (14.1.0, for
example) to log, but it stopped working some time ago. "Mac OS X
unknown." has been logged for the last several releases.

This commit swaps out that C++ code for a some Obj-C which logs the OS
X release version (10.10.2, for example) correctly. In order to mix
Obj-C with an otherwise C++ file, I changed the file extension from .cpp
to .mm to make it Objective-C++.

At the suggestion of wolfman2000, I have updated
src/CMakeData-arch.cmake to reflect the changes in this commit; that
will follow in the next commit from me.
2015-03-25 22:53:42 -04:00
Jason Felds 541389ea7d Resolve casting warning where no one would check. 2015-03-25 22:09:46 -04:00
Kyzentun 540c617485 Merge pull request #521 from kyzentun/load_only_from_cache
More aggressive caching.
2015-03-24 20:41:14 -06:00
Kyzentun 7ab01aa056 Merge pull request #510 from kyzentun/faster_timing_data
Faster TimingData lookups
2015-03-24 20:41:01 -06:00
Jason Felds 38cf1730db Merge pull request #528 from wolfman2000/wolf-cmake-ffmpeg-quick
Don't have ffmpeg's download take forever.
2015-03-24 21:27:56 -04:00
Kyzentun 062b618bda Changed ActorFrame::SetUpdateRate to reject a negative rate instead of crashing. 2015-03-24 18:28:11 -06:00
Jason Felds 8993ce7fa8 Important fixes to this branch:
* Don't download the repo again if it exists.
* Remember the include directories.
2015-03-24 20:04:48 -04:00
Jason Felds 6963e4d493 Don't have ffmpeg's download take forever.
Thanks for the assist teleshoes.
2015-03-24 19:12:28 -04:00
Kyzentun f4da2988d9 Moved GetTexturePath lua function from Sprite to RageTexture and renamed it to GetPath. Updated changelog. 2015-03-24 14:23:30 -06:00
Kyzentun 31ce1c7b39 Moved more things to happen only when a song isn't cached. Song::TidyUpData now only fetches a list files in the song dir once, instead of several times. 2015-03-24 12:05:41 -06:00
Kyzentun 96259ab951 Fixed voltage calculation by making avg_bps a float instead of an int. 2015-03-23 22:41:15 -06:00