标题:一个打地鼠小游戏部分代码,不知道为什么只能在打第一下时播放声音,求解答
只看楼主
anhaoAH
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2019-12-18
结帖率:75%
已结贴  问题点数:20 回复次数:1 
一个打地鼠小游戏部分代码,不知道为什么只能在打第一下时播放声音,求解答
while (1)
    {
        msg = GetMouseMsg();
        cz.x = msg.x - 15;
        cz.y = msg.y - 15;
        
        if (msg.mkLButton == true)
        {
            cz.down = true;
            
            if (cz.hit())
            {
                count++;//加分
                mciSendString("open y.mp3.mp3", 0, 0, 0);//播放音效
                mciSendString("play y.mp3.mp3", 0, 0, 0);
                ds[m].isLive = false;//打中了,打死地鼠
               
            }
            
        }
        else
            cz.down = false;
            printf("%d,%d\n", msg.x, msg.y);
            
    }
想要做到每次打击击中后都有音效反馈(播放y.mp3),请大佬指点

[此贴子已经被作者于2020-6-24 07:25编辑过]

搜索更多相关主题的帖子: mp3 声音 播放 小游戏 代码 
2020-06-23 18:55
牧人马
Rank: 4
等 级:业余侠客
威 望:6
帖 子:49
专家分:229
注 册:2017-12-24
得分:20 
抱歉没有安装相关头文件,C/C++没有接触过多媒体,网上查了一下关于mciSendString函数的,是不是没有停止播放stop和关闭文件close的操作:https://baike.baidu.com/item/mciSendString/2905255?fr=aladdin#3
可以在 if (cz.hit())里加一些输出看看哪里出错了
2020-06-24 10:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-502256-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013655 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved