1#
2#   Copyright 2006 by Bernhard Seckinger, Bilder: Daniela Lipps
3#   Maintenance modifications 2006,2008,2011 by the cuyo developers
4#
5#   This program is free software; you can redistribute it and/or modify
6#   it under the terms of the GNU General Public License as published by
7#   the Free Software Foundation; either version 2 of the License, or
8#   (at your option) any later version.
9#
10#   This program is distributed in the hope that it will be useful,
11#   but WITHOUT ANY WARRANTY; without even the implied warranty of
12#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13#   GNU General Public License for more details.
14#
15#   You should have received a copy of the GNU General Public License
16#   along with this program; if not, write to the Free Software
17#   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18#
19# The above notices apply to this file and to:
20#   bxBaer104.xpm[.gz], bxBaer112.xpm[.gz], bxBaer120.xpm[.gz],
21#   bxBaer128.xpm[.gz], bxBaer136.xpm[.gz], bxBaer144.xpm[.gz],
22#   bxBaer152.xpm[.gz], bxBaer160.xpm[.gz], bxBaer32.xpm[.gz],
23#   bxBaer40.xpm[.gz], bxBaer48.xpm[.gz], bxBaer56.xpm[.gz], bxBaer64.xpm[.gz],
24#   bxBaer72.xpm[.gz], bxBaer80.xpm[.gz], bxBaer88.xpm[.gz], bxBaer96.xpm[.gz],
25#   bxBall104.xpm[.gz], bxBall112.xpm[.gz], bxBall120.xpm[.gz],
26#   bxBall128.xpm[.gz], bxBall136.xpm[.gz], bxBall144.xpm[.gz],
27#   bxBall152.xpm[.gz], bxBall160.xpm[.gz], bxBall32.xpm[.gz]
28#   bxBall40.xpm[.gz], bxBall48.xpm[.gz], bxBall56.xpm[.gz], bxBall64.xpm[.gz],
29#   bxBall72.xpm[.gz], bxBall80.xpm[.gz], bxBall88.xpm[.gz], bxBall96.xpm[.gz],
30#   bxBuch104.xpm[.gz], bxBuch112.xpm[.gz], bxBuch120.xpm[.gz],
31#   bxBuch128.xpm[.gz], bxBuch136.xpm[.gz], bxBuch144.xpm[.gz],
32#   bxBuch152.xpm[.gz], bxBuch160.xpm[.gz], bxBuch32.xpm[.gz],
33#   bxBuch40.xpm[.gz], bxBuch48.xpm[.gz], bxBuch56.xpm[.gz], bxBuch64.xpm[.gz],
34#   bxBuch72.xpm[.gz], bxBuch80.xpm[.gz], bxBuch88.xpm[.gz], bxBuch96.xpm[.gz],
35#   bxKlotz104.xpm[.gz], bxKlotz112.xpm[.gz], bxKlotz120.xpm[.gz],
36#   bxKlotz128.xpm[.gz], bxKlotz136.xpm[.gz], bxKlotz144.xpm[.gz],
37#   bxKlotz152.xpm[.gz], bxKlotz160.xpm[.gz], bxKlotz32.xpm[.gz],
38#   bxKlotz40.xpm[.gz], bxKlotz48.xpm[.gz], bxKlotz56.xpm[.gz],
39#   bxKlotz64.xpm[.gz], bxKlotz72.xpm[.gz], bxKlotz80.xpm[.gz],
40#   bxKlotz88.xpm[.gz], bxKlotz96.xpm[.gz], bxLok104.xpm[.gz],
41#   bxLok112.xpm[.gz], bxLok120.xpm[.gz], bxLok128.xpm[.gz], bxLok136.xpm[.gz],
42#   bxLok144.xpm[.gz], bxLok152.xpm[.gz], bxLok160.xpm[.gz], bxLok32.xpm[.gz],
43#   bxLok40.xpm[.gz], bxLok48.xpm[.gz], bxLok56.xpm[.gz], bxLok64.xpm[.gz],
44#   bxLok72.xpm[.gz], bxLok80.xpm[.gz], bxLok88.xpm[.gz], bxLok96.xpm[.gz]
45#
46
47# Status: (M=Muss, S=Soll, K=Kann, F=Feature, B=Bugs)
48#
49# FS: Bildchen f�r Graue: Messer und Gabel
50# FS: Bildchen f�r Gras: Armee-Spielzeug
51# FS: Hintergrundfarben und Feinjustierung
52
53Xtradick =
54{
55  #------------------------------------#
56  # Allgemeine Beschreibung des Levels #
57  #------------------------------------#
58
59  name     = "Extra fat toys"
60  author   = "Berni/Jela"
61  description     = "What do they do?"
62
63  pics = All * 5
64
65  greypic   = Buchstabe
66  startpic  = blFragezeichen.xpm
67  startdist = "AAAAAAAAAA"
68
69  numexplode = 4
70  chaingrass = 1
71
72  bgcolor    = 201,183,128
73  topcolor   = 0,0,0
74  topoverlap = 0
75  toptime    = 30
76
77  randomgreys[1] = 50
78
79  <<
80    var size = 0, animated = 0, step = 0,
81	xx,yy;
82
83    semiglobal =
84    {
85	switch {
86	 1:5 ->
87	   {
88	     xx = rnd(10);
89	     yy = rnd(20);
90	   };
91	 ->
92	   {
93	     xx = -1;
94 	     yy = -1;
95	   };
96	};
97    };
98  >>
99
100
101  All =
102  {
103      pics =
104        bxBaer32.xpm,bxBaer40.xpm,bxBaer48.xpm,bxBaer56.xpm,bxBaer64.xpm,bxBaer72.xpm,
105	bxBaer80.xpm,bxBaer88.xpm,bxBaer96.xpm,bxBaer104.xpm,bxBaer112.xpm,bxBaer120.xpm,
106	bxBaer128.xpm,bxBaer136.xpm,bxBaer144.xpm,bxBaer152.xpm,bxBaer160.xpm,
107
108        bxBall32.xpm,bxBall40.xpm,bxBall48.xpm,bxBall56.xpm,bxBall64.xpm,bxBall72.xpm,
109	bxBall80.xpm,bxBall88.xpm,bxBall96.xpm,bxBall104.xpm,bxBall112.xpm,bxBall120.xpm,
110	bxBall128.xpm,bxBall136.xpm,bxBall144.xpm,bxBall152.xpm,bxBall160.xpm,
111
112        bxBuch32.xpm,bxBuch40.xpm,bxBuch48.xpm,bxBuch56.xpm,bxBuch64.xpm,bxBuch72.xpm,
113	bxBuch80.xpm,bxBuch88.xpm,bxBuch96.xpm,bxBuch104.xpm,bxBuch112.xpm,bxBuch120.xpm,
114	bxBuch128.xpm,bxBuch136.xpm,bxBuch144.xpm,bxBuch152.xpm,bxBuch160.xpm,
115
116        bxLok32.xpm,bxLok40.xpm,bxLok48.xpm,bxLok56.xpm,bxLok64.xpm,bxLok72.xpm,
117	bxLok80.xpm,bxLok88.xpm,bxLok96.xpm,bxLok104.xpm,bxLok112.xpm,bxLok120.xpm,
118	bxLok128.xpm,bxLok136.xpm,bxLok144.xpm,bxLok152.xpm,bxLok160.xpm,
119
120        bxKlotz32.xpm,bxKlotz40.xpm,bxKlotz48.xpm,bxKlotz56.xpm,bxKlotz64.xpm,bxKlotz72.xpm,
121	bxKlotz80.xpm,bxKlotz88.xpm,bxKlotz96.xpm,bxKlotz104.xpm,bxKlotz112.xpm,bxKlotz120.xpm,
122	bxKlotz128.xpm,bxKlotz136.xpm,bxKlotz144.xpm,bxKlotz152.xpm,bxKlotz160.xpm
123
124
125      <<
126	startanimation = {
127  	  step = 1; animated=1;
128	};
129
130	stepper = {
131	  switch {
132	    step ==  1..16 -> {size = step;    step +=1;            }; ## 1..16
133	    step == 17..26 -> {size = 16;      step +=1;            }; ## 16
134	    step == 27..32 -> {size = 42-step; step +=1;            }; ## 15..10
135	    step == 33..38 -> {size = step-22; step +=1;            }; ## 11..16
136	    step == 39..53 -> {size = 54-step; step +=1;            }; ## 15..1
137	    step >= 54     -> {size = 0;       step = 0; animated=0;}; ## 0
138	  };
139	};
140
141        All = {
142	  switch {
143	    falling -> {file = kind*17;A*;};
144	    -> {
145		 file = kind*17+size;
146
147		 switch {
148		   size == 0     -> A*;
149		   size == 1..8 ->
150		     {
151		       A*@(-1,-1);
152		       B*@( 0,-1);
153		       C*@( 1,-1);
154		       D*@(-1, 0);
155		       E*@( 0, 0);
156		       F*@( 1, 0);
157		       G*@(-1, 1);
158		       H*@( 0, 1);
159		       I*@( 1, 1);
160		     };
161		   size > 8     ->
162		     {
163		       A*@(-2,-2);
164		       B*@(-1,-2);
165		       C*@( 0,-2);
166		       D*@( 1,-2);
167		       E*@( 2,-2);
168		       F*@(-2,-1);
169		       G*@(-1,-1);
170		       H*@( 0,-1);
171		       I*@( 1,-1);
172		       J*@( 2,-1);
173		       K*@(-2, 0);
174		       L*@(-1, 0);
175		       M*@( 0, 0);
176		       N*@( 1, 0);
177		       O*@( 2, 0);
178		       P*@(-2, 1);
179		       Q*@(-1, 1);
180		       R*@( 0, 1);
181		       S*@( 1, 1);
182		       T*@( 2, 1);
183		       U*@(-2, 2);
184		       V*@(-1, 2);
185		       W*@( 0, 2);
186		       X*@( 1, 2);
187		       Y*@( 2, 2);
188		     };
189		 };
190
191                 if loc_x==xx@@ && loc_y==yy@@ -> startanimation;
192
193		 stepper;
194	       };
195	  };
196      };
197    >>
198  }
199
200  Buchstabe = {pics = blBuchstabe.xpm <<Buchstabe=A*;>>}
201
202} # End of Xtradick
203
204