Commit Graph
68 Commits
Author SHA1 Message Date
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
sigatrev 994b972d08 Prevent 2 AFT related crashes
Attempting to create a texture of 0 size or a texture with a name that
is already in use would crash SM.
2015-03-21 00:34:30 -05:00
sigatrev c5451c98d5 Update AFT examples
Added a note to example 3 specifying that it was demonstrating the
"float" property.

Added information about functionality I only just realized existed: the
ability to draw outside of the screen's draw cycle.
2015-03-19 19:20:39 -05:00
sigatrev 3af895b1bf AFT examples
because it seem like I'm the only one who knows what these things do.
2015-03-17 21:46:22 -05:00
sigatrev 45a0952a3b Prevent crash when AFT draws an AFT
by remember the previous render target.
2015-03-17 21:41:31 -05:00
sigatrev cc5c05a4f1 Fix AFT DepthBuffer 2015-03-17 21:37:26 -05:00
sigatrev ec23dcb503 fix major typo
oops...
2014-09-06 15:40:46 -05:00
sigatrev e60ac1395d expose tap notes for judgment message
allow themes access to as much information as possible on judgments
2014-09-05 22:30:33 -05:00
sigatrev 0bc0cc8a46 revert ActorScroller "loop" behavior and add new "wrap" parameter to wrap scrollers 2014-08-25 22:19:17 -05:00
sigatrev 02922aa5c0 fix ActorFrame diffusing and glowing children
When an ActorFrame's parent has a diffuse or glow, the ActorFrame uses
the static tempState in Actor::PreDraw(); When the ActorFrame draw's
it's children, those children also use tempState because their parent
has a diffuse( making their internalDiffuse not 1,1,1,1 ). If any child
is diffused it'll will change tempState, which will affect the
internalDiffuse given to the next child, and so on.

By determining the diffuse and glow to be passed to the children before
drawing any of them, any changes to tempState will not affect the
diffuse of subsequent children.
2014-08-16 22:51:34 -05:00
sigatrev d8b86fa3c5 make internal diffuse apply to bmt attributes
diffuse from BitmapText attributes were not receiving internal diffuse
from their parent ActorFrames. This change waits until after the draw
cycle to reset the internal diffuse and glow, so any color applications
separate from generic diffuse can use the internal diffuse when desired.
2014-08-16 16:38:26 -05:00
sigatrev 80447c3654 Allow Update and Draw functions to be turned off
allow nil to be passed as an argument to SetUpdateFunction and SetDrawFunction to turn off said functions.
2014-08-16 10:55:14 -05:00
sigatrev 81080ce9ce Add SetCurrentPlayMode and SetCurrentStyle methods
because there needs to be a way other than using antiquated GameCommands
2014-08-13 22:04:54 -05:00
sigatrev dabf62b055 fix ScreenGameplaySyncMachine crash
was not setting steps to null, caused access violations
2014-08-07 17:46:20 -05:00
sigatrev 3478bc7650 added GetStylesForGame method 2014-08-02 18:09:52 -05:00
sigatrevandJonathan Payne 9e0a42680a fix ActorScroller wrapping
looping actor scrollers would never reach destination items with number
higher than the number of items.
2014-08-02 00:38:50 -07:00
sigatrevandJonathan Payne 82cb4a198d 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-08-02 00:38:48 -07:00
sigatrevandJonathan Payne 52c2801503 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-08-02 00:38:43 -07:00
sigatrevandJonathan Payne ada902140e add OldStyleStringToDifficulty method
because SM recognizes them in .sm files.
2014-08-02 00:38:35 -07:00
sigatrevandJonathan Payne e8e617e545 SavePreferences
for custom option screens.
2014-08-02 00:38:35 -07:00
sigatrevandJonathan Payne fe08728393 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-08-02 00:38:32 -07:00
sigatrevandJonathan Payne acf15aed53 SetGame lua docs 2014-08-02 00:38:23 -07:00
sigatrevandJonathan Payne ce2b729710 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-08-02 00:38:23 -07:00
sigatrev 6487261f32 maintain music rate speed adjust after music has finished
Keeps things like BGA effect clocks consistent when music stops.
2014-08-01 23:45:21 -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
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
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
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
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
sigatrev bc1cb0c0ae SetGame lua docs 2014-07-12 10:32:48 -05: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
sigatrev 466718e016 created ArrowEffects namespace
and exposed all arrow effects functions. This can allow themed elements
to move with columns during gameplay, such as column specific judgments,
flashes, or whatever else.
2014-06-28 01:26:57 -05:00
sigatrev ebb41302e0 Better fix of float Dark
One that actually works
2014-06-15 00:43:59 -05:00
sigatrev 0c97a223ef Merge pull request #1 from wolfman2000/wolf-vs-amv-contribution
Set up ActorMultiVertex for other VS projects.
2014-06-14 23:56:07 -05:00
sigatrev 477f987ed8 Fix dark float
Without applying internal diffuse to the receptors, dark percentages
under 100 were doing nothing.
2014-06-14 23:38:54 -05:00
sigatrev dcf141c99e AVM in VS2010 projects 2014-06-14 23:18:09 -05:00
sigatrev 8fc5ae2cd4 fix GAMESTATE:SetCurrentSteps
assert was causing crash if steps were set to nil/null.
2014-06-01 19:23:56 -05:00
sigatrev a436e04310 fix judgment message param Tracks for holds 2014-06-01 19:22:24 -05:00
sigatrev 11ee34c1c8 oops
not sure how this didn't get included in that commit
2014-05-06 18:01:19 -05:00
sigatrev d608953da7 added "Tracks" param to judgment message
which contains a list of all tracks included in the judgment
2014-05-06 17:56:51 -05:00
sigatrev bfbbd27485 Stop player from updating NoteField twice
Player was updating notefield in ActorFrame::Update and again in
m_pNoteField->Update. This should handle it better.
2014-05-05 18:18:05 -05:00
sigatrev 0c62e5fb9e Allow NoteField Board to be an AutoActor
NoteField board was already an AutoActor, but code was requiring it to
be a derivative of Sprite. Allow any ActorClass to be used.

