Commit Graph

32 Commits

Author SHA1 Message Date
Kyzentun 976f773f7c Merge pull request #486 from kyzentun/mute_actions
Toggle key for muting actions
2015-03-07 17:51:28 -07:00
Kyzentun 0318f07d2d Implement preview music properly as a new optional tag in the ssc file. Changed ScreenManager to emit an error instead of asserting if a screen attempts to use SetNewScreen inside an InitCommand. Changed decorations layer to be a proper child instead of stripping away the ActorFrame. 2015-03-04 01:31:02 -07:00
Kyzentun b293a8c073 Added debug key for toggling action sounds off. Touches every place that RageSound::Play is called, hope I didn't miss one. 2015-02-28 06:25:02 -07:00
Kyzentun 4f95bf08ad Function chaining for actors and singletons. 2014-12-01 22:31:30 -07:00
Kyzentun 9b08ab5b52 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-08-02 00:38:34 -07:00
Kyzentun a9056c20d1 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-08-02 00:38:26 -07:00
Kyzentun 4343a99ea9 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-08-02 00:38:25 -07:00
Kyzentun 5df80b6e0e 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-08-02 00:38:24 -07:00
Kyzentun 1f979fff5f Rewrote ScreenSystemOverlay overlay/default.lua to be able to display multiple messages. Added Reload Overlay Screens option to debug menu. 2014-08-02 00:38:19 -07: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
Kyzentun 63f1eea7ca Changed SCREENMAN:SetNewScreen and AddNewScreenToTop to emit an error for an invalid screen instead of crashing stepmania. 2014-07-01 22:40:00 -06:00
Kyzentun 27c6a54d82 Added AddInputCallback and RemoveInputCallback to Lua API for screen. ScreenManager now passes input to the lua side of each screen in addition to the engine side. 2014-06-26 21:33:54 -06:00
Ben "root" Anderson a040c4a586 1) SOMEONE can't spell "accessible" 2) Global commenting consistency 3) persistance -> persistence 2013-11-30 09:50:54 -06:00
Devin J. Pohly 4298f2542d Check MakeActor rvs for NULL 2013-11-02 04:11:30 -04:00
Devin J. Pohly feb919f0bf Revert memory leak commits
5f7001e: "Added a new branch"
01456ed: "Fixed a lot of memory leaks"
dac4493: "Fixed all remaining memory leaks that I could figure out"
0792db7: "Removed the smnew macro and the call to _CrtSetDbgFlag()"

Some of these caused destructor-time problems due to static initialization
order fiasco and related issues.  Notably, the program would no longer exit on
OSX and had to be killed.

There were probably legitimate fixes in here, but since these are monolithic
commits it's too much work to extract them now.  Let's reapply them
individually and in the forward direction.
2013-04-27 00:05:14 -04:00
Shenjoku 0792db752a Removed the smnew macro and the call to _CrtSetDbgFlag() to get ready for
merging with the main branch.
2013-04-19 20:34:11 -07:00
Shenjoku 01456ed0b9 Fixed a lot of memory leaks caused by static globals never getting
deleted and some other objects not getting deleted properly due to missing
destructors.
2013-04-18 21:17:57 -07:00
Shenjoku 5f7001ef0a Added a new branch that implements support for outputting all memory leaks to
the debug output for the Debug and FastDebug project configurations. This
requires replacing all instances of new with a macro, smnew, that defines a
special form of new which outputs file and line number information along with
the memory leak details. This makes finding memory leaks much easier since you
can just double-click the leak in the output window and it will take you to the
line that caused it.
2013-04-17 20:42:29 -07:00
Devin J. Pohly 2cf9262afc merge OverlayInput into Input. overlay screens can still intercept input if they want. 2013-01-12 23:19:44 -05:00
AJ Kelly d77765d5ba add optional ScreenMessage parameter to SCREENMAN:AddScreenToTop( screen, (ScreenMessage) ) 2012-01-08 01:17:21 -06:00
Jason Felds 10bd01f078 From shakesoda's fork: port PLAY_CRITICAL. 2011-07-27 19:03:33 -04:00
Jason Felds a085d0d1da Line endings...be normalized! 2011-03-17 01:47:30 -04:00
AJ Kelly ad75520446 revert change that disallowed reloading of fonts via F2 2011-03-15 15:08:21 -05:00
Jason Felds 9d13036e08 Add @briefs to the Luna classes.
Yeah...there was a lot. */
2011-02-19 12:26:18 -05:00
Jason Felds 1a1ff7d701 Give @briefs to all namespaces.
This will force recompilation of all files.
2011-02-19 12:09:03 -05:00
AJ Kelly f615c39879 [ScreenManager] Added ReloadOverlayScreens() Lua binding. 2011-01-11 00:48:38 -06:00
AJ Kelly a6cb5fecc6 add Shift+Ctrl+F2 shortcut for reloading overlay screens (and metrics) 2010-12-22 12:36:19 -06:00
AJ Kelly 0964d8dc9a SM5SVN 9419e1e: Only unload fonts if not used by the next screen. [shakesoda] 2010-12-21 13:26:09 -06:00
AJ Kelly 3b9a9a1a05 [ScreenManager] add AddNewScreenToTop Lua binding. 2010-08-07 17:14:32 -05:00
AJ Kelly 3254bfe804 Fix a crash that occured when changing themes that had differing numbers of song/course group colors. 2010-06-03 23:14:55 -05:00
AJ Kelly 3e51544930 Initial commit. 2010-01-26 21:00:30 -06:00
Devin J. Pohly 80057f53cd smsvn -> ssc-hg glue: rearrange directory structure 2013-06-10 15:38:43 -04:00