예제 #1
0
void DAirCombatDice::RndClicked( wxCommandEvent& WXUNUSED(e) )
{
	char s[10];
#if 0
	sprintf( s, "%d", dice( ) );
	editDie1->SetValue( wxString::FromAscii( s ) );

	if ( dice_ > 1 )
	{
		sprintf( s, "%d", dice( ) );
		editDie2->SetValue( wxString::FromAscii( s ) );
	}
#endif
	sprintf( s, "%d", rollDiceN( max_ ) );
	editDie1->SetValue( wxString::FromAscii( s ) );
	if ( dice_ > 1 )
	{
		sprintf( s, "%d", rollDiceN( max_ ) );
		editDie2->SetValue( wxString::FromAscii( s ) );
	}
	// Disable the edit controls so the user cannot change the automatic die roll
	editDie1->Enable( false );
	editDie2->Enable( false );
	auto_roll_ = 1;
}
예제 #2
0
void DAirCombatDice::CloseDialog( )
{
	char bf[100];
#if 0
	strncpy( bf, editDie1->GetValue().ToAscii(), 100 );

	if (strlen( bf ) == 0)	 // empty string -> generate random value
		die1 = dice( );
	else
		die1 = atoi( bf );

	strncpy(bf, editDie2->GetValue().ToAscii(), 100);

	if ( strlen (bf) == 0 )
		die2 = dice( );
	else
		die2 = atoi( bf );

	if ( die1 < 1 )
		die1 = 1;
	if ( die1 > 6 )
		die1 = 6;

	if ( die2 < 1 )
		die2 = 1;
	if ( die2 > 6 )
		die2 = 6;
#endif
	strncpy( bf, editDie1->GetValue( ).ToAscii( ), 100 );
	if ( strlen( bf ) == 0 )	 // empty string -> generate random value
		die1_ = rollDiceN( max_ );
	else
		die1_ = atoi( bf );
	strncpy( bf, editDie2->GetValue( ).ToAscii( ), 100 );
	if ( strlen( bf ) == 0 )
		die2_ = rollDiceN( max_ );
	else
		die2_ = atoi( bf );

	if ( die1_ < 1 )
		die1_ = 1;
	if ( die1_ > max_ )
		die1_ = max_;

	if ( die2_ < 1 )
		die2_ = 1;
	if ( die2_ > max_ )
		die2_ = max_;
	strncpy( info_, editInfo->GetValue( ).ToAscii( ), 999 );
}