Commit Graph
238 Commits
Author SHA1 Message Date
Glenn Maynard 02197dab9c like Player, split NoteField loading into Load and Init, with Init having the expensive part, which we do only once 2005-03-18 04:43:59 +00:00
Glenn Maynard b6b9b11b0f don't bother unloading "unused" note skins; now we just load all the note skins we'll need in advance for a whole round 2005-03-18 04:13:19 +00:00
Glenn Maynard 3c45bca547 fix freeze duration rendering 2005-02-20 01:18:03 +00:00
Glenn Maynard d1fbf3f1f5 Only iterate over the section of a hold note that's on screen. Fixes slowness
with extremely long hold notes; now, even if a hold note has a
MAX_NOTE_ROW duration (which would be a bug), we shouldn't slow down.
2005-02-07 21:00:21 +00:00
Chris Danford 4223e09cc8 GetPathTo -> GetPath 2005-02-06 03:32:53 +00:00
Glenn Maynard b1467a84be have DrawHold take a TapNote 2005-01-25 05:45:51 +00:00
Glenn Maynard bb7482e722 evil big commit (sorry):
Remove m_HoldNote array entirely.  Remove 2sAnd3s.  Store hold note
durations in the hold head.  hold_tail only still exists when InsertHoldTails
is used, to make SM parsing a little easier (may go away).  Add helpers
for iterating over ranges while including or excluding adjacent and overlapping
hold notes.  Range operations are now [start,end) instead of [start,end].
(probably more details coming to sm-dev soon)
2005-01-25 05:02:35 +00:00
Glenn Maynard 52731adc29 NoteField::m_fBeginMarker, m_fEndMarker -> m_iBeginMarker, m_iEndMarker
go back to storing BPM as a float, until I'm sure it won't cause precision
problems
2005-01-23 23:17:12 +00:00
Glenn Maynard 3634c07656 Represent TimingData values (except for "seconds") in fixed-point.
Maybe we should stop calling note indexes "rows" and "indexes", and just
call them "beats"; if they're stored as an integer, they're in fixed-point.  Things
like "note rows per second" are a lot less intuitive than just calling them "beats
per second".
2005-01-23 21:55:01 +00:00
Glenn Maynard 18e32dbda4 don't lose HoldNoteResult when converting to/from 2sAnd3s 2005-01-23 17:17:24 +00:00
Glenn Maynard 8e564b0def Avoid checking for bHoldNoteBeginsOnThisBeat if the note skin doesn't
really need it.
2005-01-22 05:00:33 +00:00
Glenn Maynard 754bce5c98 optimize rendering iteration 2005-01-22 03:11:29 +00:00
Glenn Maynard 032ddf0e08 Don't hold a redundant copy of the NoteData in NoteField. NoteField is
now just a renderer for NoteData.  This means we don't have to carefully
apply all changes to NoteData to NoteField.
2005-01-22 02:50:45 +00:00
Glenn Maynard c321bbe196 start merging NoteDataWithScoring and NoteField per-hold and per-tap
data into TapNote and HoldNote.  This reduces lookup costs significantly.
It's a bit simpler, though I'm not entirely happy with the resulting encapsulation ...
2005-01-22 01:37:32 +00:00
Glenn Maynard 874fe6298c don't reload note skin when entering play mode in the editor (for real) 2005-01-15 03:33:55 +00:00
Glenn Maynard 4478914862 don't reload note skin when entering play mode in the editor 2005-01-15 03:26:38 +00:00
Glenn Maynard 894592a56e cleanup 2005-01-15 02:12:34 +00:00
Glenn Maynard 0dfdaee605 remove some more old experimental stuff 2005-01-15 02:01:26 +00:00
Glenn Maynard f8b90e0bcf remove some old experimental stuff 2005-01-15 01:38:42 +00:00
Chris Danford f840c014a9 Move some player-specific data out of the bloated GameState class.
Have gameplay objects hold a PlayerState pointer instead of a PlayerNumber and indexing back into GameState.
This will simplify off-screen players (e.g. CPU ghosts, network replicated human players, >2 players using one NoteField)
2004-12-20 06:25:59 +00:00
Glenn Maynard 294ddd9100 fix unnecessary drawing 2004-12-11 12:58:34 +00:00
Glenn Maynard bd2bd7e2bf real arrow visibility fix
fix numbers not actually being random
2004-12-11 12:31:17 +00:00
Glenn Maynard d9843f67f1 arrow visibility fix 2004-12-11 12:11:36 +00:00
Glenn Maynard 55fc410ac1 simplify 2004-10-26 18:35:36 +00:00
Glenn Maynard 20a278fb92 optimize 2004-10-26 18:34:52 +00:00
Chris Danford ce4780559f froundf -> Quantize 2004-10-24 17:44:51 +00:00
Chris Danford 3ac1dba044 simplify TapAttack storage:
store attack info in TapNote
  in the SMNoteData string, store the attack params inline (like with keysounds)
