Commit Graph
300 Commits
Author SHA1 Message Date
Glenn Maynard 4df5f8c890 use a real UUID for the stage ID 2009-08-09 23:45:18 +00:00
Chris Danford 2401dc93b0 SaveProfile -> SavePlayerProfile 2009-08-08 02:48:12 +00:00
Chris Danford f4b1e3e72b broadcast CoinsChanged, removed InsertCoin broadcast later 2008-09-18 09:06:59 +00:00
Chris Danford 3711ae0380 award name cleanup 2008-08-20 05:56:11 +00:00
Chris Danford 46b5d2ae42 add EarnedExtraStage enum, make EarnedExtraStage work with TestInitialScreen, move TryExtra into lua 2008-08-20 01:50:07 +00:00
Chris Danford 20b11d27df add IsAnExtraStageAndSelectionLocked. add metircs MinDifficultyForExtra, LockExtraStageSelection 2008-06-12 04:30:51 +00:00
Glenn Maynard ba6a4c4feb experimental: AutoJoin, join players immediately (or as soon as possible) when enough coins are inserted 2008-05-27 20:51:18 +00:00
Chris Danford f1a92b173b add ClearStageModifiersIllegalForCourse 2008-05-20 21:42:08 +00:00
Mike Hawkins b3e11dcb94 Random attacks modifier 2008-05-16 04:00:13 +00:00
Chris Danford 4f126462a4 add shared Stage values (not per-player Stage values) to simplify StageDisplay 2008-03-29 15:13:52 +00:00
Chris Danford 5e87c2e81a karaoke prototype (disabled) 2008-03-12 23:17:39 +00:00
Chris Danford ad697be6a9 broadcast WorkoutGoalComplete 2007-10-28 00:02:44 +00:00
Chris Danford e48a3add69 add Get/SetNumMultiplayerNoteFields 2007-10-23 18:09:41 +00:00
Steve Checkoway a5b9861532 Encapsulate extra stage logic. The condition of HasEarnedExtraStage() remains true (if it was earned) after the call to FinishStage() until the next BeginStage().
I still don't completely like this because after FinishStage(), if an extra stage has been earned, it is immediately in that stage which is sort of strange for SEval. Even worse, if an extra stage was earned in the past but not for the current stage, then the stage doesn't change. (E.g., earn extra stage but not second extra stage, or earn second extra stage.) So once an extra stage has been earned, SEval will be called twice for the same stage. A per-player  m_iExtraStagesPlayed could be added to fix this, but it doesn't seem worth it.
2007-08-11 20:43:01 +00:00
Chris Danford 71492cd106 add PreferredStepsType, fix StepsType jumps when changing songs if multiple StepsTypes are shown 2007-05-15 19:32:39 +00:00
Glenn Maynard 8278b2e9a1 make FailType a PlayerOption instead of a SongOption; fixes
peculiarity that GameState::GetPlayerFailType can implement
fail modes per-player and nothing else can
2007-05-12 23:48:29 +00:00
Glenn Maynard 0a5c93d4e2 fix and bind EnoughCreditsToJoin 2007-05-08 01:49:45 +00:00
Glenn Maynard ea104d9a76 GameState::SaveProfile 2007-05-06 05:15:26 +00:00
Steve Checkoway 6072fb29cc Functions in singletons that depend on the singleton having been created should not be static. Removed uses of GAMESTATE inside GameState member functions. 2007-05-05 11:08:50 +00:00
Glenn Maynard 7c314952b2 better reset on unjoin 2007-04-27 21:14:50 +00:00
Glenn Maynard 74a17abe9b modified haste mechanics 2007-04-26 00:56:37 +00:00
Glenn Maynard 643cadbbe0 fix up DQ; CurStageStats changes didn't interact well with it 2007-04-25 20:00:18 +00:00
Glenn Maynard 9ed7cf25f3 move AllHumanHaveComboOf30OrMoreMisses into StageStats 2007-04-25 16:39:03 +00:00
Glenn Maynard 1f4889effe barrier not needed anymore 2007-04-25 16:37:05 +00:00
Glenn Maynard 713c95b2b0 Stage refactoring:
- m_iPlayerCurrentStageIndexForCurrentCredit is changed to m_iPlayerStageTokens,
   counting the number of stages left.  This can be incremented and decremented
   (as a bonus or penalty) with no weird side-effects; it is not used to determine
   whether the player is on an extra stage.  This is less brittle; it eliminates
   special cases to avoid incrementing the counter and skipping into an extra stage.
 - Stage tokens are subtracted for each song played, and a player is unjoined
   when he runs out.
 - Stage tokens are subtracted at the start of gameplay.  If the player cancels,
   they're "refunded".  This differs from before, where the stage was incremented
   at the end of gameplay.  This makes the stage token counter meaningful during
   gameplay; if this is done at the end, then it would be too high during gameplay.
 - IsFinalStage is gone.  If needed, use GetSmallestNumStagesLeftForAnyHumanPlayer.
 - Extra stages are awarded by adding a stage token and incrementing
   m_iAwardedExtraStages.  If m_iAwardedExtraStages is 1, the player is
   on his first extra stage; if 2, his second.
2007-04-25 03:50:17 +00:00
Glenn Maynard 9978102d25 remove unused 2007-04-25 01:17:50 +00:00
Glenn Maynard 95fb191fb4 allow loading profile without loading edits 2007-04-24 16:30:23 +00:00
Glenn Maynard 7de6bd605c revert IsStagePossible; not sure yet 2007-04-24 00:44:51 +00:00
Glenn Maynard 25796bd187 remove IsStagePossible 2007-04-23 23:42:27 +00:00
Glenn Maynard 1eb380ba2e Eliminate GameState::EndGame; games don't necessarily have distinct
endings.  Update the play timer periodically when we commit scores.
(This timer is a bit different, but reasonable.)
2007-04-19 13:59:38 +00:00
Glenn Maynard a8a4803ed8 working on explicit profile load/saves: do this in a screen, not implicitly
as part of other operations
separate profile loads/locks for each player
2007-04-17 22:27:25 +00:00
Glenn Maynard 6471f44235 split LoadCurrentSettingsFromProfile 2007-04-16 21:17:26 +00:00
Glenn Maynard 3f776c5bb5 ResetToDefaultPlayerOptions, ResetToDefaultSongOptions 2007-04-06 15:44:39 +00:00
Chris Danford edcfb9a990 Calculate stage based on the player with the highest current stage index. 2007-03-27 01:18:45 +00:00
Chris Danford 43ef38383d separate CurrentStageIndex into separate number per game and per player. This allowed for staggered join periods. 2007-03-25 09:37:14 +00:00
Glenn Maynard 14fbedd1b2 GetNumStagesForSongAndStyle -> GetNumStagesForSongAndStyleType 2007-03-17 23:05:34 +00:00
Chris Danford 32586f28e1 add IsStepsPlayable, make IsStepsTypePlayable take the number of stages left into account 2007-03-12 01:47:03 +00:00
Glenn Maynard 61c3a6244c add VisualDelaySeconds 2007-03-09 01:22:09 +00:00
Chris Danford f77d52699f lua binding for GetNumStagesForCurrentSongAndStepsOrCourse 2007-03-07 02:17:12 +00:00
Chris Danford 9061e2c1c1 move stage logic out of SongManager
allow selecting between multiple StepsTypes on ScreenSelectMusic (ala Pump's combined single/double list)
2007-02-23 21:13:45 +00:00
John Bauer aedcc9f208 Factor out a call to GameState::ResetOptions. Also, move the state that
keeps track of whether NoteSkin was changed or not into GameState.
2006-11-30 19:29:15 +00:00
Chris Danford 6b07fcaed5 add hammer-ons and pull-offs ("hopo") 2006-11-30 12:29:01 +00:00
John Bauer bf6da7d8b4 Reorder some includes. 2006-11-29 14:57:21 +00:00
Glenn Maynard 7ef6009567 Screen::JoinInput -> GameState::JoinInput 2006-11-21 19:57:58 +00:00
Glenn Maynard 70d2d0dbc7 PlayerNumber is a simple, regular data structure, and is depended on
by lower level things (eg. InputMapper).  However, concepts like
"joined players" and "human players" is a high-level, GAMESTATE
concept, and engine stuff shouldn't depend on that.  Move the
GameState-depending stuff into GameState.  Move
IsAnyPlayerUsingMemoryCard as well (and rename to HumanPlayer),
to fix MemoryCardManager dep.
2006-11-21 01:32:05 +00:00
Glenn Maynard 93e85f9125 remove unused 2006-11-09 07:44:31 +00:00
Glenn Maynard 43b7c4ac7d m_HealthState is confusing; it's updated from other stats, and then the
original stats as well as m_HealthState are used for control logic.
Simplify; remove AllAreFailing, and figure it out directly.
2006-11-09 06:10:19 +00:00
Glenn Maynard 2ce839e4eb Invalid 2006-10-07 04:25:28 +00:00
Glenn Maynard fcffe3c80f add SetCurrentStyle 2006-09-30 22:15:22 +00:00
Glenn Maynard 5e99a1c9e9 remove GameState::PlayerUsingBothSides 2006-09-30 02:57:05 +00:00