Commit Graph

27180 Commits

Author SHA1 Message Date
Glenn Maynard 3bc7d64c79 JoinInput always joins both players in AutoJoin 2008-06-11 22:22:09 +00:00
Glenn Maynard bc0cf8acd1 AutoJoin logic change: Rather than always joining on any coin input,
join on the first JoinInput; later (if more coins are input), join
on coin input if there's already a player joined.  This means coin
inputs never join the first player, which implies that coin inputs
can only autojoin a player if it's in a place where players are supposed
to be joined.

This avoids problems with joining too early, eg. in Attract before
Reset.
2008-06-11 22:19:43 +00:00
Glenn Maynard 2e1705ac46 This is a bit spaghetti right now, and this is compounding it further, so let's
look at all the cases:

Generic ScreenSelect, eg. ScreenSelectStyle:
 A non-joined player START press can join.  On successful join, discard the
 input; the start press that joins the player should not also make a selection
 on the menu.   Non-joined players can make no other inputs.  (ALLOW_DISABLED_PLAYER_INPUT
 is false.)
  - on start press
    - attempt to join the player; if successful:
     - play start sound (normally done by the derived class, eg. ScreenSelectMaster::MenuStart,
       but we're not going there)
     - return, so this start press that just joined the player doesn't also make a selection
    - any other button, return and ignore the press ("block input of disabled players")
  - on any other button press, just ignore it

ScreenJoin:
 Pressing start on a non-joined player joins the player, and unlike the generic case,
 it also passes the start press on as input, selecting the default option and starting the
 game.  (ALLOW_DISABLED_PLAYER_INPUT is true.)

 We don't have any visible menu selections, so other player inputs don't matter.
  - This screen assumes that a player can join, and that the first successful join
    will move on.  Pressing start and having it not join has never been tested or
    used, and in fact crashes: it'll be passed on as a selection, and
    SM_BeginFadingOut dies, because m_MasterPlayerNumber is invalid.
 
ScreenTitleMenu:
 Like SJoin, pressing start will select the current option and start the game.  Unlike
 SJoin, this screen has options; arrow key inputs on a non-joined player must be
 passed on, so the cursor can be moved.  (ALLOW_DISABLED_PLAYER_INPUT is true.)

This "always joins" assumption is bad, and was probably never intended.  Fix by
never allowing start on a non-joined player (unless the start just joined the
player, in which case he'll be joined by the time of this check).
2008-06-11 22:13:26 +00:00
Glenn Maynard 4c369600a8 revert Message_PlayerJoined. This logic is changing. 2008-06-11 22:09:47 +00:00
Glenn Maynard 3d2321887d reenable sound in Cancel(), rather than as a special case in the input, so it works if someone else calls Cancel 2008-06-11 22:05:49 +00:00
Glenn Maynard 04f43dae61 always move on if a player joins in SAttract, even if it's not the screen who caused it 2008-06-11 22:02:37 +00:00
Glenn Maynard 2c93c2d79c reenable sound in Cancel(), rather than as a special case in the input, so it works if someone else calls Cancel 2008-06-11 22:01:33 +00:00
Chris Danford 1f820776d1 ShowUpcoming for Hold heads 2008-06-10 20:33:48 +00:00
Chris Danford c4ca429376 use button symbols in help text 2008-06-09 21:18:02 +00:00
Mike Hawkins 5eb2e83d68 Metric to hide the easy song flag on the MusicWheel (fix when using a transparent graphic for this flag and the song has multiple flags; this prevents the flag cycle from flashing an empty flag) 2008-06-07 22:47:53 +00:00
Mike Hawkins a799ce1b36 #SELECTABLE - don't exclude simfiles if they use 3.9+ exclusive settings in this tag 2008-06-07 19:27:48 +00:00
Glenn Maynard 84666e25b3 fix AutoJoin keeps pressing start in free play 2008-06-07 03:22:33 +00:00
Glenn Maynard d862ba776e fix AutoJoin in free/home: join both players 2008-06-07 03:21:24 +00:00
Glenn Maynard bd5173fae8 fix snd_pcm_mmap_writei undocumented EAGAIN return value 2008-06-07 01:54:46 +00:00
Chris Danford 059ae3868f move NoteUpcoming message playing into ReceptorArrow 2008-06-07 01:12:39 +00:00
Glenn Maynard 1414ff7c19 Fix inconsistency between DItoGI and GItoDI. ReadMappings was updating GItoDI and we didn't update DItoGI; AddDefaultMappings would then not add the keyboard mappings (since that uses DItoGI), and we'd end up with keyboard buttons half-mapped. 2008-06-06 23:40:03 +00:00
Glenn Maynard 1a31c337c6 fix empty statement warning 2008-06-06 18:38:07 +00:00
Chris Danford 605aac7472 send NoteUpcoming messages to receptors 2008-06-04 00:09:43 +00:00
Chris Danford 7fa2fd1f59 help text fixup 2008-06-03 12:02:48 +00:00
Chris Danford cc3e8589ef add AllowExtra2 2008-06-02 10:06:51 +00:00
Chris Danford ba9a585d51 separate select music help text string 2008-06-02 09:34:58 +00:00
Chris Danford 065836551a help text fixup 2008-06-02 00:34:01 +00:00
Chris Danford 4348415e0b specify metric or string in error messages for easier tracing 2008-06-02 00:29:46 +00:00
Mike Hawkins fc73f81240 Fixing conditional for bBright variable; missing check for bBlind 2008-05-30 03:01:17 +00:00
Mike Hawkins 967d468fbb Removed inserted SVN data from file, reattempting commit 2008-05-30 02:59:54 +00:00
Mike Hawkins 81bb2aeb93 Blind modifier fix - code improvement as suggested 2008-05-30 02:58:25 +00:00
Colby Klein 34913d4095 Remove references to bold and pump noteskins. 2008-05-30 01:51:13 +00:00
Colby Klein e1e097b548 Add KB7 game mode, as requested by some in the community 2008-05-30 01:29:46 +00:00
Mike Hawkins 067c6a021e Blind modifier fix (ghost arrow row was still showing judgement colors while blind was on) 2008-05-30 01:13:55 +00:00
Mike Hawkins 25b13dfcdf Song Attacks modifier (course-style scripted mods in regular single play) 2008-05-30 01:09:00 +00:00
Chris Danford 316f9b511f fix sync info showing when autosync is off 2008-05-28 10:14:37 +00:00
Glenn Maynard b3e3ab1187 allow using ScreenContinue without mandatory timer wait 2008-05-28 01:28:35 +00:00
Glenn Maynard e34d6d7195 ScreenWithMenuElements -> ScreenWithMenuElementsSimple 2008-05-28 01:27:35 +00:00
Glenn Maynard 43daaf5a1f Fix crash on join when SSM is preloaded but doesn't have focus. 2008-05-28 01:21:52 +00:00
Glenn Maynard 29936c8a2d Don't respond to players joining by catching GB_START; other code can cause a join, too. Watch the Message_PlayerJoined message instead. 2008-05-28 00:53:42 +00:00
Glenn Maynard a4b30a4cb0 move HandleMessage near HandleScreenMessage 2008-05-28 00:49:02 +00:00
Glenn Maynard 7e86936af7 Don't respond to players joining by catching GB_START; other code can cause a join, too. Watch the Message_PlayerJoined message instead. 2008-05-28 00:48:15 +00:00
Glenn Maynard e333836a89 Don't respond to players joining by catching GB_START; other code can cause a join, too. Watch the Message_PlayerJoined message instead. 2008-05-28 00:43:42 +00:00
Glenn Maynard 94f4ea32e4 fix missing base call 2008-05-28 00:41:40 +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
Glenn Maynard 0bd98720fe allow start to move on in attract even if there aren't enough credits if a player is already joined 2008-05-27 20:32:04 +00:00
Glenn Maynard a191c25a13 readd missing operator= (needed for STL use) 2008-05-27 17:40:30 +00:00
Glenn Maynard aa99cab574 experimental input mode: left/right always changes row, start toggles selected item; gives the same navigation for the main service menu and submenus 2008-05-27 17:37:34 +00:00
Glenn Maynard f832fff3d2 experimental input mode: left/right always changes row, start toggles selected item; gives the same navigation for the main service menu and submenus 2008-05-27 17:37:01 +00:00
Chris Danford 0544328038 remove FontBaseZoom in favor of doubleres font textures. This is cleaner and doesn't have weird interactions with maxwidth, wrapwidthpixels, etc 2008-05-27 17:08:25 +00:00
Chris Danford 94c489bae0 experimental doubleres texture saving. Generates bitmaps using 2x the specified font size and adds doubleres texture hint to the file names. The UI previews don't reflect the doubleres texture (worth the effort?) 2008-05-27 10:07:24 +00:00
Chris Danford 3793272aaa Display -> FontViewAndCloseUp, UpdateSample -> UpdateCloseUp. Fix leak of CloseUp bitmap. 2008-05-27 08:56:36 +00:00
Chris Danford 0aa00e9e5a add DoubleRes UI stubs, add 'Bold' to saved file name 2008-05-27 08:54:26 +00:00
Steve Checkoway 1fedb46955 We don't even use ffmpeg's software image scalar, but the directory and some of its contents need to be present to build ffmpeg. The version is tied to mplayer rather than to ffmpeg so grab an arbitrary version that allows ffmpeg to compile. 2008-05-27 05:51:34 +00:00
Chris Danford e067a0a836 partial ScreenLegal 2008-05-27 00:19:37 +00:00