<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- sub-attaq.qdoc --> <title>Sub-Attaq | Qt Widgets 5.12.6</title> <link rel="stylesheet" type="text/css" href="style/offline-simple.css" /> <script type="text/javascript"> document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css"); // loading style sheet breaks anchors that were jumped to before // so force jumping to anchor again setTimeout(function() { var anchor = location.hash; // need to jump to different anchor first (e.g. none) location.hash = "#"; setTimeout(function() { location.hash = anchor; }, 0); }, 0); </script> </head> <body> <div class="header" id="qtdocheader"> <div class="main"> <div class="main-rounded"> <div class="navigationbar"> <table><tr> <td >Qt 5.12</td><td ><a href="qtwidgets-index.html">Qt Widgets</a></td><td >Sub-Attaq</td></tr></table><table class="buildversion"><tr> <td id="buildversion" width="100%" align="right"><a href="qtwidgets-index.html">Qt 5.12.6 Reference Documentation</a></td> </tr></table> </div> </div> <div class="content"> <div class="line"> <div class="content mainContent"> <div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div> <h1 class="title">Sub-Attaq</h1> <span class="subtitle"></span> <!-- $$$animation/sub-attaq-brief --> <p>This example shows Qt's ability to combine <a href="../qtcore/animation-overview.html">the animation framework</a> and <a href="../qtcore/statemachine-api.html">the state machine framework</a> to create a game.</p> <!-- @@@animation/sub-attaq --> <!-- $$$animation/sub-attaq-description --> <div class="descr"> <a name="details"></a> <p class="centerAlign"><img src="images/sub-attaq-demo.png" alt="" /></p><p>The purpose of the game is to destroy all submarines to win the current level. The boat can be controlled using left and right keys. To fire a bomb you can press up and down keys.</p> <p>Files:</p> <ul> <li><a href="qtwidgets-animation-sub-attaq-animationmanager-cpp.html">animation/sub-attaq/animationmanager.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-animationmanager-h.html">animation/sub-attaq/animationmanager.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-boat-cpp.html">animation/sub-attaq/boat.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-boat-h.html">animation/sub-attaq/boat.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-boat-p-h.html">animation/sub-attaq/boat_p.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-bomb-cpp.html">animation/sub-attaq/bomb.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-bomb-h.html">animation/sub-attaq/bomb.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-data-xml.html">animation/sub-attaq/data.xml</a></li> <li><a href="qtwidgets-animation-sub-attaq-graphicsscene-cpp.html">animation/sub-attaq/graphicsscene.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-graphicsscene-h.html">animation/sub-attaq/graphicsscene.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-main-cpp.html">animation/sub-attaq/main.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-mainwindow-cpp.html">animation/sub-attaq/mainwindow.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-mainwindow-h.html">animation/sub-attaq/mainwindow.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-background-n810-svg.html">animation/sub-attaq/pics/scalable/background-n810.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-background-svg.html">animation/sub-attaq/pics/scalable/background.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-boat-svg.html">animation/sub-attaq/pics/scalable/boat.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-bomb-svg.html">animation/sub-attaq/pics/scalable/bomb.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-sand-svg.html">animation/sub-attaq/pics/scalable/sand.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-see-svg.html">animation/sub-attaq/pics/scalable/see.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-sky-svg.html">animation/sub-attaq/pics/scalable/sky.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-sub-attaq-svg.html">animation/sub-attaq/pics/scalable/sub-attaq.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-submarine-svg.html">animation/sub-attaq/pics/scalable/submarine.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-surface-svg.html">animation/sub-attaq/pics/scalable/surface.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pics-scalable-torpedo-svg.html">animation/sub-attaq/pics/scalable/torpedo.svg</a></li> <li><a href="qtwidgets-animation-sub-attaq-pixmapitem-cpp.html">animation/sub-attaq/pixmapitem.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-pixmapitem-h.html">animation/sub-attaq/pixmapitem.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-progressitem-cpp.html">animation/sub-attaq/progressitem.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-progressitem-h.html">animation/sub-attaq/progressitem.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-qanimationstate-cpp.html">animation/sub-attaq/qanimationstate.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-qanimationstate-h.html">animation/sub-attaq/qanimationstate.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-states-cpp.html">animation/sub-attaq/states.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-states-h.html">animation/sub-attaq/states.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-sub-attaq-pro.html">animation/sub-attaq/sub-attaq.pro</a></li> <li><a href="qtwidgets-animation-sub-attaq-subattaq-qrc.html">animation/sub-attaq/subattaq.qrc</a></li> <li><a href="qtwidgets-animation-sub-attaq-submarine-cpp.html">animation/sub-attaq/submarine.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-submarine-h.html">animation/sub-attaq/submarine.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-submarine-p-h.html">animation/sub-attaq/submarine_p.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-textinformationitem-cpp.html">animation/sub-attaq/textinformationitem.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-textinformationitem-h.html">animation/sub-attaq/textinformationitem.h</a></li> <li><a href="qtwidgets-animation-sub-attaq-torpedo-cpp.html">animation/sub-attaq/torpedo.cpp</a></li> <li><a href="qtwidgets-animation-sub-attaq-torpedo-h.html">animation/sub-attaq/torpedo.h</a></li> </ul> <p>Images:</p> <ul> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/background.png">animation/sub-attaq/pics/big/background.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/boat.png">animation/sub-attaq/pics/big/boat.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/bomb.png">animation/sub-attaq/pics/big/bomb.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/boat/step1.png">animation/sub-attaq/pics/big/explosion/boat/step1.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/boat/step2.png">animation/sub-attaq/pics/big/explosion/boat/step2.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/boat/step3.png">animation/sub-attaq/pics/big/explosion/boat/step3.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/boat/step4.png">animation/sub-attaq/pics/big/explosion/boat/step4.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/submarine/step1.png">animation/sub-attaq/pics/big/explosion/submarine/step1.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/submarine/step2.png">animation/sub-attaq/pics/big/explosion/submarine/step2.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/submarine/step3.png">animation/sub-attaq/pics/big/explosion/submarine/step3.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/explosion/submarine/step4.png">animation/sub-attaq/pics/big/explosion/submarine/step4.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/submarine.png">animation/sub-attaq/pics/big/submarine.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/surface.png">animation/sub-attaq/pics/big/surface.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/big/torpedo.png">animation/sub-attaq/pics/big/torpedo.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/small/background.png">animation/sub-attaq/pics/small/background.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/small/boat.png">animation/sub-attaq/pics/small/boat.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/small/bomb.png">animation/sub-attaq/pics/small/bomb.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/small/submarine.png">animation/sub-attaq/pics/small/submarine.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/small/surface.png">animation/sub-attaq/pics/small/surface.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/small/torpedo.png">animation/sub-attaq/pics/small/torpedo.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-a.png">animation/sub-attaq/pics/welcome/logo-a.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-a2.png">animation/sub-attaq/pics/welcome/logo-a2.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-b.png">animation/sub-attaq/pics/welcome/logo-b.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-dash.png">animation/sub-attaq/pics/welcome/logo-dash.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-excl.png">animation/sub-attaq/pics/welcome/logo-excl.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-q.png">animation/sub-attaq/pics/welcome/logo-q.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-s.png">animation/sub-attaq/pics/welcome/logo-s.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-t.png">animation/sub-attaq/pics/welcome/logo-t.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-t2.png">animation/sub-attaq/pics/welcome/logo-t2.png</a></li> <li><a href="images/used-in-examples/animation/sub-attaq/pics/welcome/logo-u.png">animation/sub-attaq/pics/welcome/logo-u.png</a></li> </ul> </div> <!-- @@@animation/sub-attaq --> </div> </div> </div> </div> </div> <div class="footer"> <p> <acronym title="Copyright">©</acronym> 2019 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.<br/> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br/> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. </p> </div> </body> </html>