本文整理汇总了C++中Audio::int_to_DsVolume方法的典型用法代码示例。如果您正苦于以下问题:C++ Audio::int_to_DsVolume方法的具体用法?C++ Audio::int_to_DsVolume怎么用?C++ Audio::int_to_DsVolume使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Audio
的用法示例。
在下文中一共展示了Audio::int_to_DsVolume方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: demo_screen
static void demo_screen() {
//------- display screen -----------//
int dataSize;
File* filePtr = image_interface.get_file("DEMOSCR", dataSize);
if (filePtr->file_get_short() != -1 ) { // use common color palette
filePtr->file_seek(filePtr->file_pos() - sizeof(short));
vga_back.put_large_bitmap(0, 0, filePtr);
}
else { // use own color palette
unsigned char palette[256 * 3];
short *remapTable;
filePtr->file_read(palette, 256 * 3);
PalDesc palDesc(palette, 3, 256, 6);
ColorTable colorTable;
colorTable.generate_table_fast(MAX_BRIGHTNESS_ADJUST_DEGREE, palDesc, ColorTable::bright_func);
remapTable = (short *) colorTable.get_table(0);
vga_back.put_large_bitmap(0, 0, filePtr, remapTable);
}
vga.blt_buf(0,0,VGA_WIDTH-1,VGA_HEIGHT-1);
sys.blt_virtual_buf();
//-------- detect button --------//
int highlightButton=0;
while(1) {
MSG msg;
if (PeekMessage( &msg, NULL, 0, 0, PM_NOREMOVE)) {
if (!GetMessage( &msg, NULL, 0, 0)) {
return;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
continue;
}
else if( sys.paused_flag || !sys.active_flag ) {
WaitMessage();
continue;
}
//---------- detect menu option buttons -----------//
sys.yield();
mouse.get_event();
DemoButton* buttonPtr = demo_button_array;
for( int i=0 ; i<DEMO_BUTTON_COUNT ; i++, buttonPtr++ ) {
//----- has clicked on a button -------//
if( mouse.single_click( buttonPtr->x1, buttonPtr->y1,
buttonPtr->x1+buttonPtr->width-1, buttonPtr->y1+buttonPtr->height-1, 0 ) ) {
audio.play_wav("BEEPS-1",audio.int_to_DsVolume(config.sound_effect_volume));
switch(i) {
case 0:
open_http( "anker.url", "http://www.ankerpub.com" );
return;
case 1:
open_http( "vu.url", "http://www.virtual-u.org" );
return;
case 2:
return;
}
}
//---- if the mouse cursor is in the area ----//
if( mouse.in_area( buttonPtr->x1, buttonPtr->y1,
buttonPtr->x1+buttonPtr->width-1, buttonPtr->y1+buttonPtr->height-1 ) ) {
if( highlightButton != i+1 ) {
highlightButton = i+1;
// restore original image first
vga.blt_buf(0,0,VGA_WIDTH-1,VGA_HEIGHT-1);
mouse.hide_area(buttonPtr->x1, buttonPtr->y1,
buttonPtr->x1+buttonPtr->width-1, buttonPtr->y1+buttonPtr->height-1);
image_interface.put_front( buttonPtr->x1, buttonPtr->y1, buttonPtr->file_name );
mouse.show_area();
sys.blt_virtual_buf();
}
break;
}
}
//------- the mouse cursor is not on any of the buttons ------//
if( i==DEMO_BUTTON_COUNT ) {
if( highlightButton != 0 ) {
//.........这里部分代码省略.........
示例2: WinMain
//---------- Begin of function WinMain ----------//
//!
//! WinMain - initialization, message loop
//!
//! Compilation constants:
//!
//! DEBUG - normal debugging
//!
//! DEMO - demo version
//! ADMIN - administrator version
//! NO_CDCHECK - no CD check
//! NO_AUTOSAVE - no autosave
//!
//! Release version defines:
//! Standard version: DEBUG, NO_MEM_CLASS
//! Administrator version: DEBUG, NO_MEM_CLASS, ADMIN
//! Demo version: DEBUG, NO_MEM_CLASS, DEMO
//!
int PASCAL WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow) {
//------ set game directory and check CD ------//
sys.set_game_dir();
#ifndef NO_CDCHECK
#ifndef DEMO
if( !sys.cdrom_drive ) {
#ifdef ADMIN
char* msg = "Please insert Virtual U - Administrator Version CDROM and try again.";
#else
char* msg = "Please insert Virtual U CDROM and try again.";
#endif
MessageBox(sys.main_hwnd, msg, WIN_TITLE, MB_OK | MB_ICONERROR);
return 0;
}
#endif
#endif
//----------- play movie ---------------//
OSVERSIONINFO osVersion;
memset( &osVersion, 0, sizeof(osVersion) );
// do not play movie in Win2000
osVersion.dwOSVersionInfoSize = sizeof(osVersion);
if( !m.is_file_exist("SKIPAVI.SYS")
&& GetVersionEx(&osVersion) && osVersion.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS ) {
play_video(hInstance, 0);
}
config.init();
//--------------------------------------//
if( !sys.init(hInstance) )
return FALSE;
err.set_extra_handler( extra_error_handler ); // set extra error handler, save the game when a error happens
#ifdef DEBUG
// break at exception, for debugging
if( sys.debug_session ) {
// directX may change fpu control word, so change after sys.init
// all exception but no inexact, underflow and denormal number exception
_control87( _EM_INEXACT | _EM_UNDERFLOW | _EM_DENORMAL, _MCW_EM );
}
#endif // DEBUG
#ifdef DEMO
audio.play_wav("DEMOOPEN",audio.int_to_DsVolume(config.sound_effect_volume));
#endif
game.main_menu();
#ifdef DEMO
demo_screen();
#endif
sys.deinit();
return 0;
}