Commit Graph

3734 Commits

Author SHA1 Message Date
Kyzentun 18b2d73bb1 Fixed invalid note type trace to use correct escape sequence. 2014-07-31 11:25:05 -06:00
freem 48425fa998 <Mad_Matt> hahaha. apparently I accidentally included my libtomcrypt and libtommath in my TapNote enum pull request
<Mad_Matt> someone should probably remove those
2014-07-31 11:58:58 -05:00
kyzentun d7fade2f0b Merge pull request #244 from sigatrev/TapNote-enums
Enums for TapNoteType, TapNoteSubType, and TapNoteSource
2014-07-30 23:03:51 -06:00
kyzentun 97bcfb37de Merge pull request #240 from sigatrev/UpdatePlayerSongPositions
UpdateSongPositions
2014-07-30 23:03:41 -06:00
kyzentun 77e0d70f39 Merge pull request #236 from kyzentun/RevalidateNoteDataATIs
Added revalidation scheme to NoteData's all_tracks_iterator
2014-07-30 23:02:13 -06:00
kyzentun 9a0219c6b6 Merge pull request #231 from kyzentun/ChangeGame
SetGame
2014-07-30 23:01:59 -06:00
Kyzentun 076d67132d Reverted BitmapText::LoadFromNode back to previous logic.
BitmapText now looks up font names in Fonts/ if the path doesn't resolve, so LoadFont is obsolete.
Added optional arg to ActorUtil::ResolvePath and GetAttrPath to make them not report an error when something is optional.
2014-07-29 12:09:40 -06:00
freem 9038056ba4 Make default value for NumBackgrounds preference 10.
(The previous value, 8, was unable to be selected in the menu, so it was always getting changed. Thanks to Mad Matt for pointing this out)
2014-07-28 17:54:50 -05:00
Kyzentun a5db63657c Changed GameCommand screen validation to allow OptionsList to work again. 2014-07-27 01:47:30 -06:00
AJ Kelly 52ed5c3f55 Merge pull request #245 from sigatrev/ActorScroller
fix ActorScroller wrapping
2014-07-26 19:27:34 -05:00
freem bc73e053bb telling Visual Studio to shut up about more warnings wrt/double and float 2014-07-26 19:01:49 -05:00
freem 71abf53d3c we dropped Visual C++ 6 support a long time ago, so remove most of the boolean operator hacks.
However, the == one is still required (at least on Visual Studio 2008, not sure about others).
Feel free to revert this if it's causing problems elsewhere.
2014-07-26 19:00:50 -05:00
sigatrev b0cac56864 fix ActorScroller wrapping
looping actor scrollers would never reach destination items with number
higher than the number of items.
2014-07-26 18:55:39 -05:00
freem ec66fc21bb explicit float postfix added to some numbers in order to get visual studio to shut up 2014-07-26 16:06:18 -05:00
sigatrev e81af8c131 Enums for TapNoteType, TapNoteSubType, and TapNoteSource
I intend to make additional useful information available on judgments,
such as TapNoteType and TapNoteSubType( for hold judgments ).

I am submitting this part as a separate pull request because it is more
generally applicable to anything TapNote related.
2014-07-25 18:45:02 -05:00
Kyzentun 32e5d7e90c Improved three-key support. Default theme should be completely usable with three-key cabinets if ThreeKeyNavigation pref is true. Added ThreeKeyNavigation pref. ScreenOptions:NavigationMode metric now uses that pref to decide between normal and toggle modes. Added GoToFirstOnStart to OptionRowHandlerLua so an option row can control that behavior. Rewrote input for default's ScreenSelectProfile to use an input callback to take advantage of menu button mapping. Fixed inconsistent indentation in ORHL documentation. 2014-07-25 14:33:15 -06:00
freem 0756bfa5f4 make [ScreenHowToPlay] CharacterName metric work again 2014-07-25 01:39:33 -05:00
Kyzentun c05a173d52 Fixed UpdateHasteRate and PlayerInfo:GetLifeMeter to check whether the life meter is null before using it. 2014-07-25 00:20:38 -06:00
sigatrev acd3340c57 UpdateSongPositions
It is useful to have Player SongPositions update off of ScreenGameplay
for use with things like ArrowEffects.

