Секреты программирования игр


Демонстрационная программа Test.c - часть 3


if (LoadMidPak('MIDPAK.COM","MIDPAK.ADV","MIDPAK.AD"))

           //Загрузка компонентов MIDPAK

{

printf("Loaded MIDPAK.СОМ MIDPAK.ADV and MIDPAK.AD into Low Men\n");

if ( InitMidPak() )

{

printf("MIDPAK driver initialized.\n");

fname = floadlow("TEST.XMI",&siz); // Загрузка музыки

if ( fname }

{

printf("Loaded TEST.XMI %d bytes long.\n",siz);

RegisterXmidi(fname,siz); // Регистрация XMIDI

// последовательности

printf("Sequence registered, now playing.\n") ;

PlaySequence(0); // Исполнить первую

// последовательность

SegueSequence (1,-1); // Зарегистрировать вторую

// последовательность на

// исполнение сразу же по

// достижении первого

// Контроллера 119

}

} else

printf("Failed to initialize MIDPAK driver.\n");

}

TestDigPak();   // Тестирование/демонстрация возможностей функций DIGPAK

UnLoadMidPak(); // Выгрузка MIDPAK из памяти, освобождение аппаратуры

UnLoadDigPak(); // Выгрузка DIGPAK из памяти, освобождение аппаратуры

RemoveVectorLoader() ;

}

void TestDigPak(void)

{

int i,key,sound;

printf("Loading digital sound effects.\n");

if ( LoadSounds() ) // Загрузка звуковых эффектов в память

{

// Создание меню звуковых эффектов

printf("Select an sound effect to play. [ESC] when finished playing around.\n");

for (i=0; i<NOBJ; i++)

{

printf("%c %s\n",i+'A',Names[i]) ;

}

do

{

if ( keystat() ) // если клавиша нажата

{

key = getkey(); // получить нажатую клавишу

if ( key >= ' a' && key <= ' z') key-=32;

// преобразовать нижний регистр к верхнему

if ( key >= 'А' && key <= 'Z')

{

sound = key-'A';

if ( sound < NOBJ ) PlaySound(sound);

}

} while ( key != 27 );

UnloadSounds(} ;

}

}

// загрузить все звуковые эффекты в память

int LoadSounds(void)

{

int fph;

long int siz.end;

int i, handler;

int select;

for (i=0; i<NOBJ; i++)

{

Sounds[i] = fload(Names[i], &siz);;




Начало  Назад  Вперед



Книжный магазин