- [NEW] Ajuda en la consola de PoolOS

- [FIX] Si no se te la bolsa i s'intenta pillar una part, no ha de petar el joc
- Algún gràfic més.
- Més habitacions
This commit is contained in:
2024-09-24 09:24:47 +02:00
parent 6dc59af774
commit eb86874244
8 changed files with 562 additions and 14 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
data/draft.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -22,7 +22,8 @@ actor{
pos: 32 24 28 pos: 32 24 28
size: 8 8 8 size: 8 8 8
orient: ZP orient: ZP
flags: PUSHABLE MOVING DEADLY INERTIA flags: PUSHABLE REACTIVE MOVING DEADLY INERTIA
react-mask: XP XN YP YN ZP ZN
movement: Z movement: Z
} }
@@ -34,7 +35,8 @@ actor{
pos: 24 32 9 pos: 24 32 9
size: 8 8 8 size: 8 8 8
orient: ZN orient: ZN
flags: PUSHABLE MOVING DEADLY INERTIA flags: PUSHABLE REACTIVE MOVING DEADLY INERTIA
react-mask: XP XN YP YN ZP ZN
movement: Z movement: Z
} }
@@ -46,7 +48,8 @@ actor{
pos: 32 32 21 pos: 32 32 21
size: 8 8 8 size: 8 8 8
orient: ZN orient: ZN
flags: PUSHABLE MOVING DEADLY INERTIA flags: PUSHABLE REACTIVE MOVING DEADLY INERTIA
react-mask: XP XN YP YN ZP ZN
movement: Z movement: Z
} }
@@ -58,7 +61,8 @@ actor{
pos: 24 24 15 pos: 24 24 15
size: 8 8 8 size: 8 8 8
orient: ZP orient: ZP
flags: PUSHABLE MOVING DEADLY INERTIA flags: PUSHABLE REACTIVE MOVING DEADLY INERTIA
react-mask: XP XN YP YN ZP ZN
movement: Z movement: Z
} }

View File

@@ -138,6 +138,32 @@ actor{
movement: CW movement: CW
} }
actor{
name: ROOMBA-00
bmp: caixes.gif
bmp-rect: 160 0 32 32
bmp-offset: 0 34
pos: 24 0 0
size: 8 8 2
orient: XN
flags: REACTIVE MOVING DEADLY
react-mask: XP XN YP YN ZP ZN
movement: RAND
}
actor{
name: ROOMBA-01
bmp: caixes.gif
bmp-rect: 160 0 32 32
bmp-offset: 0 34
pos: 24 48 0
size: 8 8 2
orient: YP
flags: REACTIVE MOVING DEADLY
react-mask: XP XN YP YN ZP ZN
movement: RAND
}
actor{ actor{
name: TAULA-01 name: TAULA-01
bmp: caixes.gif bmp: caixes.gif

View File

@@ -1,9 +1,273 @@
width: 2 width: 3
height: 2 height: 2
door-height-yp: 0 door-height-yp: 0
color: YELLOW color: YELLOW
floor-texture: 0 floor-texture: 4
wall-texture: 0 wall-texture: 3
door-texture: 0 door-texture: 1
under-door-texture: 0 under-door-texture: 0
exit-yp: 10 exit-yp: 10
actor{
name: GAT-BATMAN
bmp: gat.gif
bmp-rect: 0 0 24 28
bmp-offset: -4 32
pos: 8 16 0
size: 8 8 8
orient: XP
anim-wait: 1
flags: REACTIVE MOVING ANIMATED ORIENTABLE DEADLY
react-mask: XP XN YP YN ZP ZN
movement: X
}
actor{
name: GAT-ROBIN
bmp: gat2.gif
bmp-rect: 0 0 24 28
bmp-offset: -4 32
pos: 40 32 0
size: 8 8 8
orient: XN
anim-wait: 1
flags: REACTIVE MOVING ANIMATED ORIENTABLE DEADLY
react-mask: XP XN YP YN ZP ZN
movement: X
}
actor{
name: ROOMBA
bmp: caixes.gif
bmp-rect: 160 0 32 32
bmp-offset: 0 34
pos: 56 24 0
size: 8 8 2
orient: YN
flags: REACTIVE MOVING DEADLY
react-mask: XP XN YP YN ZP ZN
movement: Y
}
actor{
name: S-PANTS
bmp: objectes.gif
bmp-rect: 167 22 18 23
bmp-offset: -7 27
pos: 0 16 0
size: 4 4 4
anim-cycle: SEQ
anim-wait: 2
flags: SPECIAL
movement: CW
}
actor{
name: TRANSPA-00
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 0 8 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: 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: 24 8 0
size: 8 8 6
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
}
actor{
name: TRANSPA-04
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 48 8 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-05
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 48 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-06
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 40 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-07
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 32 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-08
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 24 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-09
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 16 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-10
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 0 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-11
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 8 24 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-12
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 0 8 6
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-13
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 8 40 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-14
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 16 40 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-15
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 0 8 12
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-16
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 32 40 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-17
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 40 40 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-18
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 40 48 0
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-19
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 0 24 6
size: 8 8 6
movement: CW
}
actor{
name: TRANSPA-20
bmp: altres.gif
bmp-rect: 0 160 32 32
bmp-offset: 0 32
pos: 0 24 12
size: 8 8 6
movement: CW
}

View File

@@ -1,5 +1,5 @@
width: 2 width: 3
height: 2 height: 1
door-height-yp: 0 door-height-yp: 0
color: PURPLE color: PURPLE
floor-texture: 0 floor-texture: 0
@@ -7,3 +7,218 @@ wall-texture: 0
door-texture: 0 door-texture: 0
under-door-texture: 0 under-door-texture: 0
exit-yp: 15 exit-yp: 15
actor{
name: BOX-A
bmp: caixes.gif
bmp-rect: 0 0 32 32
bmp-offset: 0 32
pos: 25 24 0
size: 8 8 8
flags: PICKABLE PUSHABLE
movement: CW
}
actor{
name: BOX-B
bmp: caixes.gif
bmp-rect: 32 0 32 32
bmp-offset: 0 32
pos: 40 35 0
size: 8 8 8
flags: PICKABLE PUSHABLE
movement: CW
}
actor{
name: P-PIPE
bmp: objectes.gif
bmp-rect: 16 64 16 32
bmp-offset: -8 36
pos: 0 14 18
size: 4 4 4
anim-cycle: SEQ
anim-wait: 2
flags: SPECIAL
movement: CW
}
actor{
name: TRANSPA-00
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 0 16 0
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-01
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 8 16 0
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-02
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 16 16 0
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-05
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 40 16 0
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-06
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 48 16 0
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-07
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 56 16 0
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-08
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 0 16 6
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-09
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 8 16 6
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-10
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 16 16 6
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-11
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 0 16 12
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-12
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 8 16 12
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-13
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 40 16 6
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-14
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 48 16 6
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-15
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 56 16 6
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-16
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 16 16 12
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-17
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 40 16 12
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-18
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 48 16 12
size: 8 5 6
movement: CW
}
actor{
name: TRANSPA-19
bmp: altres.gif
bmp-rect: 21 101 26 24
bmp-offset: -6 27
pos: 56 16 12
size: 8 5 6
movement: CW
}

View File

@@ -535,8 +535,12 @@ namespace actor
hero::collectBooster(act->name[1]-48, (act->name[3]-48)*10+(act->name[4]-48)); hero::collectBooster(act->name[1]-48, (act->name[3]-48)*10+(act->name[4]-48));
} else if (act->name[0]=='S') { // Es un skill } else if (act->name[0]=='S') { // Es un skill
hero::giveSkill(&act->name[2]); hero::giveSkill(&act->name[2]);
} else if ( (act->name[0]=='P') && (hero::getSkills()&SKILL_BAG) ) { // Es una part } else if (act->name[0]=='P') {
hero::pickPart(&act->name[2]); if (hero::getSkills()&SKILL_BAG) { // Es una part
hero::pickPart(&act->name[2]);
} else {
return result;
}
} else { } else {
SDL_assert(false); SDL_assert(false);
} }

