annotate import/myrrdin/spriteconsumer.d @ 5:f4b89014ad39

added moving figure stuff + animated sprites. not usable atm.
author fred@reichbier.de
date Sat, 19 Jul 2008 14:33:08 +0200
parents src/spriteconsumer.d@292df259cc85
children 510541745cd1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
1 /*
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
2 This file is part of myrrdin.
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
3
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
4 myrrdin is free software: you can redistribute it and/or modify
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
5 it under the terms of the GNU Lesser General Public License as
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
6 published by the Free Software Foundation, either version 3 of
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
7 the License, or (at your option) any later version.
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
8
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
9 myrrdin is distributed in the hope that it will be useful,
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
12 GNU Lesser General Public License for more details.
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
13
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
14 You should have received a copy of the GNU Lesser General Public
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
15 License along with myrrdin. If not, see <http://www.gnu.org/licenses/>.
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
16 */
f4b89014ad39 added moving figure stuff + animated sprites. not usable atm.
fred@reichbier.de
parents: 4
diff changeset
17
4
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
18 module spriteconsumer;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
19
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
20 import dsfml.window.all;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
21 import dsfml.system.all;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
22 import dsfml.graphics.all;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
23
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
24 import animatedsprite;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
25 import consumer;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
26 import renderer;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
27
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
28 class SpriteConsumer : Consumer {
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
29 private Sprite[] sprites;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
30
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
31 this(Renderer renderer) {
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
32 super(renderer);
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
33 }
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
34
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
35 void add_sprite(Sprite sprite) {
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
36 this.sprites ~= sprite;
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
37 }
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
38
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
39 void draw() {
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
40 foreach(Sprite sprite; this.sprites) {
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
41 this.renderer.draw(sprite);
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
42 }
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
43 }
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
44 }
292df259cc85 view + sprite consumers, animated sprite working
fred@reichbier.de
parents:
diff changeset
45