1 /***********************************************************
2 * Rocks'n'Diamonds -- McDuffin Strikes Back! *
3 *----------------------------------------------------------*
4 * ©1995 Artsoft Development *
6 * 33659 Bielefeld-Senne *
7 * Telefon: (0521) 493245 *
8 * eMail: aeglos@valinor.owl.de *
9 * aeglos@uni-paderborn.de *
10 * q99492@pbhrzx.uni-paderborn.de *
11 *----------------------------------------------------------*
13 ***********************************************************/
24 #define MF_NO_ACTION 0
28 /* explosion position marks */
33 /* fundamental game speed */
34 #define GAME_FRAME_DELAY 4
35 #define FFWD_FRAME_DELAY 1
36 #define FRAMES_PER_SECOND (100 / GAME_FRAME_DELAY)
38 void GetPlayerConfig(void);
40 void InitMovDir(int, int);
41 void InitAmoebaNr(int, int);
43 BOOL NewHiScore(void);
44 void InitMovingField(int, int, int);
45 void Moving2Blocked(int, int, int *, int *);
46 void Blocked2Moving(int, int, int *, int *);
47 int MovingOrBlocked2Element(int, int);
48 void RemoveMovingField(int, int);
49 void DrawDynamite(int, int);
50 void CheckDynamite(int, int);
51 void Explode(int, int, int, int);
52 void DynaExplode(int, int, int);
55 void Impact(int, int);
56 void TurnRound(int, int);
57 void StartMoving(int, int);
58 void ContinueMoving(int, int);
59 int AmoebeNachbarNr(int, int);
60 void AmoebeUmwandeln(int, int);
61 void AmoebeUmwandeln2(int, int, int);
62 void AmoebeWaechst(int, int);
63 void AmoebeAbleger(int, int);
65 void Ablenk(int, int);
66 void Blubber(int, int);
67 void NussKnacken(int, int);
68 void SiebAktivieren(int, int, int);
69 void AusgangstuerPruefen(int, int);
70 void AusgangstuerOeffnen(int, int);
71 void AusgangstuerBlinken(int, int);
72 void EdelsteinFunkeln(int, int);
73 void MauerWaechst(int, int);
74 void MauerAbleger(int, int);
75 void GameActions(void);
76 void ScrollLevel(int, int);
77 BOOL MoveFigureOneStep(int, int, int, int);
78 BOOL MoveFigure(int, int);
80 void ScrollFigure(int);
82 void TestIfGoodThingHitsBadThing(int, int);
83 void TestIfBadThingHitsGoodThing(int, int);
84 void TestIfHeroHitsBadThing(void);
85 void TestIfBadThingHitsHero(void);
86 void TestIfFriendHitsBadThing(int, int);
87 void TestIfBadThingHitsFriend(int, int);
88 void TestIfBadThingHitsOtherBadThing(int, int);
91 void RemoveHero(void);
92 int DigField(int, int, int, int, int);
93 BOOL SnapField(int, int);
95 void PlaySoundLevel(int, int, int);
97 void RaiseScoreElement(int);