Kyzentun
493d0f8214
Fixed CreateMethodTable to create a new table even when something of that name exists, so that the previously existing one that might have been modified by a theme is removed when changing themes.
2014-08-18 11:26:05 -06:00
Kyzentun
eb7ac082ae
Report error on fetching empty string metric instead of crashing.
2014-08-11 15:56:41 -06:00
Kyzentun
a3e6cdbfa2
Added One_Screen_Example_Theme as a minimal example.
2014-08-10 16:17:03 -06:00
Kyzentun
c368fc1b47
Didn't realize RollingNumbers was supposed to have negative velocity.
2014-08-08 13:55:51 -06:00
Kyzentun
bdb2b373bc
Added NoteSkinManager::GetDefaultNoteSkinName so that PlayerOptions can avoid clearing the noteskin when the clearall mod is used.
2014-08-07 18:36:42 -06:00
Kyzentun
75a1defea0
ifdef'ed out AddATIToList and RemoveATIFromList on WIN32 because they cause mapconv to crash.
2014-08-05 11:52:31 -06:00
Kyzentun
ef955bc4d4
A couple actor docs.
2014-08-04 20:27:49 -06:00
Kyzentun
d1a84f979d
Changed GradeDisplay::SetGrade to print errors instead of segfaulting on unloaded actors.
2014-08-04 20:08:56 -06:00
Kyzentun
9244b0f1d8
Updated actordef.txt.
2014-08-04 10:59:38 -06:00
Kyzentun
f3f7af7045
Changed RollingNumbers to not set NAN velocity.
2014-08-03 22:38:01 -06:00
Kyzentun
bffeda6dc0
Pretend I didn't forget the +1.
2014-08-02 19:44:25 -06:00
Kyzentun
f58f111cfd
Changed GetStylesForGame to not traverse the list of styles twice.
2014-08-02 19:34:39 -06:00
Kyzentun
e907454943
Merge branch 'GetStylesForGame' of https://github.com/sigatrev/stepmania
2014-08-02 17:17:17 -06:00
Kyzentun
f0d6bce62a
Disabled AddATIToList on Windows because it makes mapconv crash.
2014-08-01 11:16:17 -06:00
Kyzentun
392ac045eb
Added MusicWheel:GetSelectedSection.
2014-07-31 14:57:00 -06:00
Kyzentun
18b2d73bb1
Fixed invalid note type trace to use correct escape sequence.
2014-07-31 11:25:05 -06: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
Kyzentun
ee53b9e601
Adjusted text scaling that convert_text_to_indented_lines uses to make it adjust for resolution differences better.
2014-07-27 21:38:43 -06:00
Kyzentun
a5db63657c
Changed GameCommand screen validation to allow OptionsList to work again.
2014-07-27 01:47:30 -06: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
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
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
Kyzentun
84766a7cff
Changed LogDisplay to use the full message for IgnoreIdentical.
2014-07-23 00:09:04 -06:00
Kyzentun
3cef425d63
Added IgnoreIdentical param to LogDisplay for use in ignoring identical error messages.
2014-07-22 17:51:40 -06: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
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
22662a3b04
Changed ArbitrarySpeedMods to use a large increment that is not forced to be a multiple of the smaller increment.
2014-07-18 23:54:25 -06:00
kyzentun
020fb06930
Merge pull request #218 from kyzentun/ErrorReporting
...
Better Lua Error Reporting
2014-07-18 21:52:03 -06:00
Kyzentun
cb168e29aa
Added Common Error font for use by error reporting so that themes that replace Common Normal won't have a problem.
2014-07-18 18:04:51 -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
ddf4ba3a22
Readded increment_version.pl because it's actually needed for building on OSX.
2014-07-17 03:05:50 -06:00
kyzentun
135d1df197
Merge pull request #229 from dguzek/mkrelease
...
new mkrelease script for OS X
2014-07-16 03:08:09 -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
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
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
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
Kyzentun
dfd0a5e897
Added semicolon that moshekaplan forgot.
2014-07-03 11:47:06 -06:00
Kyzentun
a117b38f38
Merge branch 'patch-3' of https://github.com/moshekaplan/stepmania
2014-07-03 11:24:18 -06:00
Kyzentun
0d060a0e5c
Merge branch 'patch-2' of https://github.com/moshekaplan/stepmania
2014-07-03 11:23:19 -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
9a9da05cfb
Added doc explaining what a theme needs to support heart rate calorie calculation.
2014-07-01 02:21:24 -06:00
Kyzentun
947479f154
Added heart rate based calorie counting method to Profile as an alternative to step count based calorie counting. Removed unused IsWeightSet from Profile::SaveGeneratlDataCreateNode.
2014-07-01 01:36:00 -06:00
Kyzentun
e25995267c
Fixed invalid LineNames in ScreenOptionsExtended in _fallback metrics.
2014-06-29 12:43:10 -06:00
Kyzentun
0cd1584b01
Documentation from Matt for ArrowEffects namespace.
2014-06-29 11:30:11 -06:00
Kyzentun
6cb9dec854
Changed SetCompatibleStyle to only change when incompatible.
2014-06-27 21:11:34 -06:00
Kyzentun
afc090ca73
Changed GAMESTATE:SetCurrentSteps and GAMESTATE:SetCurrentTrail to attempt to set a compatible style if AutoSetStyle is true.
2014-06-27 20:20:50 -06:00
Kyzentun
b08d766657
Fixed fake conflict in ThemeAndGamePrefs.lua.
2014-06-26 23:57:40 -06:00
kyzentun
c29c9c0cee
Merge pull request #201 from kyzentun/FixSetFail
...
Fix global fail setting overriding song options.
2014-06-26 22:25:21 -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
Kyzentun
dcf819d297
Moved all sanity checking for OptionRowHandlerLua to a separate function so that a malformed row does not crash StepMania, and instead prints an error to the log file, and creates a row that does nothing. Added AllowAnything arg to CheckEnum.
2014-06-25 12:08:57 -06:00
kyzentun
2ee02c442f
Merge pull request #197 from kyzentun/SaveScreenshot
...
SaveScreenshot for Lua
2014-06-23 12:51:55 -06:00
Kyzentun
d472d28490
Fixed accidental old name for ArbitrarySpeedMods in metrics for edit mode.
2014-06-23 00:25:18 -06:00
Kyzentun
de8799ebdc
Renamed ArbSpeedMods to ArbitrarySpeedMods to avoid the wrath of the OpenGL Architecture Review Board. Added option rows for controlling the size of the increments used by ArbitrarySpeedMods. Simplified logic in ASM and added rounding to avoid excessive precision. Removed pointless setmetatable calls from various lua option rows.
2014-06-20 22:48:00 -06:00
Kyzentun
3a788651e5
Fixed bug that caused global fail setting to override setting the fail type from song options. Added GAMESTATE:SetFailTypeExplicitlySet so that a theme with a custom song options screen can protect its fail setting from being overridden the same way the engine ScreenSongOptions does.
2014-06-20 13:54:56 -06:00
Kyzentun
c02a17f393
Revised documentation example for OptionRowHandlerLua to make it slightly more clear.
2014-06-19 21:02:35 -06:00
Kyzentun
045e9edcdd
Added ArbSpeedMods function for a better way of setting speed modifiers. Added NotifyHandlerOfSelection to OptionRowHandler to support this. Changed exceptions thrown by OptionRowHandlerLua into log warnings because crashing out is not helpful to themers. Fixed SetEnabledForPlayers in OptionRowHandlerLua to correctly read the PlayerNumber enum. Removed silly git add Docs/Themerdocs/Examples/OptionRowHandlerLua.lua and second check for ExportOnChange.
2014-06-19 06:41:18 -06:00
Kyzentun
b756386fda
Changed GetYOffset to make CMods an MMods compensate for music rate.
2014-06-17 03:14:17 -06:00
Kyzentun
ba78c38c8b
Disabled pad codes that change modifiers in dance game mode.
2014-06-17 01:22:30 -06:00
Kyzentun
f8e1e28286
Exposed StepMania::SaveScreenshot to Lua. Added prefix and suffix args for setting the screenshot name and removed the unused index arg. Added GetHighScore to PlayerStageStats and AddScreenshot to Profile so that Lua can imitate ScreenEvaluation's code for adding a screenshot to the profile. Removed hungarian notation from variable names in StepMania::SaveScreenshot.
2014-06-17 00:29:09 -06:00
kyzentun
f7b808ca29
Merge pull request #195 from kyzentun/AMV_in_projects
...
AMV in projects
2014-06-17 00:18:07 -06:00
Kyzentun
e4f1682964
ASSERT broken into two lines, as per shakesoda's suggestion.
2014-06-16 23:05:31 -06:00
Kyzentun
e8a57bd927
Merge branch 'SetCurrentSteps' of https://github.com/sigatrev/stepmania
2014-06-16 23:04:41 -06:00
Kyzentun
7e41d88feb
Fixed fake conflict in Profile.cpp.
2014-06-16 22:57:33 -06:00
kyzentun
708784889a
Merge pull request #163 from kyzentun/tweenable_mmods
...
Tweening for mmods.
2014-06-16 22:51:27 -06:00
kyzentun
3d2dd9b172
Merge pull request #155 from kyzentun/negative_haste
...
Negative haste and themable haste
2014-06-16 22:50:19 -06:00
Kyzentun
955e6ddc7d
Added AMV to src/Makefile.am
2014-06-15 13:21:13 -06:00
Kyzentun
9485a7c7c3
Merge branch 'VSprojects' of https://github.com/sigatrev/stepmania into AMV_in_projects
2014-06-15 13:10:27 -06:00
Kyzentun
6db1199db5
Added PROFILE:GetHighScoreListIfExists for limiting memory footprint on searches. Added PROFILE:GetAllUsedHighScoreNames to provide a non-brute force way for obtaining a list of names. Added HighScoreList:GetHighestScoreOfName so the C++ side could do the iteration. Added HighScoreList:GetRankOfName for the same reason.
2014-05-13 13:34:38 -06:00
Kyzentun
c8476738f5
Exposed GAMESTATE:StoreRankingName and Profile:SetLastUsedHighScoreName to Lua. StoreRankingName no longer forces uppercase.
2014-05-12 22:01:22 -06:00
Kyzentun
c544beaba0
Documentation for THEME:GetMetric/StringNamesInGroup.
2014-05-08 04:05:21 -06:00
Kyzentun
afc235e17b
Added THEME:GetMetricNamesInGroup and THEME:GetStringNamesInGroup.
2014-05-08 03:59:08 -06:00
Kyzentun
2b9982f505
Added Mmod compensation to ArrowEffects::GetYOffset.
2014-05-08 03:07:02 -06:00
Kyzentun
6eae1c01e4
Had wrong documentation for SongOptions:Haste.
2014-05-05 14:25:44 -06:00
Kyzentun
ec3e76277c
Added interface for controlling the behavior of the hasts system. Added support for negative haste. Moves haste rate calculations to UpdateHasteRate. GetHasteRate now just returns the calculated value. Added FLOAT_NO_SPEED_INTERFACE and FLOAT_TABLE_INTERFACE macros to OptionsBinding.h
2014-05-05 14:16:08 -06:00
Kyzentun
b10c04c7f3
Added documentation for a few undocumented API functions.
2014-05-04 11:49:35 -06:00
Kyzentun
782a66502e
Accidentally left OptionsBinding.h out of previous commit.
2014-05-03 19:36:59 -06:00
Kyzentun
0dfb131291
Created SongOptions Lua interface with a similar design to the PlayerOptions interface. Moved enums that were inside SongOptions out and made them Lua accessible. Removed sAutosyncType and associated things from AdjustSync.cpp because it was unused. Added DefaultNilArgs and FArgGTEZero to LuaBinding as helpers. Moved INTERFACE defines from PlayerOptions.cpp to OptionsBinding.h.
2014-05-03 19:27:32 -06:00
Kyzentun
b6b840187d
Made PlayerState:GetCurrentPlayerOptions safe to use. Added Docs/Themerdocs/modslevel.txt to explain what ModsLevel should be used by a theme using the new PlayerOptions interface.
2014-05-02 21:25:59 -06:00
Kyzentun
24f87d2e57
Fixed stack acciddent bug in PlayerOptions lua functions. Added skew and tilt mods to PlayerOptions::GetMods and FromOneModString for when the perspective isn't one of the old ones.
2014-05-02 16:45:49 -06:00
Kyzentun
b5d1cb8161
Updated ModsGroup enum in docs.
2014-05-01 23:46:17 -06:00
Kyzentun
c44a11ae40
Added FailType enum to docs.
2014-05-01 23:41:55 -06:00
Kyzentun
421a9be57b
Ripped out existing PlayerOptions Lua interface and replaced it wholesale. Removed PrefsManager's DefaultFailType enum. Moved PlayerOptions::FailType enum to GameConstantsAndTypes and made it Lua accessible. Changed ModsLevel enum to include ModsLevel_Current to make accessing that ModsLevel easier to access. Rearranged ModsGroup appropriately. Added non-const Get functions to ModsGroup. Removed PlayerOptions.m_bSetTiltOrSkew because it had no reason to exist. Moved 200.0f to the const CMOD_DEFAULT because it was being used in more than one place.
2014-05-01 23:23:20 -06:00