给“炸弹人”游戏配背景音乐
pascal吧
全部回复
仅看楼主
level 1
沈必然 楼主
//FreePascal 2.20 调试成功PROGRAM TEST_MIDI;function MessageBox(hWnd:LONGINT;lpText:PCHAR;lpCaption:PCHAR;uType:DWORD):LONGINT; stdcall; external 'user32.dll' name 'MessageBoxA';function mciExecute(pszCommand:PCHAR) : BOOLEAN; stdcall; external 'winmm.dll' name 'mciExecute';CONST SND_FILENAME : DWORD = $00020000; MB_OK : DWORD = 0;var b1 : BOOLEAN;BEGIN writeln('initialization! please wait a few second!'); b1 := mciExecute('play c:\Windows\Media\flourish.mid'); //您也可以更换自己的MIDI背景音乐 //mciExecute指针字符串参数:play后的文件名路径必须写完整。 //设备初始化需要等待数秒钟 MessageBox(0,'播放MIDI音乐,听见了么!','MIDI音乐测试',MB_OK); Writeln(b1); Writeln('按回车键退出程序!'); READLN;END.
2008年02月23日 13点02分 1
level 0
本人在编游戏时非常鄙视FP(竞赛时除外)FP中用不到dos,在FPC中弄个时间出来都很难TP中很多对内存进行控制的方法,FP都用不了还有一点,FP不够TP稳定,经常出现RTE的错误
2008年02月24日 05点02分 2
level 1
沈必然 楼主
124.16.7.*您好: 请您不要鄙视FP FP写游戏可以调用WIN32API 作成WINDOWS界面 FP可以到用DOS的功能 这些功能在sysutils单元 都是面向对象的 TP中的内存控制时堆内存 我用FP写程序也用堆内存 GetMem等函数在system中是有的 都是常用的 例如 {$M 100000, 1000000} TYPE A = ^ ARRAY [ 0 .. 10000000 ] of DWORD; VAR P : A; BEGIN NEW(P); Writeln((p^)[1000000]); //显示数据 Writeln(p^);显示指针p地址 Writeln(@(p^)); //显示p所指向的数组的地址 Dispose(p); END; 运行时错误可能是您的堆内存没有设置足够大 请仔细研究DOC文件夹下的参考资料
2008年02月24日 07点02分 3
level 0
既然你用FP作成WINDOWS界面,为什么不干脆用DELPHI呢?一般来说,编游戏经常用到时间函数,FP中连个得到时间的方法都没有,怎么卡时?
2008年02月25日 10点02分 4
调用时间 uses dos; var a,b,c,d:word; begin gettime(a,b,c,d); writeln(a,':',b,':',c); end.
2017年07月10日 09点07分
level 0
好的 我用FP主要是计算 要WINDOWS界面 就把代码复制到DELPHI 反正通用的 游戏不游戏看个人爱好 各玩各得卡时?线程就能解决 TP1/18秒的这种卡时对有的程序来说更本无用TP是很好的工具 我就是从学TP开始学编程的
2008年02月25日 10点02分 5
level 0
FP 的一般时间函数 在 sysutils 单元中
2008年02月25日 10点02分 6
level 0
TP中的卡时用meml[$0040:006c]来得到,能精确到55毫秒.FP弱得要命,经常出些Runtime error,TurboPascal本来就比C++严谨了,FP还要比TP严谨。asm mov ax, 13h int 10hend;就拿开图象模式来说,上面这段初试化界面的代码在FP中连编译都不过关,FP还能编出什么高质量的游戏呢?
2008年02月26日 10点02分 7
{$asmmode intel} intel 的cpu汇编模式开启
2017年07月20日 03点07分
level 0
在一个比较长游戏中,难免会出现数组越界的疏忽,在TP中越就越了,而在FP中就直接弹出RTE201,游戏玩到一半就突然停下来了,谁还会喜欢?在图象模式下用F7跟踪起来很麻烦,加上一个游戏的代码那么长,你要找多久才能检查出一个错误呢?在程序中还有很多隐藏的错误,难道要整个游戏所有情况都完全的试玩一次才叫做合格吗?
2008年02月26日 10点02分 8
level 8
lz可以
2017年07月11日 07点07分 10
1