ScreenGameplay, ScreenHowToPlay, and ScreenEdit stop GameSoundManager
from running GameState:UpdateSongPosition and do it themselves, so this
has no impact on the screen classes that cared about, and thus updated,
player SongPositions.
2014-07-24 19:45:17 -05:00
freem 166ae6ea11 fix really awkward positioning of this line (was using spaces instead of tabs) 2014-07-24 17:51:02 -05:00
Kyzentun bc7217908d Added Sprite::NewBlankSprite for use by NoteSkinManager. Removed default texture loading from Sprite::Sprite. Should fix problems with white banners and garbage on videos. 2014-07-24 03:38:17 -06:00
Kyzentun ba0a0c69d2 Fixed Course::GetTotalSeconds to work on courses that don't have a medium difficulty. A course with only double charts was probably the one that made the crash manifest. 2014-07-23 13:25:04 -06:00
Kyzentun dc55f1391a Added revalidation scheme to NoteData's all_tracks_iterator so that it can be made valid again after the NoteData is transformed by something adding or removing steps. This fixes the crash on courses that use transform mods on the second song. ITG2's Getting Started is an example. 2014-07-23 05:34:23 -06:00
AJ Kelly 020b3916e8 Merge pull request #233 from sigatrev/StringToDifficulty
add OldStyleStringToDifficulty method
2014-07-22 17:54:36 -05:00
sigatrev 7622c7d423 add OldStyleStringToDifficulty method
because SM recognizes them in .sm files.
2014-07-22 17:39:55 -05:00
sigatrev 49c8846cc0 SavePreferences
for custom option screens.
2014-07-22 16:52:42 -05:00
Kyzentun c3fb210291 Created GameLoop::ChangeGame analogous to GameLoop::ChangeTheme. Changed ChangeTheme to use the AfterThemeChangeScreen metric instead of a passed in screen name from the theme being changed away from. ChangeGame uses the AfterGameChangeScreen and AfterGameAndThemeChangeScreen metrics to pick the screen to load after the change. New metrics are optional and default to InitialScreen. Changed ScreenManager::ThemeChanged to not duplicate the code in ReloadOverlayScreens. Fixed ScreenManager::IsScreenNameValid to check with HasMetric before using GetMetric. Changed game ConfOption logic to set the preference and work in a similar way to the theme ConfOption. Added THEME:SetTheme lua function. 2014-07-20 20:59:12 -06:00
Kyzentun 35ce025a1c Merge branch 'SetGame' of https://github.com/sigatrev/stepmania into ChangeGame 2014-07-20 02:12:39 -06:00
Kyzentun 69b5f1ae61 Fixed two typos. 2014-07-19 16:05:16 -06:00
Kyzentun 4c97ff64a0 Changed CheckEnum to use lua_isnoneornil so that enum args can be made properly optional. Changed PlayMusicPart to allow nil for optional args so optional args would be independent. 2014-07-19 15:20:02 -06:00
sigatrev f87c9f83b4 add SOUND:IsTimingDelayed method and fixed SOUND:PlayMusicPart
PlayMusicPart does not immediately start the new music. IsTimingDelayed
will return true until the new music has started.