View File

@@ -134,9 +134,10 @@ namespace console
#define CMD_EXIT 4 #define CMD_EXIT 4
#define CMD_SHOW 5 #define CMD_SHOW 5
#define CMD_HIDE 6 #define CMD_HIDE 6
#define NUM_CMDS 7 #define CMD_HELP 7
#define NUM_CMDS 8
const char *command_text[NUM_CMDS] = { "GIVE", "DROP", "GOTO", "MOVE", "EXIT", "SHOW", "HIDE" }; const char *command_text[NUM_CMDS] = { "GIVE", "DROP", "GOTO", "MOVE", "EXIT", "SHOW", "HIDE", "HELP" };
#define PARAM_UNKNOWN -1 #define PARAM_UNKNOWN -1
#define PARAM_RUN 0 #define PARAM_RUN 0
@@ -282,6 +283,40 @@ namespace console
debug::disable(value); debug::disable(value);
} }
break; break;
case CMD_HELP:
if (!tokens[1]) {
strcpy(msg, "GIVE DROP GOTO MOVE EXIT SHOW HIDE HELP");
} else {
int command = getCommand();
switch (command)
{
case CMD_UNKNOWN:
strcpy(msg, "Unknown command, cannot help.");
break;
case CMD_GIVE:
strcpy(msg, "RUN GOD JUMP LIVE SHOES GLOVES PANTS BAG FILTER PUMP TIMER SALT PIPE ELBOW");
break;
case CMD_DROP:
strcpy(msg, "RUN GOD JUMP LIVE SHOES GLOVES PANTS BAG FILTER PUMP TIMER SALT PIPE ELBOW");
break;
case CMD_GOTO:
strcpy(msg, "PARAM: Number of room to go.");
break;
case CMD_MOVE:
strcpy(msg, "PARAMS: Axis Number. Exemple: MOVE X 16, MOVE Z 4...");
break;
case CMD_EXIT:
strcpy(msg, "Exits the game.");
break;
case CMD_SHOW:
strcpy(msg, "NOTHING ACTOR-POS");
break;
case CMD_HIDE:
strcpy(msg, "NOTHING ACTOR-POS");
break;
}
}
} }
cmd_size=0; cmd_size=0;
cmd[cmd_size] = '\0'; cmd[cmd_size] = '\0';