diff --git a/data/altres.gif b/data/altres.gif index f58fb2f..ecbb187 100644 Binary files a/data/altres.gif and b/data/altres.gif differ diff --git a/data/rooms/13.txt b/data/rooms/13.txt index d0d9d71..dd9ae28 100644 --- a/data/rooms/13.txt +++ b/data/rooms/13.txt @@ -4,7 +4,7 @@ door-height-xn: 1 door-height-yn: 1 color: CYAN floor-texture: 0 -wall-texture: 0 +wall-texture: 2 door-texture: 0 under-door-texture: 0 exit-xn: 12 @@ -12,11 +12,33 @@ exit-yn: 14 exit-zn: 18 actor{ - name: LIFT18 + name: LIFT13 bmp: caixes.gif bmp-rect: 160 128 32 32 bmp-offset: 0 32 - pos: 8 8 0 + pos: 8 32 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: LIFT14 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 8 40 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: LIFT16 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 8 24 0 size: 8 8 4 orient: ZP movement: Z @@ -34,23 +56,23 @@ actor{ } actor{ - name: LIFT19 + name: LIFT18 bmp: caixes.gif bmp-rect: 160 128 32 32 bmp-offset: 0 32 - pos: 16 8 0 + pos: 8 8 0 size: 8 8 4 orient: ZP movement: Z } actor{ - name: LIFT31 + name: LIFT19 bmp: caixes.gif - bmp-rect: 96 160 32 32 + bmp-rect: 160 128 32 32 bmp-offset: 0 32 - pos: 16 16 0 - size: 8 8 8 + pos: 16 8 0 + size: 8 8 4 orient: ZP movement: Z } @@ -66,17 +88,6 @@ actor{ movement: Z } -actor{ - name: LIFT32 - bmp: caixes.gif - bmp-rect: 96 160 32 32 - bmp-offset: 0 32 - pos: 24 16 0 - size: 8 8 8 - orient: ZP - movement: Z -} - actor{ name: LIFT21 bmp: caixes.gif @@ -88,17 +99,6 @@ actor{ movement: Z } -actor{ - name: LIFT33 - bmp: caixes.gif - bmp-rect: 96 160 32 32 - bmp-offset: 0 32 - pos: 32 16 0 - size: 8 8 8 - orient: ZP - movement: Z -} - actor{ name: LIFT22 bmp: caixes.gif @@ -110,17 +110,6 @@ actor{ movement: Z } -actor{ - name: LIFT34 - bmp: caixes.gif - bmp-rect: 96 160 32 32 - bmp-offset: 0 32 - pos: 40 16 0 - size: 8 8 8 - orient: ZP - movement: Z -} - actor{ name: LIFT23 bmp: caixes.gif @@ -132,72 +121,6 @@ actor{ movement: Z } -actor{ - name: LIFT35 - bmp: caixes.gif - bmp-rect: 96 160 32 32 - bmp-offset: 0 32 - pos: 48 16 0 - size: 8 8 8 - orient: ZP - movement: Z -} - -actor{ - name: LIFT16 - bmp: caixes.gif - bmp-rect: 160 128 32 32 - bmp-offset: 0 32 - pos: 8 24 0 - size: 8 8 4 - orient: ZP - movement: Z -} - -actor{ - name: LIFT30 - bmp: caixes.gif - bmp-rect: 96 160 32 32 - bmp-offset: 0 32 - pos: 16 24 0 - size: 8 8 8 - orient: ZP - movement: Z -} - -actor{ - name: LIFT13 - bmp: caixes.gif - bmp-rect: 160 128 32 32 - bmp-offset: 0 32 - pos: 8 32 0 - size: 8 8 4 - orient: ZP - movement: Z -} - -actor{ - name: LIFT29 - bmp: caixes.gif - bmp-rect: 96 160 32 32 - bmp-offset: 0 32 - pos: 16 32 0 - size: 8 8 8 - orient: ZP - movement: Z -} - -actor{ - name: LIFT14 - bmp: caixes.gif - bmp-rect: 160 128 32 32 - bmp-offset: 0 32 - pos: 8 40 0 - size: 8 8 4 - orient: ZP - movement: Z -} - actor{ name: LIFT28 bmp: caixes.gif @@ -210,18 +133,84 @@ actor{ } actor{ - name: LIFT15 + name: LIFT29 bmp: caixes.gif - bmp-rect: 160 128 32 32 + bmp-rect: 96 160 32 32 bmp-offset: 0 32 - pos: 8 48 0 - size: 8 8 4 + pos: 16 32 0 + size: 8 8 8 orient: ZP movement: Z } actor{ - name: LIFT27 + name: LIFT30 + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 16 24 0 + size: 8 8 8 + orient: ZP + movement: Z +} + +actor{ + name: LIFT31 + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 16 16 0 + size: 8 8 8 + orient: ZP + movement: Z +} + +actor{ + name: LIFT32 + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 24 16 0 + size: 8 8 8 + orient: ZP + movement: Z +} + +actor{ + name: LIFT33 + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 32 16 0 + size: 8 8 8 + orient: ZP + movement: Z +} + +actor{ + name: LIFT34 + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 40 16 0 + size: 8 8 8 + orient: ZP + movement: Z +} + +actor{ + name: LIFT35 + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 48 16 0 + size: 8 8 8 + orient: ZP + movement: Z +} + +actor{ + name: PLATF bmp: caixes.gif bmp-rect: 96 160 32 32 bmp-offset: 0 32 @@ -230,3 +219,14 @@ actor{ orient: ZP movement: Z } + +actor{ + name: PLATH + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 8 48 0 + size: 8 8 4 + orient: ZP + movement: Z +} diff --git a/data/rooms/17.txt b/data/rooms/17.txt index ba9b374..a281fcc 100644 --- a/data/rooms/17.txt +++ b/data/rooms/17.txt @@ -1,5 +1,6 @@ -width: 3 +width: 0 height: 3 +door-height-xn: 1 door-height-yn: 0 color: CYAN floor-texture: 0 @@ -9,94 +10,21 @@ under-door-texture: 0 exit-yn: 9 actor{ - name: BLOCMATA + name: FINESTRA-00 bmp: altres.gif - bmp-rect: 0 133 32 27 - bmp-offset: 0 27 - pos: 16 16 0 - size: 8 8 6 - flags: REACTIVE DEADLY - react-mask: XP XN YP YN ZP ZN + bmp-rect: 48 76 18 32 + bmp-offset: 0 39 + pos: 23 8 4 + size: 1 1 9 movement: CW } actor{ - name: BUBBLE + name: FINESTRA-01 bmp: altres.gif - bmp-rect: 20 75 28 26 - bmp-offset: -2 28 - pos: 56 56 0 - size: 8 8 8 - flags: PUSHABLE INERTIA - movement: CW -} - -actor{ - name: CONV-XP - bmp: caixes.gif - bmp-rect: 0 128 32 32 - bmp-offset: 0 32 - pos: 0 0 0 - size: 8 8 4 - orient: XP - anim-cycle: MIN - flags: REACTIVE ANIMATED ORIENTABLE - react-mask: ZN - react-push: XP -} - -actor{ - name: GAT-BATMAN - bmp: gat.gif - bmp-rect: 0 0 24 28 - bmp-offset: -4 32 - pos: 48 1 0 - size: 8 8 8 - orient: YN - anim-wait: 1 - flags: REACTIVE MOVING ANIMATED ORIENTABLE DEADLY - react-mask: XP XN YP YN ZP ZN - movement: CW -} - -actor{ - name: SPECTRUM - bmp: caixes.gif - bmp-rect: 128 0 32 32 - bmp-offset: -4 34 - pos: 24 40 8 - size: 8 6 2 - flags: PUSHABLE - movement: CW -} - -actor{ - name: TAULA-A - bmp: caixes.gif - bmp-rect: 128 32 32 32 - bmp-offset: 0 32 - pos: 16 40 0 - size: 8 8 8 - movement: CW -} - -actor{ - name: TAULA-B - bmp: caixes.gif - bmp-rect: 160 32 32 32 - bmp-offset: 0 32 - pos: 24 40 0 - size: 8 8 8 - movement: CW -} - -actor{ - name: TV - bmp: caixes.gif - bmp-rect: 32 64 32 32 - bmp-offset: -4 34 - pos: 16 40 8 - size: 8 6 8 - flags: PUSHABLE + bmp-rect: 84 76 18 32 + bmp-offset: 0 39 + pos: 23 48 4 + size: 1 1 9 movement: CW } diff --git a/data/rooms/18.txt b/data/rooms/18.txt index ec60e56..67ba25d 100644 --- a/data/rooms/18.txt +++ b/data/rooms/18.txt @@ -1,8 +1,12 @@ width: 2 height: 2 -color: CYAN -floor-texture: 0 -wall-texture: 0 -door-texture: 0 +door-height-xn: 0 +door-height-yn: 0 +color: PURPLE +floor-texture: 1 +wall-texture: 13 +door-texture: 7 under-door-texture: 0 +exit-xn: 21 +exit-yn: 19 exit-zp: 13 diff --git a/data/rooms/19.txt b/data/rooms/19.txt new file mode 100644 index 0000000..065979c --- /dev/null +++ b/data/rooms/19.txt @@ -0,0 +1,229 @@ +width: 3 +height: 1 +door-height-yp: 0 +door-height-yn: 0 +color: YELLOW +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-yp: 18 +exit-yn: 20 + +actor{ + name: BUBBLE-00 + bmp: altres.gif + bmp-rect: 20 75 28 26 + bmp-offset: -2 28 + pos: 56 40 6 + size: 8 8 8 + flags: PUSHABLE INERTIA + movement: CW +} + +actor{ + name: BUBBLE-01 + bmp: altres.gif + bmp-rect: 20 75 28 26 + bmp-offset: -2 28 + pos: 0 40 6 + size: 8 8 8 + flags: PUSHABLE INERTIA + movement: CW +} + +actor{ + name: CUADRO-00 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 24 24 8 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: CUADRO-01 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 16 24 10 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: CUADRO-02 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 8 24 12 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: CUADRO-03 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 0 24 14 + size: 8 2 8 + orient: ZN + flags: MOVING DEADLY + movement: Z +} + +actor{ + name: CUADRO-04 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 32 24 6 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: CUADRO-05 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 40 24 4 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: CUADRO-06 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 48 24 2 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: CUADRO-07 + bmp: altres.gif + bmp-rect: 101 108 17 24 + bmp-offset: -11 29 + pos: 56 24 0 + size: 8 2 8 + orient: ZN + flags: MOVING + movement: Z +} + +actor{ + name: INVISI-00 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 24 24 20 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-01 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 16 24 23 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-02 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 8 24 28 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-03 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 0 24 24 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-04 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 32 24 24 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-05 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 40 24 18 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-06 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 48 24 28 + size: 8 8 8 + movement: CW +} + +actor{ + name: INVISI-07 + bmp: caixes.gif + bmp-rect: 128 0 16 13 + bmp-offset: 0 32 + pos: 56 24 22 + size: 8 8 8 + movement: CW +} + +actor{ + name: TRANSPA-00 + bmp: altres.gif + bmp-rect: 0 160 32 32 + bmp-offset: 0 32 + pos: 56 40 0 + size: 8 8 6 + movement: CW +} + +actor{ + name: TRANSPA-01 + bmp: altres.gif + bmp-rect: 0 160 32 32 + bmp-offset: 0 32 + pos: 0 40 0 + size: 8 8 6 + movement: CW +} diff --git a/data/rooms/20.txt b/data/rooms/20.txt new file mode 100644 index 0000000..0bf6ab4 --- /dev/null +++ b/data/rooms/20.txt @@ -0,0 +1,9 @@ +width: 2 +height: 2 +door-height-yp: 0 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-yp: 19 diff --git a/data/rooms/21.txt b/data/rooms/21.txt new file mode 100644 index 0000000..f1d4fe5 --- /dev/null +++ b/data/rooms/21.txt @@ -0,0 +1,122 @@ +width: 2 +height: 2 +door-height-xp: 1 +door-height-xn: 1 +door-height-yp: 1 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-xp: 18 +exit-xn: 22 +exit-yp: 24 +exit-zn: 25 + +actor{ + name: PLATH-00 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 8 24 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: PLATH-01 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 8 32 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: PLATH-02 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 32 48 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: PLATH-03 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 24 48 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: PLATH-04 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 48 32 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: PLATH-05 + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 48 24 0 + size: 8 8 4 + orient: ZP + movement: Z +} + +actor{ + name: TRANSPA-00 + bmp: altres.gif + bmp-rect: 0 160 32 32 + bmp-offset: 0 32 + pos: 24 8 0 + size: 8 8 6 + flags: DISAPPEAR + movement: CW +} + +actor{ + name: TRANSPA-01 + bmp: altres.gif + bmp-rect: 0 160 32 32 + bmp-offset: 0 32 + pos: 16 8 0 + size: 8 8 6 + movement: CW +} + +actor{ + name: TRANSPA-02 + bmp: altres.gif + bmp-rect: 0 160 32 32 + bmp-offset: 0 32 + pos: 32 8 0 + size: 8 8 6 + flags: DISAPPEAR + movement: CW +} + +actor{ + name: TRANSPA-03 + bmp: altres.gif + bmp-rect: 0 160 32 32 + bmp-offset: 0 32 + pos: 40 8 0 + size: 8 8 6 + movement: CW +} diff --git a/data/rooms/22.txt b/data/rooms/22.txt new file mode 100644 index 0000000..dd8380f --- /dev/null +++ b/data/rooms/22.txt @@ -0,0 +1,11 @@ +width: 2 +height: 2 +door-height-xp: 0 +door-height-yp: 0 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-xp: 21 +exit-yp: 23 diff --git a/data/rooms/23.txt b/data/rooms/23.txt new file mode 100644 index 0000000..fc89005 --- /dev/null +++ b/data/rooms/23.txt @@ -0,0 +1,9 @@ +width: 2 +height: 2 +door-height-yn: 0 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-yn: 22 diff --git a/data/rooms/24.txt b/data/rooms/24.txt new file mode 100644 index 0000000..8922db9 --- /dev/null +++ b/data/rooms/24.txt @@ -0,0 +1,13 @@ +width: 2 +height: 2 +door-height-xp: 0 +door-height-yp: 0 +door-height-yn: 4 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-xp: 25 +exit-yp: 26 +exit-yn: 21 diff --git a/data/rooms/25.txt b/data/rooms/25.txt new file mode 100644 index 0000000..064c183 --- /dev/null +++ b/data/rooms/25.txt @@ -0,0 +1,10 @@ +width: 2 +height: 2 +door-height-xn: 4 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-xn: 24 +exit-zp: 21 diff --git a/data/rooms/26.txt b/data/rooms/26.txt new file mode 100644 index 0000000..575406c --- /dev/null +++ b/data/rooms/26.txt @@ -0,0 +1,9 @@ +width: 2 +height: 2 +door-height-yn: 0 +color: CYAN +floor-texture: 0 +wall-texture: 0 +door-texture: 0 +under-door-texture: 0 +exit-yn: 24 diff --git a/data/templates.txt b/data/templates.txt index 2b0a0f0..7511c76 100644 --- a/data/templates.txt +++ b/data/templates.txt @@ -163,6 +163,28 @@ category{ movement: CW } + actor{ + name: PLATH + bmp: caixes.gif + bmp-rect: 160 128 32 32 + bmp-offset: 0 32 + pos: 8 48 0 + size: 8 8 4 + orient: ZP + movement: Z + } + + actor{ + name: PLATF + bmp: caixes.gif + bmp-rect: 96 160 32 32 + bmp-offset: 0 32 + pos: 16 48 0 + size: 8 8 8 + orient: ZP + movement: Z + } + } category{ diff --git a/source/actor.cpp b/source/actor.cpp index 2476bd3..dcf8c85 100644 --- a/source/actor.cpp +++ b/source/actor.cpp @@ -531,7 +531,7 @@ namespace actor } if (source->flags & FLAG_DEADLY) { - result |= PUSH_KILL; + act->push |= PUSH_KILL; } if (source->flags&FLAG_HERO)