The "applyRate" argument of PlayMusicPart was being applied to the
"align_beat" property. Added an additional argument to for "align_beat"
and made "applyRate" work properly.
2014-07-19 15:03:54 -05:00
Kyzentun 0f607df55e Changed NoteSkinManager::LoadActor to always return a Sprite on failure because some elements must be a sprite. 2014-07-19 10:11:14 -06:00
kyzentun 020fb06930 Merge pull request #218 from kyzentun/ErrorReporting
Better Lua Error Reporting
2014-07-18 21:52:03 -06:00
Kyzentun a2e6d186e3 Created Def.LogDisplay for displaying messages in a log. Changed error reporting layer to use Def.LogDisplay. Changed engine error reporting to not clip errors to a single line. 2014-07-18 16:29:46 -06:00
Kyzentun 8a65dfaefa Tested and fixed error reporting for NoteSkinManager. Changed Sprite::Sprite() to load the default texture. 2014-07-16 02:03:06 -06:00
freem dfd7b11412 [ScreenSystemLayer] restore "Not Present" text in CoinMode_Home
(also gave a possible answer to the comment added during the removal of pay mode)
2014-07-15 20:39:01 -05:00
Kyzentun 0f72d7cc6b Changed NoteSkinManager to use new error reporting and avoid crashing. Fixed DoChangeTheme to switch to the InitialScreen if the screen doesn't exist in the theme being changed to. Fixed error reporting in MeterDisplay. 2014-07-15 13:28:06 -06:00
Kyzentun 273b76d3c7 ActorUtil::ResolvePath updated for error reporting. Changed BitmapText to work with either a font name or a path. ThemeManager::GetPathInfoRaw fixed to use correct error dialog. ThemeManager::GetPathInfo fixed to report correct error for missing theme elements. 2014-07-14 18:02:28 -06:00
Kyzentun 6cf23c4dc3 Changed many parts of GameCommand to improve error reporting. Fixed GameCommand setpref to not set when loading the command. Minor fix to ScreenOptionsExample.ini to explain that SongInCurrentSongGroup is unusable. CommonMetrics, CourseContentsList, HoldJudgent, OptionRowHandler all have minor changes to fix crashes on malformed theme data. 2014-07-14 15:41:04 -06:00
Kyzentun fb1a251b7a Changed many places that used RageException to use ReportScriptError instead. Wrote ScreenOptionsExample.ini as documentation example for the OptionRow system. Rewrote gamecommands.txt to include all GameCommands. Fixed Commands::GetOriginalCommandString to insert the semicolons that separated the original commands. Changed nonsensical boolean |= true statements in GameCommand.cpp to just use =. Added protection to ReportScriptError to keep it from recursing through itself when an error occurs in error reporting. Added UseAbort option to ReportScriptError for places that want to use an AbortRetryIgnore dialog to query the user. Added ScriptErrorMessage for places that need to handle the warning/dialog part separately. Added logging flag to MESSAGEMAN so that all messages broadcast can be logged when desired. Changed OptionRowHandler::LoadInternal to return a boolean success value as part of error handling. 2014-07-12 14:59:10 -06:00
sigatrev 08f3864191 SetGame method
Added SetGame method to GameManager.

Altered Stepmania::ChangeCurrentGame() to allow a second input,
selecting which theme will be loaded after game is changed.
2014-07-12 09:30:32 -05:00
Kyzentun 63311ab62f Moved error reporting to ScreenSystemLayer error.lua. ScreenSystemLayer overlay/default.lua restored to previous. Error messages are now broadcast with the ScriptError message instead of SystemMessage. Added show/hide error messages toggle and clear error messages to debug menu. Nuked ScreenConsoleOverlay for being unfinished and duplicating ScreenSystemLayer. Changed Actor:tween and Tween::CreateFromStack to use ReportScriptError on invalid tween params. Changed some OptionRowList things to use ReportScriptError on invalid metrics. 2014-07-08 20:01:33 -06:00
Kyzentun aa564628c5 Changed InputFilter to not assert on unrecognized input devices or buttons. 2014-07-08 17:24:09 -06:00
freem 995a9c6d37 add pkgingo's (Win32) Minimaid driver.
* new makefile config option "HAVE_MINIMAID"
* update all Visual Studio projects
2014-07-08 16:51:11 -05:00
Kyzentun bee284d0c7 Rewrote ScreenSystemOverlay overlay/default.lua to be able to display multiple messages. Added Reload Overlay Screens option to debug menu. 2014-07-08 01:02:36 -06:00
Kyzentun 026f968fa4 Changed many uses of Dialog::OK and LOG->Warn to use ReportScriptError. 2014-07-07 00:39:27 -06:00
Kyzentun ff1392cdba Made Screen not go to next screen if the screen name is empty. 2014-07-05 14:14:23 -06:00
Kyzentun a7a98a690e Replaced every use of lua_call with RunScriptOnStack. Modified RunScriptOnStack to report an error to log and system message using a passed in context string. Modified every use of RunScriptOnStack to avoid crashing so that the reported error can be seen. 2014-07-05 01:34:05 -06:00
Kyzentun e9220c56b7 Added Actor:GetDestX/Y/Z to Lua API. 2014-07-04 02:03:05 -06:00
kyzentun 3c028c2321 Merge pull request #206 from kyzentun/InputCallbacks
This seems solid in my testing, I've converted Consensual to use it instead of CodeMessageCommand.
2014-07-03 23:15:03 -06:00