Diffstat (limited to 'noncore/games/parashoot/base.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/games/parashoot/base.cpp | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/noncore/games/parashoot/base.cpp b/noncore/games/parashoot/base.cpp new file mode 100644 index 0000000..c03802f --- a/dev/null +++ b/noncore/games/parashoot/base.cpp | |||
@@ -0,0 +1,71 @@ | |||
1 | /********************************************************************** | ||
2 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. | ||
3 | ** | ||
4 | ** This file is part of Qtopia Environment. | ||
5 | ** | ||
6 | ** This file may be distributed and/or modified under the terms of the | ||
7 | ** GNU General Public License version 2 as published by the Free Software | ||
8 | ** Foundation and appearing in the file LICENSE.GPL included in the | ||
9 | ** packaging of this file. | ||
10 | ** | ||
11 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | ||
12 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | ||
13 | ** | ||
14 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | ||
15 | ** | ||
16 | ** Contact info@trolltech.com if any conditions of this licensing are | ||
17 | ** not clear to you. | ||
18 | ** | ||
19 | **********************************************************************/ | ||
20 | #include "codes.h" | ||
21 | #include "base.h" | ||
22 | #include "man.h" | ||
23 | |||
24 | #include <qpe/resource.h> | ||
25 | |||
26 | #include <qregexp.h> | ||
27 | |||
28 | int damage; | ||
29 | |||
30 | Base::Base(QCanvas* canvas) : | ||
31 | QCanvasSprite(0, canvas), | ||
32 | kaboom("landmine"), | ||
33 | ohdear("crmble01") | ||
34 | { | ||
35 | basearray = new QCanvasPixmapArray(); | ||
36 | QString b0 = Resource::findPixmap("parashoot/b0001"); | ||
37 | b0.replace(QRegExp("0001"),"%1"); | ||
38 | basearray->readPixmaps(b0, 4); | ||
39 | setSequence(basearray); | ||
40 | setFrame(0); | ||
41 | move(2, canvas->height()-50); | ||
42 | setZ(10); | ||
43 | show(); | ||
44 | damage = 0; | ||
45 | } | ||
46 | |||
47 | void Base::damageBase() | ||
48 | { | ||
49 | damage++; | ||
50 | |||
51 | switch(damage) { | ||
52 | case 1: setFrame(1); ohdear.play(); break; | ||
53 | case 2: setFrame(2); ohdear.play(); break; | ||
54 | case 3: setFrame(3); kaboom.play(); break; | ||
55 | } | ||
56 | show(); | ||
57 | } | ||
58 | |||
59 | bool Base::baseDestroyed() | ||
60 | { | ||
61 | return (damage >= 3); | ||
62 | } | ||
63 | |||
64 | Base::~Base() | ||
65 | { | ||
66 | } | ||
67 | |||
68 | int Base::rtti() const | ||
69 | { | ||
70 | return base_rtti; | ||
71 | } | ||