rnd-20040928-1-src
[rocksndiamonds.git] / src / game.h
1 /***********************************************************
2 * Rocks'n'Diamonds -- McDuffin Strikes Back!               *
3 *----------------------------------------------------------*
4 * (c) 1995-2002 Artsoft Entertainment                      *
5 *               Holger Schemel                             *
6 *               Detmolder Strasse 189                      *
7 *               33604 Bielefeld                            *
8 *               Germany                                    *
9 *               e-mail: info@artsoft.org                   *
10 *----------------------------------------------------------*
11 * game.h                                                   *
12 ***********************************************************/
13
14 #ifndef GAME_H
15 #define GAME_H
16
17 #include "main.h"
18
19 void GetPlayerConfig(void);
20 void DrawGameDoorValues(void);
21 void InitGameSound();
22 void InitGame(void);
23
24 void UpdateEngineValues(int, int);
25
26 void InitMovDir(int, int);
27 void InitAmoebaNr(int, int);
28 void GameWon(void);
29 int NewHiScore(void);
30
31 void InitPlayerGfxAnimation(struct PlayerInfo *, int, int);
32 void InitMovingField(int, int, int);
33 void Moving2Blocked(int, int, int *, int *);
34 void Blocked2Moving(int, int, int *, int *);
35 int MovingOrBlocked2Element(int, int);
36 void RemoveMovingField(int, int);
37 void DrawDynamite(int, int);
38 void CheckDynamite(int, int);
39 void Explode(int, int, int, int);
40 void DynaExplode(int, int);
41 void Bang(int, int);
42 void Blurb(int, int);
43 void Impact(int, int);
44 void StartMoving(int, int);
45 void ContinueMoving(int, int);
46 int AmoebeNachbarNr(int, int);
47 void AmoebeUmwandeln(int, int);
48 void AmoebeUmwandelnBD(int, int, int);
49 void AmoebeWaechst(int, int);
50 void AmoebeAbleger(int, int);
51 void Life(int, int);
52 void Ablenk(int, int);
53 void Blubber(int, int);
54 void NussKnacken(int, int);
55 void SiebAktivieren(int, int, int);
56 void AusgangstuerPruefen(int, int);
57 void AusgangstuerOeffnen(int, int);
58 void AusgangstuerBlinken(int, int);
59 void EdelsteinFunkeln(int, int);
60 void MauerWaechst(int, int);
61 void MauerAbleger(int, int);
62
63 void GameActions(void);
64 void ScrollLevel(int, int);
65
66 void TestIfGoodThingHitsBadThing(int, int, int);
67 void TestIfBadThingHitsGoodThing(int, int, int);
68 void TestIfHeroTouchesBadThing(int, int);
69 void TestIfHeroRunsIntoBadThing(int, int, int);
70 void TestIfBadThingTouchesHero(int, int);
71 void TestIfBadThingRunsIntoHero(int, int, int);
72 void TestIfFriendTouchesBadThing(int, int);
73 void TestIfBadThingTouchesFriend(int, int);
74 void TestIfBadThingTouchesOtherBadThing(int, int);
75 void KillHero(struct PlayerInfo *);
76 void BuryHero(struct PlayerInfo *);
77 void RemoveHero(struct PlayerInfo *);
78 boolean SnapField(struct PlayerInfo *, int, int);
79 boolean DropElement(struct PlayerInfo *);
80
81 void InitPlayLevelSound();
82 void PlayLevelSound_EM(int, int, int, int);
83
84 void RaiseScore(int);
85 void RaiseScoreElement(int);
86 void RequestQuitGame(boolean);
87
88 void CreateGameButtons();
89 void FreeGameButtons();
90 void UnmapGameButtons();
91
92 #endif