Changeset 10
- Timestamp:
- 12/07/07 10:27:40 (1 year ago)
- Files:
-
- trunk/guisterax/Makefile (modified) (1 diff)
- trunk/guisterax/guisterax (modified) (previous)
- trunk/guisterax/src (added)
- trunk/guisterax/src/actor.d (moved) (moved from trunk/guisterax/actor.d) (6 diffs)
- trunk/guisterax/src/asteroid.d (moved) (moved from trunk/guisterax/asteroid.d)
- trunk/guisterax/src/derelict (moved) (moved from trunk/guisterax/derelict)
- trunk/guisterax/src/display.d (moved) (moved from trunk/guisterax/display.d)
- trunk/guisterax/src/element.d (moved) (moved from trunk/guisterax/element.d)
- trunk/guisterax/src/energy.d (moved) (moved from trunk/guisterax/energy.d)
- trunk/guisterax/src/fire.d (moved) (moved from trunk/guisterax/fire.d)
- trunk/guisterax/src/font.d (moved) (moved from trunk/guisterax/font.d)
- trunk/guisterax/src/game.d (moved) (moved from trunk/guisterax/game.d)
- trunk/guisterax/src/gold.d (moved) (moved from trunk/guisterax/gold.d)
- trunk/guisterax/src/gun.d (moved) (moved from trunk/guisterax/gun.d)
- trunk/guisterax/src/hole.d (moved) (moved from trunk/guisterax/hole.d)
- trunk/guisterax/src/init.d (moved) (moved from trunk/guisterax/init.d)
- trunk/guisterax/src/main.d (moved) (moved from trunk/guisterax/main.d)
- trunk/guisterax/src/menu.d (moved) (moved from trunk/guisterax/menu.d)
- trunk/guisterax/src/metal.d (moved) (moved from trunk/guisterax/metal.d)
- trunk/guisterax/src/mine.d (moved) (moved from trunk/guisterax/mine.d)
- trunk/guisterax/src/saucer.d (moved) (moved from trunk/guisterax/saucer.d)
- trunk/guisterax/src/ship.d (moved) (moved from trunk/guisterax/ship.d)
- trunk/guisterax/src/shop.d (moved) (moved from trunk/guisterax/shop.d)
- trunk/guisterax/src/sound.d (moved) (moved from trunk/guisterax/sound.d)
- trunk/guisterax/src/sprite.d (moved) (moved from trunk/guisterax/sprite.d) (3 diffs)
- trunk/guisterax/src/stars.d (moved) (moved from trunk/guisterax/stars.d)
- trunk/guisterax/src/surface.d (moved) (moved from trunk/guisterax/surface.d)
- trunk/guisterax/src/timer.d (moved) (moved from trunk/guisterax/timer.d)
- trunk/guisterax/src/universe.d (moved) (moved from trunk/guisterax/universe.d)
- trunk/guisterax/src/utils.d (moved) (moved from trunk/guisterax/utils.d)
- trunk/guisterax/src/vect.d (moved) (moved from trunk/guisterax/vect.d)
- trunk/guisterax/src/wave.d (moved) (moved from trunk/guisterax/wave.d)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/guisterax/Makefile
r5 r10 4 4 all: release 5 5 6 release: *.d7 gdc -frelease -o guisterax *.d derelict/util/*.d derelict/sdl/*.d -Iderelict -ldl6 release: src/*.d 7 gdc -frelease -o guisterax src/*.d src/derelict/util/*.d src/derelict/sdl/*.d -Isrc/ -Isrc/derelict -ldl 8 8 9 debug: *.d10 gdc -fdebug -o guisterax *.d derelict/util/*.d derelict/sdl/*.d -Iderelict -ldl9 debug: src/*.d 10 gdc -fdebug -o guisterax src/*.d src/derelict/util/*.d src/derelict/sdl/*.d -Isrc/ -Isrc/derelict -ldl 11 11 12 12 clean: trunk/guisterax/src/actor.d
r7 r10 31 31 { 32 32 protected: 33 Actor[] m_children;33 34 34 Actor[] m_next_children; 35 bool m_alive = true;35 36 36 public: 37 37 Actor parent; 38 Actor[] children; 39 bool alive = true; 40 38 41 public: 39 Actor[] children() {return m_children;}40 41 42 T[] children_as(T)() { 42 43 bool is_t(in Actor a) {return cast(T)a !is null;} … … 53 54 Universe universe() {return parent_as!(Universe)();} 54 55 55 bool alive() {return m_alive;} 56 void kill() {m_alive = false;} 56 void kill() {alive = false;} 57 57 58 58 this() {} … … 74 74 75 75 void iter(float dt = 1) { 76 foreach(a; m_children) {76 foreach(a; children) { 77 77 a.iter(dt); 78 78 } … … 80 80 81 81 void move(float dt = 1) { 82 foreach(a; m_children) {82 foreach(a; children) { 83 83 a.move(dt); 84 84 } … … 87 87 void update() { 88 88 // update actor list 89 bool isalive(in Actor a) {return a.alive ();}90 m_children = filter!(Actor)(m_next_children, &isalive);91 m_next_children = m_children.dup;92 foreach(a; m_children) {89 bool isalive(in Actor a) {return a.alive;} 90 children = filter!(Actor)(m_next_children, &isalive); 91 m_next_children = children.dup; 92 foreach(a; children) { 93 93 a.update(); 94 94 } … … 96 96 97 97 void draw(Display disp, in Vect pos = Vect()) { 98 foreach(a; m_children) {98 foreach(a; children) { 99 99 a.draw(disp, pos); 100 100 } trunk/guisterax/src/sprite.d
r7 r10 34 34 { 35 35 private: 36 Vect m_pos = Vect();37 36 Surface[] m_surfs; 38 37 int m_index; 39 38 public: 39 Vect pos = Vect(); 40 40 public: 41 // TODO: replace by public attribute42 Vect pos() {return m_pos;}43 void pos(in Vect v) {m_pos = v;}44 41 45 42 void index(uint i) {m_index = i % m_surfs.length;} … … 50 47 this(Surface[] surfs, in Vect pos = Vect()) { 51 48 m_surfs = surfs; 52 m_pos = pos;49 this.pos = pos; 53 50 } 54 51 … … 58 55 59 56 void draw(Display disp, in Vect pos = Vect()) { 60 m_surfs[m_index].draw(disp, pos + m_pos);57 m_surfs[m_index].draw(disp, pos + this.pos); 61 58 } 62 59