NoteField could already be accessed from below, using GetParent() on the
NoteField Board. For ease of allowing the board to be used for player
specific purposes, make notefield an actual child of Player, so the
Board can be accessed per player from the top down.
2014-05-02 17:01:38 -05:00
sigatrev 8d5a22a2e1 added NOTESKIN:GetMetric() method
none of the other type specific methods can call the "FallbackNoteSkin"
metric.
2014-05-01 19:03:38 -05:00
sigatrev f1fc291989 run profile's CustomLoadFunction when changing theme or assigning a local profile to a player
This should make the custom load functions a lot more useful.
2014-04-30 21:30:30 -05:00
sigatrev 3a4760af50 added methods to Style
GetColumnInfo and GetColumnDrawOrder
2014-04-25 19:39:11 -05:00
sigatrev 9da1ae3248 remove FinishStage from Net screens
FinishStage is handled by ScreenGameplay now.
2014-04-23 22:47:47 -05:00
sigatrev c4f7aab9a1 Attempted fix of Tick Holds
NoteDataUtil::GetTotalHoldTicks() was not counting the last tick of
holds which ended on the last row of the song. Extended the range to
include the last row.

NoteDataUtil::GetTotalHoldTicks() was counting number of rows held, when
it should only count 1 regardless of number( at least to mimic pump )

Player::CrossedRows() was assuming a constant tick rate over the crossed
rows, leading to potentially inaccurate tick counts.

Pump holds were counting "HoldNote_Held" due to capitalization in the
metrics. Fixed metrics and made "IsGame" function case insensitive.
2014-04-23 21:45:37 -05:00
sigatrev 5e517e1de1 fix for AutoPlay increase combo with "RollBodyIncreasesCombo"
per issue #125
2014-04-23 16:10:15 -05:00
sigatrev 94053c2dfe fix SongOptions fail type to not change fail type preference
per issue #80. Problem came from commit
231ae7cb32 - May 27, 2011
2014-04-23 15:52:26 -05:00
sigatrev a3b38117b5 make early judgments broadcast when judgment is triggered
judgments triggered early were not broadcasting the judgment message
until their row crossed
2014-04-20 14:27:43 -05:00
sigatrev 7e5b651f1a removed SetCurrentSteps double-broadcast 2014-04-20 11:26:15 -05:00
sigatrev 55a5551058 added StopMusic method 2014-04-18 18:59:57 -05:00
sigatrev 25ddd69208 added GetHasteRate method, made GiveUpSeconds a metric
without haste rate, it's impossible to display an accurate BPM. Give up
time should be controllable.
2014-04-15 12:27:54 -05:00
sigatrev 99ba67acc7 spaces to tabs 2014-04-15 12:09:03 -05:00
sigatrev 2f9b8cda12 added AMV themer docs 2014-04-14 22:06:02 -05:00
sigatrev 012b263ea1 lua docs for AMV 2014-04-14 21:53:56 -05:00
sigatrev 70c5209e76 added ActorMultiVertex
AMV is an actor which can have a variable number of vertices that can
each be given their own pos, color, and coords. They can be drawn using
any of the RageSpriteVertex draw functions in RageDisplay.cpp. The
vertex properties can be tweened.
2014-04-14 21:29:19 -05:00
sigatrev b8e4cdddec StartTransitioningScreen
Exposes the StartTransitioningScreen function to lua. Great utility for
custom screens.
2014-04-02 18:35:23 -05:00
sigatrev 47531119e1 luadocs
added lua documentation
2014-04-02 18:20:44 -05:00
sigatrev d059118935 Save/LoadProfiles
ScreenProfileLoad and ScreenProfileSave do nothing except use their own
lua methods to run GameState functions. Those functions might as well be
available as GameState methods.
2014-04-02 18:09:21 -05:00
sigatrev 343511f4c3 HNS_Missed
Added an HNS type to handle holds which are never initialized due to
missed taps. This fixes a long standing issue with
iCurPossibleDancePoints and allows themes to decide how to handled this
case.
2014-03-16 11:36:40 -05:00
sigatrev 1b1716ac7d Fix draw function
Actors with glow but no alpha are not drawn because. Adding glow to the
conditional.
2014-03-09 00:17:45 -06:00
sigatrev 411026191d Merge pull request #1 from sigatrev/HoldJudgments
merge mini hold jugment positions
2014-03-05 08:46:58 -06:00
sigatrev f6d44ae85b hold judgment positions with mini
they weren't scaled to handle the zoom.
2014-03-03 20:46:47 -06:00
sigatrev 43f9fd70ca added iTrack to mine judgment message
more information is better.
2014-03-03 20:37:13 -06:00
sigatrev a038300dba added lua function for GetTimeSinceStart
Allows checking time within a single update. This can be used to halt
processes which would otherwise cause lag.
2014-03-03 20:27:46 -06:00
sigatrev 0ab15ed053 TextureTranslate method
Allow themes to duplicate the way noteskins are handled.
2014-02-20 21:17:10 -06:00