m_EffectType is now a bitfield, so we can have multiple effects on

at once.

There's no interface to this, but it works with courses.

drunk, dizzy, dark is amusing. "That arrow goes WHERE?"
This commit is contained in:
Glenn Maynard
2002-08-31 03:04:38 +00:00
parent 7ffc481c63
commit ad5f294ae4
7 changed files with 85 additions and 45 deletions
+9 -1
View File
@@ -253,8 +253,16 @@ void ScreenTitleMenu::HandleScreenMessage( const ScreenMessage SM )
if( RandomFloat(0,1)>0.8f )
GAMESTATE->m_PlayerOptions[p].m_fArrowScrollSpeed = 1.5f;
/* This is a bitfield; choose a bit. 1<<0 chooses the first
* option, 1<<1 the second, and so on. NUM_EFFECT_TYPES is one
* greater than the number of options (since it includes NONE);
* we'll actually NONE if we choose NUM_EFFECT_TYPES, since that'll
* do 1<<(NUM_EFFECT_TYPES-1), which will turn on a bit that doesn't
* do anything.
*
* It's simple, but it's a hack. FIXME -glenn */
GAMESTATE->m_PlayerOptions[p].m_EffectType =
PlayerOptions::EffectType(rand()%PlayerOptions::NUM_EFFECT_TYPES);
1 << (rand()%PlayerOptions::NUM_EFFECT_TYPES) ;
if( RandomFloat(0,1)>0.9f )
GAMESTATE->m_PlayerOptions[p].m_AppearanceType = PlayerOptions::APPEARANCE_HIDDEN;
if( RandomFloat(0,1)>0.9f )