Chris Danford
1f483158f7
fix edit elements drawing way off screen in boomerang causing artifacts on some hardware
2005-04-19 03:56:00 +00:00
Chris Danford
6053783a4c
make EDIT_MODE less fragile by using switches
...
don't allow going past last beat in practice
2005-04-19 01:44:22 +00:00
Chris Danford
abac6af93b
store a current NoteSkin in NoteSkinManager so that NoteSkin elements can use NOTESKIN:GetPath()
2005-04-18 01:19:56 +00:00
Chris Danford
976e497de7
add EDIT_MODE_PRACTICE
2005-04-14 06:34:17 +00:00
Chris Danford
370daa9b68
fix long holds not visible in non-boomerang
2005-04-07 08:28:41 +00:00
Chris Danford
1e7d4001a8
fix long hold + boomerang artifacts: didn't draw if neither the head nor the tail were on-screen, tail bottom would be positioned above the head causing the hold to magically grow once the tail comes on screen
2005-04-07 06:41:02 +00:00
Glenn Maynard
f64a93bb21
fix off-by-one causing artifacts with Cx mods during stops
2005-04-06 08:09:27 +00:00
Chris Danford
9aa003041d
clip the area highlight rectangle
2005-03-30 04:27:13 +00:00
Chris Danford
7ca20486ef
use sin lookup table to fix terrible performance with float and tipsy performance on some archs
2005-03-22 00:58:05 +00:00
Chris Danford
66a30e72b8
optimize: Add GetTimeSinceStartFast() that caches the time for archs where GetMicrosecondsSinceStart() is slow
2005-03-21 21:40:07 +00:00
Chris Danford
9cfa779956
remove code to play cancel sound and put the cancel sound in the transition
2005-03-20 08:23:08 +00:00
Chris Danford
66a5c26a84
don't draw BGChange text in HomeEditMode
2005-03-18 18:56:35 +00:00
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