Add terminal

This commit is contained in:
Miloslav Číž 2020-02-22 15:17:22 +01:00
parent 527f9650b9
commit 60ac1d37f4
4 changed files with 35 additions and 8 deletions

BIN
assets/item_terminal.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 861 B

View File

@ -558,7 +558,29 @@ SFG_PROGRAM_MEMORY uint8_t SFG_itemSprites[][SFG_TEXTURE_STORE_SIZE] =
22,104,16,0,22,129,20,65,0,0,0,1,56,17,0,0,19,129,16,0,1,17,17,16,0,0,0,0,17,16,
0,0,1,17,0,0,0,0,0,0
},
{ // 8, access card
{ // 8, computer terminal
175,0,1,85,5,4,23,9,6,26,80,65,84,161,194,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,17,0,1,17,17,17,17,17,17,16,0,0,0,0,0,1,132,0,22,102,102,102,102,
102,102,97,1,17,0,0,221,209,133,1,99,51,51,51,51,51,53,187,27,75,17,17,221,17,
69,22,57,241,17,17,17,17,251,83,54,74,118,109,211,106,69,22,63,148,68,68,68,73,
21,51,54,74,125,221,51,25,69,22,49,66,34,34,34,36,19,68,54,90,221,124,60,169,69,
21,177,66,226,226,34,36,19,136,54,90,115,51,202,137,69,22,49,66,226,34,34,36,19,
136,54,90,124,199,168,137,69,22,49,66,226,226,34,36,243,136,54,90,17,122,136,73,
69,22,49,66,226,34,34,36,147,136,54,90,88,136,68,89,69,22,49,66,226,34,34,36,
147,136,54,90,148,68,85,89,69,22,49,66,34,34,34,36,147,136,54,90,181,85,85,89,
69,22,49,78,238,238,238,228,147,136,54,90,185,153,149,89,69,22,49,66,34,34,34,
36,147,136,54,90,185,153,153,153,69,22,49,66,34,34,34,36,252,136,54,90,17,122,
187,153,85,22,49,66,34,34,34,36,19,136,54,90,124,199,171,187,69,21,177,66,34,34,
34,36,28,136,54,90,115,51,202,187,85,22,49,66,34,34,34,36,19,68,54,90,115,204,
60,171,149,22,63,148,68,68,68,73,21,51,54,74,115,204,51,27,89,22,57,241,17,17,
17,17,251,83,54,74,119,119,119,122,149,1,51,51,51,51,51,51,53,187,27,75,17,17,
17,17,153,0,23,119,119,119,119,119,119,113,1,17,0,0,0,1,153,0,1,17,17,17,17,17,
17,16,0,0,0,0,0,1,187,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0
},
{ // 9, access card
175,0,21,45,44,23,46,2,19,34,69,22,68,60,131,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,17,17,17,17,17,17,0,0,0,0,0,0,0,0,1,
68,17,24,102,101,86,97,0,0,0,0,0,0,0,0,1,68,17,24,102,85,86,101,16,0,0,0,0,0,0,

View File

@ -95,15 +95,16 @@ typedef struct
#define SFG_LEVEL_ELEMENT_TREE 0x06
#define SFG_LEVEL_ELEMENT_FINISH 0x07
#define SFG_LEVEL_ELEMENT_TELEPORT 0x08
#define SFG_LEVEL_ELEMENT_CARD0 0x09 ///< Access card, unlocks doors with lock.
#define SFG_LEVEL_ELEMENT_CARD1 0x0a
#define SFG_LEVEL_ELEMENT_CARD2 0x0b
#define SFG_LEVEL_ELEMENT_LOCK0 0x0c /**< Special level element that must be
#define SFG_LEVEL_ELEMENT_TERMINAL 0x09
#define SFG_LEVEL_ELEMENT_CARD0 0x0a ///< Access card, unlocks doors with lock.
#define SFG_LEVEL_ELEMENT_CARD1 0x0b
#define SFG_LEVEL_ELEMENT_CARD2 0x0c
#define SFG_LEVEL_ELEMENT_LOCK0 0x0d /**< Special level element that must be
placed on a tile with door. This door is
then unlocked by taking the corresponding
access card. */
#define SFG_LEVEL_ELEMENT_LOCK1 0x0d
#define SFG_LEVEL_ELEMENT_LOCK2 0x0e
#define SFG_LEVEL_ELEMENT_LOCK1 0x0e
#define SFG_LEVEL_ELEMENT_LOCK2 0x0f
/*
Monsters have lower 4 bits zero and are only distinguished by the 4 upper
@ -301,7 +302,7 @@ SFG_PROGRAM_MEMORY SFG_Level SFG_levels[SFG_NUMBER_OF_LEVELS] =
{SFG_LEVEL_ELEMENT_FINISH, {12, 16}}, {SFG_LEVEL_ELEMENT_NONE, {0, 0}},
{SFG_LEVEL_ELEMENT_TELEPORT, {11, 12}}, {SFG_LEVEL_ELEMENT_TELEPORT, {17, 20}},
{SFG_LEVEL_ELEMENT_TELEPORT, {20, 40}}, {SFG_LEVEL_ELEMENT_NONE, {0, 0}},
{SFG_LEVEL_ELEMENT_NONE, {0, 0}}, {SFG_LEVEL_ELEMENT_NONE, {0, 0}},
{SFG_LEVEL_ELEMENT_TERMINAL, {11, 25}}, {SFG_LEVEL_ELEMENT_TERMINAL, {11, 26}},
{SFG_LEVEL_ELEMENT_NONE, {0, 0}}, {SFG_LEVEL_ELEMENT_NONE, {0, 0}},
{SFG_LEVEL_ELEMENT_NONE, {0, 0}}, {SFG_LEVEL_ELEMENT_NONE, {0, 0}},
{SFG_LEVEL_ELEMENT_NONE, {0, 0}}, {SFG_LEVEL_ELEMENT_NONE, {0, 0}},

4
main.c
View File

@ -1945,6 +1945,10 @@ void SFG_getLevelElementSprite(
*spriteSize = 2;
break;
case SFG_LEVEL_ELEMENT_TERMINAL:
*spriteSize = 1;
break;
case SFG_LEVEL_ELEMENT_TELEPORT:
case SFG_LEVEL_ELEMENT_FINISH:
*spriteSize = 3;