码迷,mamicode.com
首页 > 其他好文 > 详细

qml自学笔记------自己写类似于劲舞团的按键小游戏(下)

时间:2015-07-28 18:39:24      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:qml   qt   

接上篇《qml自学笔记------自己写类似于劲舞团的按键小游戏(中)

第四部分 PauseButton.qml 和 RestartButton.qml

    第四部分其实就是两个按键,一个是暂停,一个是重新开始。

    暂停按键按下时就将Timer定时器的running属性设成false,将按键上的text属性设成“开始”,就这么两件事。但是,由于点击重新开始时暂停按键也需要有所改变,换而言之即其他对象要改变这个按键的属性,因此给按键添加了两个属性stat和pauseText,stat用于开始/暂停的标志,pauseText用来改变Text的text属性,方便外部访问。

import QtQuick 1.1

Rectangle {
    id: m_pauseButton

    property bool stat: false
    property string pauseText: "开始"

    width: 120
    height: 40
    color: "lightgreen"
    radius: 5
    border.color: "yellow"
    border.width: 5

    Text {
        text: pauseText
        color: "black"
        font.pointSize: 18
        anchors.centerIn: parent
    }

    MouseArea {
        anchors.fill: parent
        onClicked:{
            if(stat) {
                displayPart.timerRunning = false;
                pauseText = "开始";
                stat = false;
            }else{
                pauseText = "暂停";
                displayPart.timerRunning = true;
                stat = true;
            }
        }
    }
}
重新开始按键按下后需要做的事情有:将Timer的running属性设成false;将主画面中的“当前得分”和“当前滑过”全部置零;将暂停/开始按键的stat属性置false,pauseText设成“开始”,因为正在run的时候也可以点击重新开始,这时暂停按键stat的值是true,pauseText值是“暂停”,必须改变它才能开始游戏。

import QtQuick 1.1

Rectangle {
    id: m_restartButton

    width: 120
    height: 40
    color: "lightgreen"
    radius: 5
    border.color: "yellow"
    border.width: 5

    Text {
        id: restarttext
        text: "重新开始"
        color: "black"
        font.pointSize: 18
        anchors.centerIn: parent
    }

    MouseArea {
        anchors.fill: parent
        onClicked:{
                displayPart.timerRunning = false;
                mainWindow.currentNum = 0;
                mainWindow.currentScore = 0;
                pauseButton.pauseText = "开始";
                pauseButton.stat = false;
        }
    }
}
    到此,整个小游戏的所有代码都贴出来了,代码很粗糙,游戏更加粗糙,玩几把就会发现有个小BUG,只要你手指头够快,一张图片你可以得很多分,就是当一张图片滑过DisplayPart区域的粉红色竖线的时间内,你能按出几下你就能得几分,这就得看手速了技术分享。还有其实还可以把图片美化一下,得分了还可以给出个漂亮的Perfect来,还可以将背景弄得更炫一点,按键按下不仅仅就变红而已,可以加一些特效。。。。 等等着一些,说着简单,做起来肯定超级花时间,毕竟那些做游戏的公司应该有不少专业的美工来干这个。

    整个小游戏的代码量真的很少,11个文件,最长的才一百多行,大部分都是四五十行,所以说qml这家伙真的很强大,功能超级多,后面看到一些动画制作,3D效果制作等,真的发现这家伙很好用很好玩!不过好像用的人不多,很多人都不知道这门语言,我也不知道这门语言的前景和发展方向,如有网友大神是做这方向的或者了解的,多指点指点,多谢!


版权声明:本文为博主原创文章,未经博主允许不得转载。

qml自学笔记------自己写类似于劲舞团的按键小游戏(下)

标签:qml   qt   

原文地址:http://blog.csdn.net/csdn_logo/article/details/47042447

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!