play keysounds when hit
  still doesn't play keysounds on a miss
  still doesn't play autoKeysounds
2004-10-23 23:41:49 +00:00
Chris Danford 09193d9e4b cleanup:
use references when passing NoteData
  Have player own a NoteDataWithScoring, not derive from it
2004-10-23 17:43:49 +00:00
Chris Danford 03fbb915f3 remove VC6 scoping hacks 2004-09-21 07:53:39 +00:00
Chris Danford 807d892f4f allow theme to specify logical screen dimensions 2004-09-21 06:07:12 +00:00
Chris Danford d2a54cca31 make TapNote a struct. Over time, more properties will move from the enums and into bit flags. 2004-09-12 05:56:24 +00:00
Steve Checkoway da0553609a Is the right thing to do here, or should it be rounded? 2004-08-29 10:00:27 +00:00
Chris Danford 5430ecb232 rename: Converge -> Centered 2004-08-29 07:12:37 +00:00
Chris Danford c11c9283cd fix popping in converge + boomerang 2004-08-29 05:56:51 +00:00
Glenn Maynard 08886fdd00 Actors used by NoteDisplay don't have persistent state; they're completely
re-configured for each arrow/hold part.  Cache each object, so we don't
waste memory with duplicate actors; multiplied by NOTE_COLOR_IMAGES
for each player, this adds up quite a bit.
2004-08-21 00:34:24 +00:00
Glenn Maynard bb698efc24 vectorize NoteDisplayCols 2004-07-27 04:34:06 +00:00
Glenn Maynard ab9cac2642 per-judgement step commands 2004-07-02 20:08:17 +00:00
Chris Danford 5544445ad0 name cleanup: StyleDef -> Style 2004-06-28 07:26:00 +00:00
Steve Checkoway a613d4d9fa s/RAGE_ASSERT/ASSERT/ 2004-06-16 00:38:31 +00:00
Glenn Maynard 30a9bf3292 license update 2004-06-08 00:08:04 +00:00
Chris Danford 0ec2a536d9 TapSteps -> TapNotes 2004-05-24 04:17:19 +00:00
Chris Danford 4bb777232d name cleanup: "pNotes" -> "pSteps" 2004-05-24 03:41:39 +00:00
Glenn Maynard 9c1a5f6957 encapsulate hold results in HoldNoteResult (HoldNoteScore + life)
instead of moving HoldNote::iStartRow forward while a hold note is
held, set HoldNoteResult::iLastHeldRow
fixes hold heads cycling through all note colors while held (wasn't very
visible due to the hold ghost) and GetSuccessfulHands bugs
2004-05-07 04:57:29 +00:00
Glenn Maynard d4352ed68b simplify 2004-05-01 06:26:57 +00:00
Glenn Maynard efc61b33d6 simplify RangeOverlaps
add ContainedByRange
2004-04-29 00:33:09 +00:00
Glenn Maynard 3b541425e9 optimize: reduce superfluous GetHoldNoteScore, GetHoldNoteLife, m_HeldHoldNotes[],
m_ActiveHoldNotes[] calls
2004-04-15 01:31:28 +00:00
Steve Checkoway 20a8bab45c Clean up includes. 2004-04-05 05:22:32 +00:00
Chris Danford 2929bacb08 show per-diffculty award on Eval screen every time it's received (not just the first time)
clean up ScreenEval PR and MR graphics
clean up Actor shadow parameters
2004-03-20 02:59:08 +00:00
Chris Danford 590cf4f690 Let NoteSkin manager look for BGAnimation directories 2004-03-01 05:58:19 +00:00
Chris Danford 9c7d8a60c2 update comments 2004-02-04 07:58:02 +00:00