feat: the exit works :D

This commit is contained in:
mcolonna 2024-04-18 17:16:53 +02:00
parent 0e745f82b3
commit d3c7d8c08f
36 changed files with 3645 additions and 51 deletions

View file

@ -3,7 +3,7 @@ NAME = so_long
SRCS = src/
INCLUDES = includes/
CODE = $(addprefix main/, \
main error env input timedloop \
main error env input timedloop levels \
) \
$(addprefix display/, \
data_assets data_sprites \

View file

@ -0,0 +1,328 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 172 2 ",
" c black",
". c #010101",
"X c #020202",
"o c gray1",
"O c #040404",
"+ c gray2",
"@ c #060606",
"# c #070707",
"$ c gray3",
"% c #090909",
"& c gray4",
"* c #0B0B0B",
"= c #0C0C0C",
"- c gray5",
"; c #0E0E0E",
": c gray6",
"> c #101010",
", c #111111",
"< c gray7",
"1 c #131313",
"2 c #161616",
"3 c #181818",
"4 c #191919",
"5 c gray10",
"6 c #1B1B1B",
"7 c gray11",
"8 c #1D1D1D",
"9 c #1E1E1E",
"0 c gray12",
"q c #202020",
"w c gray13",
"e c #222222",
"r c #232323",
"t c gray14",
"y c gray15",
"u c #272727",
"i c #282828",
"p c #2A2A2A",
"a c #2D2D2D",
"s c gray18",
"d c gray19",
"f c #323232",
"g c gray20",
"h c #353535",
"j c gray21",
"k c #3A3A3A",
"l c gray23",
"z c #3C3C3C",
"x c gray24",
"c c #3E3E3E",
"v c gray25",
"b c #434343",
"n c #444444",
"m c #464646",
"M c gray28",
"N c #494949",
"B c gray29",
"V c #4B4B4B",
"C c #4C4C4C",
"Z c #4E4E4E",
"A c gray32",
"S c gray33",
"D c #555555",
"F c gray34",
"G c #585858",
"H c gray35",
"J c #5A5A5A",
"K c #5B5B5B",
"L c gray36",
"P c #5D5D5D",
"I c gray37",
"U c #5F5F5F",
"Y c #606060",
"T c gray38",
"R c #626262",
"E c gray39",
"W c #646464",
"Q c gray40",
"! c #676767",
"~ c DimGray",
"^ c #6A6A6A",
"/ c gray42",
"( c #6D6D6D",
") c gray43",
"_ c #6F6F6F",
"` c gray44",
"' c #717171",
"] c #727272",
"[ c gray45",
"{ c #777777",
"} c gray47",
"| c #797979",
" . c #7B7B7B",
".. c #7E7E7E",
"X. c gray51",
"o. c #838383",
"O. c #848484",
"+. c #868686",
"@. c #898989",
"#. c gray54",
"$. c #8D8D8D",
"%. c #8E8E8E",
"&. c #939393",
"*. c gray58",
"=. c gray59",
"-. c #979797",
";. c #989898",
":. c #9A9A9A",
">. c gray62",
",. c #A0A0A0",
"<. c #A4A4A4",
"1. c #A5A5A5",
"2. c #A7A7A7",
"3. c gray66",
"4. c #A9A9A9",
"5. c #AFAFAF",
"6. c #B1B1B1",
"7. c gray70",
"8. c #B9B9B9",
"9. c gray74",
"0. c gray",
"q. c gray75",
"w. c #C1C1C1",
"e. c gray76",
"r. c #C3C3C3",
"t. c #C5C5C5",
"y. c gray78",
"u. c #CBCBCB",
"i. c gray80",
"p. c #CDCDCD",
"a. c #CECECE",
"s. c gray82",
"d. c #D2D2D2",
"f. c LightGray",
"g. c gray83",
"h. c #D7D7D7",
"j. c #D8D8D8",
"k. c gray85",
"l. c #DADADA",
"z. c gray86",
"x. c gainsboro",
"c. c #DDDDDD",
"v. c #DFDFDF",
"b. c gray88",
"n. c #E1E1E1",
"m. c #E2E2E2",
"M. c gray89",
"N. c #E4E4E4",
"B. c #E6E6E6",
"V. c #E7E7E7",
"C. c gray91",
"Z. c #E9E9E9",
"A. c #EAEAEA",
"S. c gray92",
"D. c #ECECEC",
"F. c gray93",
"G. c #EEEEEE",
"H. c #EFEFEF",
"J. c gray95",
"K. c #F3F3F3",
"L. c #F4F4F4",
"P. c gray96",
"I. c #F6F6F6",
"U. c gray97",
"Y. c #F8F8F8",
"T. c #F9F9F9",
"R. c gray98",
"E. c #FBFBFB",
"W. c gray99",
"Q. c #FDFDFD",
"!. c #FEFEFE",
"~. c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" & w c J L J n w = ",
" > j [ 6.d.N.S.H.H.S.d.5.[ f > ",
" @ w [ a.L.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.a._ 7 @ ",
" = D d.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T.y.n & ",
" 5 o.S.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.n.^ = ",
" 2 O.H.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.c.J & ",
" = [ J.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.c.k @ ",
" & _ n.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.4.y ",
" w z.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T. . ",
" @ %.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.c.a ",
" w N.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q. . ",
" .Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.g.w ",
" & u.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L ",
" v H.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.1.= ",
" o.T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.z.w ",
" 0.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.H.n ",
" d.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T.Y ",
" g.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.^ ",
" a.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q._ ",
" 7.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T.^ ",
" #.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.W ",
" D T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.c.N ",
" a S.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.7.p ",
" & y.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L. .> ",
" _ S.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.r.j ",
" 7 4.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.H.D > ",
" n y.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.%.> ",
" = N c.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.=.5 @ ",
" & N 0.T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.S. .7 ",
" @ j >.S.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.z.[ 2 ",
" > W g.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.S.%.7 @ ",
" & D n.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.H.L = ",
" c c.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.N.J @ ",
" 5 0.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.N.Z & ",
" @ .T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.c.k @ ",
" f n.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.y.p @ ",
" & ,.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.,.2 ",
" v L.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.Y @ ",
" @ 1.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.g.y ",
" p J.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T.O.@ ",
" O.Q.Q.Q.Q.Q.L.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.n.7 ",
" & c.Q.Q.Q.Q.T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W ",
" f L.Q.Q.Q.Q.H.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.0. ",
" _ Q.Q.Q.Q.Q.T.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.S. ",
" =.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L. ",
" >.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L. ",
" O.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.S. ",
" D L.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.r. ",
" 7 0.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.W ",
" @ Z z.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.1.5 ",
" & Z d.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.L.:.5 ",
" @ a &.S.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.T.a.Y > ",
" @ w =.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.r.W y @ ",
" { Q.Q.Q.Q.Q.Q.Q.L.L.Q.Q.Q.Q.Q.Q.Q.Q.J ",
" o.Q.Q.Q.Q.Q.Q.Q.:.=.Q.Q.Q.Q.Q.Q.Q.Q.L ",
" Y T.Q.Q.Q.Q.Q.T.[ J Q.Q.Q.Q.Q.Q.Q.Q.J ",
" f T.Q.Q.Q.Q.Q.T.c 7 T.Q.Q.Q.Q.Q.Q.T.N ",
" & n.Q.Q.Q.Q.Q.z.> @ a.Q.Q.Q.Q.Q.Q.d.y ",
" @ %.T.Q.Q.Q.J.[ L H.Q.Q.Q.Q.H.L & ",
" a 1.S.L.n.#.5 > Y z.T.T.z.Y > ",
" & 7 D Y j > & w f y = ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/1.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"....... ....",
"...... ...",
"..... ..",
".... .",
"... ",
".. ",
". ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". .",
".. ..",
"... ...",
".... ....",
"..... .....",
"...... ......",
"....... .......",
"........ ........",
"......... .........",
".......... ..........",
"........... ...........",
"............ ............",
"............. .............",
".............. ..............",
"............... ...............",
"................ ................",
"................. .................",
".................. ..................",
"................... ...................",
".................... ...................."
};

View file

@ -0,0 +1,285 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 129 2 ",
" c black",
". c #020202",
"X c gray1",
"o c #040404",
"O c gray2",
"+ c #060606",
"@ c #070707",
"# c gray3",
"$ c #090909",
"% c gray4",
"& c #0B0B0B",
"* c #0C0C0C",
"= c gray5",
"- c gray6",
"; c #101010",
": c gray7",
"> c #151515",
", c gray9",
"< c #191919",
"1 c #1B1B1B",
"2 c #202020",
"3 c #232323",
"4 c gray14",
"5 c gray15",
"6 c #2A2A2A",
"7 c gray17",
"8 c #2C2C2C",
"9 c #2D2D2D",
"0 c gray18",
"q c #2F2F2F",
"w c #313131",
"e c #373737",
"r c #393939",
"t c #3A3A3A",
"y c gray23",
"u c #3C3C3C",
"i c gray24",
"p c gray25",
"a c #444444",
"s c gray27",
"d c #464646",
"f c gray28",
"g c #484848",
"h c #4B4B4B",
"j c #4C4C4C",
"k c gray32",
"l c #535353",
"z c #555555",
"x c gray34",
"c c #585858",
"v c #5A5A5A",
"b c #5B5B5B",
"n c gray36",
"m c #5D5D5D",
"M c gray37",
"N c #5F5F5F",
"B c gray38",
"V c #656565",
"C c gray40",
"Z c #686868",
"A c #6C6C6C",
"S c #717171",
"D c gray46",
"F c #777777",
"G c gray47",
"H c gray48",
"J c #7B7B7B",
"K c #7E7E7E",
"L c #848484",
"P c #8B8B8B",
"I c #8D8D8D",
"U c gray56",
"Y c #939393",
"T c gray58",
"R c #989898",
"E c #A2A2A2",
"W c #A7A7A7",
"Q c gray66",
"! c gray67",
"~ c #ACACAC",
"^ c #B1B1B1",
"/ c gray70",
"( c #B7B7B7",
") c gray73",
"_ c #BBBBBB",
"` c gray74",
"' c gray",
"] c gray76",
"[ c #C3C3C3",
"{ c #C5C5C5",
"} c #C8C8C8",
"| c gray79",
" . c #CACACA",
".. c #CBCBCB",
"X. c gray80",
"o. c #CECECE",
"O. c gray81",
"+. c gray82",
"@. c #D5D5D5",
"#. c gray84",
"$. c gray85",
"%. c gray86",
"&. c gray87",
"*. c gray88",
"=. c gray89",
"-. c #E4E4E4",
";. c gray90",
":. c #E6E6E6",
">. c #E7E7E7",
",. c #EAEAEA",
"<. c #ECECEC",
"1. c #EEEEEE",
"2. c #EFEFEF",
"3. c gray94",
"4. c #F1F1F1",
"5. c gray95",
"6. c #F3F3F3",
"7. c #F4F4F4",
"8. c gray96",
"9. c #F6F6F6",
"0. c gray97",
"q. c #F8F8F8",
"w. c #F9F9F9",
"e. c gray98",
"r. c #FBFBFB",
"t. c gray99",
"y. c #FDFDFD",
"u. c #FEFEFE",
"i. c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" O < r l z a 4 & ",
" : r T #.3.8.q.q.q.8.-.^ z < ",
" O w Q 1.i.i.i.i.i.i.i.i.i.i.3.Q 8 & ",
" & h %.i.i.i.i.i.i.i.i.i.i.i.i.i.q.o.r & ",
" = v -.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i...r O ",
" r #.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.` 1 ",
" & W i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.H & ",
" w 1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.%.8 ",
" K q.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.q.L ",
" ..i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.%.= ",
" 1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.3.7 ",
" 8.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.q.h ",
" 8.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.v ",
" q.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.v ",
" 8.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.z ",
" ,.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.r ",
" ..i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.3., ",
" I i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.[ O ",
" e 8.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.q.M ",
" & { i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.o.: ",
" B i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.3.a ",
" : o.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.S & ",
" j 1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.( : ",
" & C q.i.i.i.i.i.i.i.i.i.i.i.i.i.i.o.2 ",
" & H 8.i.i.i.i.i.i.i.i.i.i.i.i.[ 8 ",
" : H q.i.i.i.i.i.i.i.i.i.i.` 4 ",
" 8 [ q.i.i.i.i.i.i.i.i.i.8.a ",
" = I 8.i.i.i.i.i.i.i.i.i.i.i.{ < ",
" O l 8.i.i.i.i.i.i.i.i.i.i.i.i.i.D O ",
" 8 o.i.i.i.i.i.i.i.i.i.i.i.i.i.i.-., ",
" I i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.C ",
" 1 *.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i...O ",
" B q.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.q.2 ",
" ( i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.M ",
" O &.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.Q O ",
" < 8.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.,.= ",
" u q.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.8.8 ",
" v q.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.a ",
" v i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.a ",
" h q.i.i.i.i.i.i.i.i.q.i.i.i.i.i.i.i.i.i.i.7 ",
" 4 1.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.1.& ",
" & Q i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.) ",
" 8 -.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.q.j ",
" & M 8.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.o.: ",
" O ) i.i.i.i.i.i.i.i.i.i.i.i.i.i.q.K ",
" R i.i.i.i.i.i.i.i.i.i.i.i.i.i.3.a ",
" C 3.i.i.i.q.{ B C A ` q.i.i.q..., ",
" 4 W 1.q.8.{ a 4 T &.-.^ h ",
" O 4 B H z 7 O O : 8 w < O ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/2.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"............ ...........",
"........... ..........",
".......... .........",
"......... ........",
"........ .......",
"....... ......",
"...... .....",
"..... ....",
".... ...",
"... ..",
".. .",
". ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". .",
".. ..",
"... ...",
".... ....",
"..... .....",
"...... ......",
"....... .......",
"........ ........",
"......... .........",
".......... ..........",
"........... ...........",
"............ ............",
"............. .............",
".............. ..............",
"............... ...............",
"................ ................",
"................. .................",
".................. ..................",
"................... ...................",
".................... ....................",
"..................... .....................",
"...................... ......................",
"....................... .......................",
"........................ ........................",
"......................... .........................",
".......................... ..........................",
"........................... ..........................."
};

View file

@ -0,0 +1,255 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 99 2 ",
" c black",
". c #020202",
"X c gray1",
"o c #040404",
"O c gray2",
"+ c #060606",
"@ c #070707",
"# c gray4",
"$ c #0C0C0C",
"% c gray5",
"& c #0E0E0E",
"* c gray6",
"= c #111111",
"- c #161616",
"; c gray10",
": c #1B1B1B",
"> c #1E1E1E",
", c gray12",
"< c #232323",
"1 c gray15",
"2 c #2A2A2A",
"3 c gray17",
"4 c #2D2D2D",
"5 c gray18",
"6 c #2F2F2F",
"7 c gray19",
"8 c gray22",
"9 c #3C3C3C",
"0 c #3F3F3F",
"q c gray25",
"w c #414141",
"e c gray26",
"r c #444444",
"t c #4B4B4B",
"y c #4C4C4C",
"u c gray30",
"i c #4E4E4E",
"p c #515151",
"a c gray32",
"s c #535353",
"d c #565656",
"f c #585858",
"g c #5B5B5B",
"h c #5D5D5D",
"j c gray38",
"k c #626262",
"l c #646464",
"z c #686868",
"x c DimGray",
"c c #6F6F6F",
"v c gray47",
"b c gray53",
"n c gray55",
"m c gray58",
"M c gray61",
"N c #9F9F9F",
"B c #A2A2A2",
"V c gray65",
"C c gray67",
"Z c #ACACAC",
"A c #AEAEAE",
"S c gray70",
"D c gray73",
"F c gray75",
"G c #C0C0C0",
"H c gray76",
"J c gray77",
"K c gray78",
"L c #CACACA",
"P c #CBCBCB",
"I c #D5D5D5",
"U c gray85",
"Y c #DADADA",
"T c #DDDDDD",
"R c #DFDFDF",
"E c gray88",
"W c #E1E1E1",
"Q c gray89",
"! c #E4E4E4",
"~ c gray90",
"^ c gray91",
"/ c gray92",
"( c #ECECEC",
") c #EEEEEE",
"_ c #EFEFEF",
"` c gray94",
"' c #F1F1F1",
"] c #F3F3F3",
"[ c gray96",
"{ c #F6F6F6",
"} c gray97",
"| c #F8F8F8",
" . c #F9F9F9",
".. c gray98",
"X. c #FBFBFB",
"o. c gray99",
"O. c #FDFDFD",
"+. c #FEFEFE",
"@. c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" # : 4 1 * ",
" # 1 k B P Q I n 3 O ",
" # e S _ o.o.o.o.o.D 4 ",
" 4 P o.o.o.o.o.o.o.o.V - ",
" b | o.o.o.o.o.o.o.o.} p ",
" # T o.o.o.o.o.o.o.o.o.o.C ",
" 3 | o.o.o.o.o.o.o.o.o.o.Q O ",
" t | o.o.o.o.' o.o.o.o.o.} < ",
" k o.o.o.o.o.' o.o.o.o.o.| r ",
" k o.o.o.o.o.o.o.o.o.o.o.o.s ",
" g o.o.o.o.o.o.o.o.o.o.o.o.s ",
" e | o.o.o.o.o.o.o.o.o.o.| 9 ",
" < | o.o.o.o.o.o.o.o.o.o.| : ",
" O Q o.o.o.o.o.o.o.o.o.o._ O ",
" B o.o.o.o.o.o.o.o.o.o.P ",
" e / o.o.o.o.o.o.o.o.o.c ",
" = m o.o.o.o.o.o.o.o.' > ",
" O l o.o.o.o.o.o.o.o.A # ",
" 1 K o.o.o.o.o.o.o.o.N ",
" z } o.o.o.o.o.o.o.o.Y # ",
" H o.o.o.o.o.o.o.o.o.o.7 ",
" # _ o.o.o.o.o.o.o.o.o.o.b O ",
" 4 | o.o.o.o.o.o.o.o.o.o.T * ",
" u | o.o.o.o.o.o.o.o.o.o.| 4 ",
" h o.o.o.o.o.o.o.o.o.o.o.o.u ",
" s | o.o.o.o.o.o.o.o.o.o.o.g ",
" 8 ' o.o.o.o.o.o.o.o.o.o.o.u ",
" - H o.o.o.o.o.o.o.o.o.o./ 4 ",
" O s ~ o.o.o.o.o.o.o.o.o.A * ",
" = z ~ o.o.o.o.o.o.| K 9 O ",
" * r B T _ Q Y H v 7 # ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/3.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"........................ ......................",
"....................... .....................",
"...................... ....................",
"..................... ...................",
".................... ..................",
"................... .................",
".................. ................",
"................. ...............",
"................ ..............",
"............... .............",
".............. ............",
"............. ...........",
"............ ..........",
"........... .........",
".......... ........",
"......... .......",
"........ ......",
"....... .....",
"...... ....",
"..... ...",
".... ..",
"... .",
".. ",
". ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". ",
".. .",
"... ..",
".... ...",
"..... ....",
"...... .....",
"....... ......",
"........ .......",
"......... ........",
".......... .........",
"........... ..........",
"............ ...........",
"............. ............",
".............. .............",
"............... ..............",
"................ ...............",
"................. ................",
".................. .................",
"................... ..................",
".................... ...................",
"..................... ....................",
"...................... .....................",
"....................... ......................",
"........................ .......................",
"......................... ........................",
".......................... .........................",
"........................... ..........................",
"............................ ...........................",
"............................. ............................",
".............................. .............................",
"............................... ..............................",
"................................ ...............................",
"................................. ................................",
".................................. .................................",
"................................... ..................................",
".................................... ...................................",
"..................................... ....................................",
"...................................... ....................................."
};

View file

@ -0,0 +1,211 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 55 1 ",
" c black",
". c gray2",
"X c #070707",
"o c gray3",
"O c gray4",
"+ c #101010",
"@ c #111111",
"# c #151515",
"$ c #181818",
"% c #1B1B1B",
"& c gray12",
"* c #202020",
"= c gray18",
"- c gray23",
"; c gray25",
": c #414141",
"> c #434343",
", c gray31",
"< c #535353",
"1 c #565656",
"2 c #5A5A5A",
"3 c #686868",
"4 c DimGray",
"5 c gray43",
"6 c #6F6F6F",
"7 c #717171",
"8 c #727272",
"9 c gray45",
"0 c #898989",
"q c #929292",
"w c gray59",
"e c gray61",
"r c gray62",
"t c gray70",
"y c gray71",
"u c #CBCBCB",
"i c #D2D2D2",
"p c gray83",
"a c gray86",
"s c gainsboro",
"d c #DDDDDD",
"f c #DFDFDF",
"g c #E2E2E2",
"h c #ECECEC",
"j c #EFEFEF",
"k c gray94",
"l c #F3F3F3",
"z c #F4F4F4",
"x c #F6F6F6",
"c c #F9F9F9",
"v c gray98",
"b c gray99",
"n c #FDFDFD",
"m c #FEFEFE",
"M c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" %7uat2# ",
" @wlMMMle$ ",
" ,hMMMMMx6. ",
" eMMMMMMMp$ ",
" pMMMMMMMx- ",
" hMMMMMMMc< ",
" lMMMMMMMc1 ",
" hMMMMMMMc> ",
" dMMMMMMMl* ",
" yMMMMMMMdo ",
" 4MMMMMMMq ",
" %gMMMMMd= ",
" o7acMca4O ",
" @>707>O ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/4.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"............................... ................................",
".............................. ...............................",
"............................. ..............................",
"............................ .............................",
"........................... ............................",
".......................... ...........................",
"......................... ..........................",
"........................ .........................",
"....................... ........................",
"...................... .......................",
"..................... ......................",
".................... .....................",
"................... ....................",
".................. ...................",
"................. ..................",
"................ .................",
"............... ................",
".............. ...............",
"............. ..............",
"............ .............",
"........... ............",
".......... ...........",
"......... ..........",
"........ .........",
"....... ........",
"...... .......",
"..... ......",
".... .....",
"... ....",
".. ...",
". ..",
" .",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" .",
". ..",
".. ...",
"... ....",
".... .....",
"..... ......",
"...... .......",
"....... ........",
"........ .........",
"......... ..........",
".......... ...........",
"........... ............",
"............ .............",
"............. ..............",
".............. ...............",
"............... ................",
"................ .................",
"................. ..................",
".................. ...................",
"................... ....................",
".................... .....................",
"..................... ......................",
"...................... .......................",
"....................... ........................",
"........................ .........................",
"......................... ..........................",
".......................... ...........................",
"........................... ............................",
"............................ .............................",
"............................. ..............................",
".............................. ...............................",
"............................... ................................",
"................................ .................................",
"................................. ..................................",
".................................. ...................................",
"................................... ....................................",
".................................... .....................................",
"..................................... ......................................",
"...................................... .......................................",
"....................................... ........................................",
"........................................ .........................................",
"......................................... ..........................................",
".......................................... ...........................................",
"........................................... ............................................",
"............................................ .............................................",
"............................................. ..............................................",
".............................................. ...............................................",
"............................................... ................................................"
};

View file

@ -0,0 +1,193 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 37 1 ",
" c black",
". c gray4",
"X c gray6",
"o c gray11",
"O c #272727",
"+ c #2A2A2A",
"@ c gray17",
"# c #414141",
"$ c gray33",
"% c gray37",
"& c #656565",
"* c gray44",
"= c #777777",
"- c #7B7B7B",
"; c #818181",
": c gray54",
"> c #929292",
", c gray59",
"< c gray60",
"1 c gray71",
"2 c #C5C5C5",
"3 c #C8C8C8",
"4 c LightGray",
"5 c gray83",
"6 c gray89",
"7 c gray91",
"8 c #EAEAEA",
"9 c #EEEEEE",
"0 c #F1F1F1",
"q c #F4F4F4",
"w c gray97",
"e c #F9F9F9",
"r c gray98",
"t c #FBFBFB",
"y c #FDFDFD",
"u c #FEFEFE",
"i c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" .O&:=#X ",
" @<8rq3$ ",
" -8uuuq1 ",
" >0uuuu2 ",
" %4uuu8- ",
" o*596,@ ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/5.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"................................... ....................................",
".................................. ...................................",
"................................. ..................................",
"................................ .................................",
"............................... ................................",
".............................. ...............................",
"............................. ..............................",
"............................ .............................",
"........................... ............................",
".......................... ...........................",
"......................... ..........................",
"........................ .........................",
"....................... ........................",
"...................... .......................",
"..................... ......................",
".................... .....................",
"................... ....................",
".................. ...................",
"................. ..................",
"................ .................",
"............... ................",
".............. ...............",
"............. ..............",
"............ .............",
"........... ............",
".......... ...........",
"......... ..........",
"........ .........",
"....... ........",
"...... .......",
"..... ......",
".... .....",
"... ....",
".. ...",
". ..",
" .",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" .",
". ..",
".. ...",
"... ....",
".... .....",
"..... ......",
"...... .......",
"....... ........",
"........ .........",
"......... ..........",
".......... ...........",
"........... ............",
"............ .............",
"............. ..............",
".............. ...............",
"............... ................",
"................ .................",
"................. ..................",
".................. ...................",
"................... ....................",
".................... .....................",
"..................... ......................",
"...................... .......................",
"....................... ........................",
"........................ .........................",
"......................... ..........................",
".......................... ...........................",
"........................... ............................",
"............................ .............................",
"............................. ..............................",
".............................. ...............................",
"............................... ................................",
"................................ .................................",
"................................. ..................................",
".................................. ...................................",
"................................... ....................................",
".................................... .....................................",
"..................................... ......................................",
"...................................... .......................................",
"....................................... ........................................",
"........................................ .........................................",
"......................................... ..........................................",
".......................................... ...........................................",
"........................................... ............................................",
"............................................ .............................................",
"............................................. ..............................................",
".............................................. ...............................................",
"............................................... ................................................",
"................................................ .................................................",
"................................................. ..................................................",
".................................................. ...................................................",
"................................................... ...................................................."
};

View file

@ -0,0 +1,172 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 16 1 ",
" c black",
". c #0B0B0B",
"X c #202020",
"o c #2C2C2C",
"O c #343434",
"+ c #484848",
"@ c gray45",
"# c #8B8B8B",
"$ c #A2A2A2",
"% c #DADADA",
"& c gray86",
"* c #EEEEEE",
"= c gray96",
"- c gray99",
"; c #FEFEFE",
": c white",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" .oX ",
" $-=+ ",
" %--@ ",
" #=&O ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/6.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"...................................... .......................................",
"..................................... ......................................",
".................................... .....................................",
"................................... ....................................",
".................................. ...................................",
"................................. ..................................",
"................................ .................................",
"............................... ................................",
".............................. ...............................",
"............................. ..............................",
"............................ .............................",
"........................... ............................",
".......................... ...........................",
"......................... ..........................",
"........................ .........................",
"....................... ........................",
"...................... .......................",
"..................... ......................",
".................... .....................",
"................... ....................",
".................. ...................",
"................. ..................",
"................ .................",
"............... ................",
".............. ...............",
"............. ..............",
"............ .............",
"........... ............",
".......... ...........",
"......... ..........",
"........ .........",
"....... ........",
"...... .......",
"..... ......",
".... .....",
"... ....",
".. ...",
". ..",
" .",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". .",
".. ..",
"... ...",
".... ....",
"..... .....",
"...... ......",
"....... .......",
"........ ........",
"......... .........",
".......... ..........",
"........... ...........",
"............ ............",
"............. .............",
".............. ..............",
"............... ...............",
"................ ................",
"................. .................",
".................. ..................",
"................... ...................",
".................... ....................",
"..................... .....................",
"...................... ......................",
"....................... .......................",
"........................ ........................",
"......................... .........................",
".......................... ..........................",
"........................... ...........................",
"............................ ............................",
"............................. .............................",
".............................. ..............................",
"............................... ...............................",
"................................ ................................",
"................................. .................................",
".................................. ..................................",
"................................... ...................................",
".................................... ....................................",
"..................................... .....................................",
"...................................... ......................................",
"....................................... .......................................",
"........................................ ........................................",
"......................................... .........................................",
".......................................... ..........................................",
"........................................... ...........................................",
"............................................ ............................................",
"............................................. .............................................",
".............................................. ..............................................",
"............................................... ...............................................",
"................................................ ................................................",
"................................................. .................................................",
".................................................. ..................................................",
"................................................... ...................................................",
".................................................... ....................................................",
"..................................................... .....................................................",
"...................................................... ......................................................"
};

View file

@ -0,0 +1,215 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 59 1 ",
" c black",
". c #0B0B0B",
"X c #161616",
"o c gray13",
"O c #222222",
"+ c gray17",
"@ c #2D2D2D",
"# c #353535",
"$ c #3F3F3F",
"% c gray26",
"& c #464646",
"* c gray28",
"= c #494949",
"- c #505050",
"; c #515151",
": c gray32",
"> c gray34",
", c gray35",
"< c gray40",
"1 c gray43",
"2 c #6F6F6F",
"3 c gray46",
"4 c #777777",
"5 c #989898",
"6 c gray64",
"7 c gray65",
"8 c gray68",
"9 c #AFAFAF",
"0 c #B2B2B2",
"q c gray70",
"w c #B4B4B4",
"e c gray71",
"r c #B6B6B6",
"t c gray73",
"y c #BBBBBB",
"u c gray74",
"i c gray",
"p c #C0C0C0",
"a c #CDCDCD",
"s c #D7D7D7",
"d c gray85",
"f c #DADADA",
"g c #DDDDDD",
"h c gray87",
"j c #DFDFDF",
"k c #E1E1E1",
"l c #E2E2E2",
"z c gray90",
"x c gray91",
"c c gray92",
"v c #ECECEC",
"b c #EFEFEF",
"n c gray94",
"m c gray95",
"M c #F3F3F3",
"N c #F4F4F4",
"B c gray96",
"V c #F6F6F6",
"C c gray97",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" o+. ",
" ws& ",
" xC< ",
" mm# ",
" CC ",
" Cm ",
" XCm ",
" &Cx ",
" %a6 ",
" %ugdgkg0=@o38w00t7- ",
" ,kCmCCCd> amCCCCb5 ",
" X-11131&Xuu38wtwu7- ",
" Xmx ",
" ,Cz ",
" 1Cg ",
" 1Cg ",
" ,Cz ",
" oCm ",
" uu ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/7.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"............................... ..............................",
".............................. .............................",
"............................. ............................",
"............................ ...........................",
"........................... ..........................",
".......................... .........................",
"......................... ........................",
"........................ .......................",
"....................... ......................",
"...................... .....................",
"..................... ....................",
".................... ...................",
"................... ..................",
".................. .................",
"................. ................",
"................ ...............",
"............... ..............",
".............. .............",
"............. ............",
"............ ...........",
"........... ..........",
".......... .........",
"......... ........",
"........ .......",
"....... ......",
"...... .....",
"..... ....",
".... ...",
"... ..",
".. .",
". ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". .",
".. ..",
"... ...",
".... ....",
"..... .....",
"...... ......",
"....... .......",
"........ ........",
"......... .........",
".......... ..........",
"........... ...........",
"............ ............",
"............. .............",
".............. ..............",
"............... ...............",
"................ ................",
"................. .................",
".................. ..................",
"................... ...................",
".................... ....................",
"..................... .....................",
"...................... ......................",
"....................... .......................",
"........................ ........................",
"......................... .........................",
".......................... ..........................",
"........................... ...........................",
"............................ ............................",
"............................. .............................",
".............................. ..............................",
"............................... ...............................",
"................................ ................................",
"................................. .................................",
".................................. ..................................",
"................................... ...................................",
".................................... ....................................",
"..................................... .....................................",
"...................................... ......................................",
"....................................... .......................................",
"........................................ ........................................",
"......................................... .........................................",
".......................................... ..........................................",
"........................................... ...........................................",
"............................................ ............................................",
"............................................. .............................................",
".............................................. ..............................................",
"............................................... ...............................................",
"................................................ ................................................"
};

View file

@ -0,0 +1,207 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 51 1 ",
" c black",
". c #0B0B0B",
"X c #151515",
"o c #161616",
"O c #202020",
"+ c gray13",
"@ c gray17",
"# c #2C2C2C",
"$ c #2D2D2D",
"% c gray25",
"& c gray26",
"* c #434343",
"= c gray31",
"- c #565656",
"; c gray34",
": c #585858",
"> c #5A5A5A",
", c #5F5F5F",
"< c gray39",
"1 c #656565",
"2 c #6C6C6C",
"3 c gray45",
"4 c #747474",
"5 c #767676",
"6 c gray51",
"7 c #838383",
"8 c gray52",
"9 c #A2A2A2",
"0 c #A5A5A5",
"q c #B2B2B2",
"w c #B4B4B4",
"e c gray71",
"r c #B6B6B6",
"t c gray",
"y c gray80",
"u c gray81",
"i c gray83",
"p c gray87",
"a c #DFDFDF",
"s c gray88",
"d c #E1E1E1",
"f c #E4E4E4",
"g c #E7E7E7",
"h c #EEEEEE",
"j c #EFEFEF",
"k c gray95",
"l c #F3F3F3",
"z c #F4F4F4",
"x c gray96",
"c c #F6F6F6",
"v c gray97",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" &-X ",
" ta= ",
" az2 ",
" fz4 ",
" ij< ",
" 18+ ",
" ",
" ",
" ",
" ",
" ",
" ",
" X#X.#+ ",
" :szlj6 X4rrr9& ",
" *yzlf< #yvzzj6 ",
" X4rrr0* ",
" ",
" ",
" ",
" ",
" ",
" :- ",
" sa ",
" zz ",
" zl ",
" zz ",
" sa ",
" :: ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/8.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
".......................... ............................",
"......................... ...........................",
"........................ ..........................",
"....................... .........................",
"...................... ........................",
"..................... .......................",
".................... ......................",
"................... .....................",
".................. ....................",
"................. ...................",
"................ ..................",
"............... .................",
".............. ................",
"............. ...............",
"............ ..............",
"........... .............",
".......... ............",
"......... ...........",
"........ ..........",
"....... .........",
"...... ........",
"..... .......",
".... ......",
"... .....",
".. ....",
". ...",
" ..",
" .",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". .",
".. ..",
"... ...",
".... ....",
"..... .....",
"...... ......",
"....... .......",
"........ ........",
"......... .........",
".......... ..........",
"........... ...........",
"............ ............",
"............. .............",
".............. ..............",
"............... ...............",
"................ ................",
"................. .................",
".................. ..................",
"................... ...................",
".................... ....................",
"..................... .....................",
"...................... ......................",
"....................... .......................",
"........................ ........................",
"......................... .........................",
".......................... ..........................",
"........................... ...........................",
"............................ ............................",
"............................. .............................",
".............................. ..............................",
"............................... ...............................",
"................................ ................................",
"................................. .................................",
".................................. ..................................",
"................................... ...................................",
".................................... ....................................",
"..................................... .....................................",
"...................................... ......................................",
"....................................... .......................................",
"........................................ ........................................",
"......................................... .........................................",
".......................................... ..........................................",
"........................................... ..........................................."
};

View file

@ -0,0 +1,183 @@
/* XPM */
static char *__alpha[] = {
/* columns rows colors chars-per-pixel */
"150 150 27 1 ",
" c black",
". c #0B0B0B",
"X c #202020",
"o c #222222",
"O c #2C2C2C",
"+ c #2D2D2D",
"@ c #565656",
"# c #585858",
"$ c gray35",
"% c #646464",
"& c gray40",
"* c gray51",
"= c gray52",
"- c gray64",
"; c gray65",
": c #B1B1B1",
"> c #BCBCBC",
", c gray79",
"< c #CBCBCB",
"1 c #CDCDCD",
"2 c #CECECE",
"3 c #D7D7D7",
"4 c gray85",
"5 c #EFEFEF",
"6 c #F1F1F1",
"7 c #F3F3F3",
"8 c #F4F4F4",
/* pixels */
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" << ",
" 77X ",
" :1O ",
" XO. ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" O13@ O*-% ",
" O14$ $47> ",
" O=-% ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" << ",
" 87 ",
" 11 ",
" OO ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
};

158
assets/object/exit/tp/9.xpm Normal file
View file

@ -0,0 +1,158 @@
/* XPM */
static char *_[] = {
/* columns rows colors chars-per-pixel */
"150 150 2 1 ",
" c #33CCFF",
". c white",
/* pixels */
"......................... ..........................",
"........................ .........................",
"....................... ........................",
"...................... .......................",
"..................... ......................",
".................... .....................",
"................... ....................",
".................. ...................",
"................. ..................",
"................ .................",
"............... ................",
".............. ...............",
"............. ..............",
"............ .............",
"........... ............",
".......... ...........",
"......... ..........",
"........ .........",
"....... ........",
"...... .......",
"..... ......",
".... .....",
"... ....",
".. ...",
". ..",
" .",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
". .",
".. ..",
"... ...",
".... ....",
"..... .....",
"...... ......",
"....... .......",
"........ ........",
"......... .........",
".......... ..........",
"........... ...........",
"............ ............",
"............. .............",
".............. ..............",
"............... ...............",
"................ ................",
"................. .................",
".................. ..................",
"................... ...................",
".................... ....................",
"..................... .....................",
"...................... ......................",
"....................... .......................",
"........................ ........................",
"......................... .........................",
".......................... ..........................",
"........................... ...........................",
"............................ ............................",
"............................. .............................",
".............................. ..............................",
"............................... ...............................",
"................................ ................................",
"................................. .................................",
".................................. ..................................",
"................................... ...................................",
".................................... ....................................",
"..................................... .....................................",
"...................................... ......................................",
"....................................... .......................................",
"........................................ ........................................",
"......................................... ........................................."
};

View file

@ -6,14 +6,14 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/02/29 17:43:01 by mcolonna #+# #+# */
/* Updated: 2024/04/18 13:54:58 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 17:05:31 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef DATA_ASSETS_H
# define DATA_ASSETS_H
# define NB_ASSETS 88
# define NB_ASSETS 97
typedef struct s_assetmeta
{
@ -81,6 +81,15 @@ typedef enum e_assetsmap_id
OBJECT_EXIT_USING2_5,
OBJECT_EXIT_USING2_6,
OBJECT_EXIT_USING2_7,
OBJECT_EXIT_TP_1,
OBJECT_EXIT_TP_2,
OBJECT_EXIT_TP_3,
OBJECT_EXIT_TP_4,
OBJECT_EXIT_TP_5,
OBJECT_EXIT_TP_6,
OBJECT_EXIT_TP_7,
OBJECT_EXIT_TP_8,
OBJECT_EXIT_TP_9,
OBJECT_FIRSK_DOWN,
OBJECT_FIRSK_UP,
OBJECT_FIRSK_LEFT,

View file

@ -6,14 +6,14 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/11 15:56:31 by mcolonna #+# #+# */
/* Updated: 2024/04/18 13:59:33 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:24:20 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef DATA_SPRITES_H
# define DATA_SPRITES_H
# define NB_SPRITES 26
# define NB_SPRITES 27
typedef enum e_spritetype
{
@ -51,7 +51,8 @@ typedef enum e_spritesmap_id
SPR_KETCHUP_FADE,
SPR_EXIT_INACTIVE,
SPR_EXIT_ACTIVE,
SPR_EXIT_USING,
SPR_EXIT_REMAINING,
SPR_EXIT_TP,
SPR_FIRSK,
SPR_FIRSK_WALK_DOWN,
SPR_FIRSK_WALK_UP,

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/02 13:53:41 by mcolonna #+# #+# */
/* Updated: 2024/04/17 13:48:12 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 17:59:26 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -47,6 +47,7 @@
# include "room/camera.h"
# include "room/pathfinding.h"
# include "main/levels.h"
# include "main/env.h"
# include "main/input.h"
# include "main/timedloop.h"

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/02/26 15:26:13 by mcolonna #+# #+# */
/* Updated: 2024/04/15 18:01:07 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:21:35 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -20,16 +20,19 @@
typedef struct s_env
{
t_memclass mc;
void *mlx;
void *win;
t_room room;
bool input[4];
int ketchup;
int max_ketchup;
int moves;
t_camera camera;
} t_env;
t_memclass mc;
void *mlx;
void *win;
t_room room;
bool input[4];
int ketchup;
int max_ketchup;
int moves;
t_camera camera;
t_const_string *levels;
int level_count;
int level_current;
} t_env;
extern t_env g_env;

19
includes/main/levels.h Normal file
View file

@ -0,0 +1,19 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* levels.h :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/18 17:45:16 by mcolonna #+# #+# */
/* Updated: 2024/04/18 18:00:50 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef LEVELS_H
# define LEVELS_H
void init_levels(int count, t_const_string *srcs);
void win(void);
#endif

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/02 17:47:01 by mcolonna #+# #+# */
/* Updated: 2024/04/11 13:54:23 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:17:16 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -14,10 +14,21 @@
# define OBJECTS_H
// SNAS
typedef enum e_snas_state
{
SNAS_STATE_DEFAULT,
SNAS_STATE_GOING_TO_EXIT,
SNAS_STATE_DISAPPEARS,
SNAS_STATE_WAITING_TO_WIN,
} t_snas_state;
typedef struct s_snas_data
{
t_character character;
} t_snas_data;
t_character character;
t_snas_state state;
t_sprite tp_spr;
int wait_before_win;
} t_snas_data;
t_object snas_init(t_memclass mc);

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/03 15:34:18 by mcolonna #+# #+# */
/* Updated: 2024/04/11 17:07:59 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 17:15:18 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -19,6 +19,6 @@ typedef struct s_visual
} t_visual;
void visual_loop(t_visual **visual, t_point p);
void visual_addtoroom(t_spritesmap_id sprid, t_point pos);
void visual_addtoroom(t_sprite spr, t_point pos);
#endif

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/02/26 16:27:06 by mcolonna #+# #+# */
/* Updated: 2024/04/18 13:57:37 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 16:52:02 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -68,6 +68,15 @@ const t_assetmeta g_assetsmap[NB_ASSETS] = {
{"object/exit/using2/5", 50, 100, 50, 100, false},
{"object/exit/using2/6", 50, 100, 50, 100, false},
{"object/exit/using2/7", 50, 100, 50, 100, false},
{"object/exit/tp/1", 50, 100, 30, 100, false},
{"object/exit/tp/2", 50, 100, 30, 100, false},
{"object/exit/tp/3", 50, 100, 30, 100, false},
{"object/exit/tp/4", 50, 100, 30, 100, false},
{"object/exit/tp/5", 50, 100, 30, 100, false},
{"object/exit/tp/6", 50, 100, 30, 100, false},
{"object/exit/tp/7", 50, 100, 30, 100, false},
{"object/exit/tp/8", 50, 100, 30, 100, false},
{"object/exit/tp/9", 50, 100, 30, 100, false},
// firsk
{"object/firsk/down", 50, 110, 30, 100, false},
{"object/firsk/up", 40, 100, 30, 100, false},

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/11 16:02:29 by mcolonna #+# #+# */
/* Updated: 2024/04/18 14:00:05 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:26:32 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -28,7 +28,8 @@ const t_spritemeta g_spritesmap[NB_SPRITES] = {
{OBJECT_KETCHUP_FADE_1, 50, 50, ANIMATION_ONCE, 3, 1},
{OBJECT_EXIT_INACTIVE_1, 50, 50, ANIMATION, 2, 4},
{OBJECT_EXIT_ACTIVE_1, 50, 50, ANIMATION, 4, 2},
{OBJECT_EXIT_USING1_1, 50, 50, ANIMATION_ONCE, 11, 1},
{OBJECT_EXIT_ACTIVE_1, 50, 50, ANIMATION_ONCE, 2, 2},
{OBJECT_EXIT_TP_1, 50, 50, ANIMATION_ONCE, 9, 1},
{OBJECT_FIRSK, 50, 50, CHARACTER_STILL, 0, 0},
{OBJECT_FIRSK_WALK_DOWN_1, 50, 50, ANIMATION, 4, 3},
{OBJECT_FIRSK_WALK_UP_1, 50, 50, ANIMATION, 4, 3},

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/06 13:03:30 by mcolonna #+# #+# */
/* Updated: 2024/04/02 18:03:15 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 17:10:46 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -53,11 +53,11 @@ void load_xpm_file_with_alpha(int i)
g_allassets[i].img = mlx_xpm_file_to_image(g_env.mlx, src,
&(g_allassets[i].width), &g_allassets[i].height);
if (!g_allassets[i].img)
error_err("image loading failed");
error_str(g_assetsmap[i].src, "image loading failed");
mask = mlx_xpm_file_to_image(g_env.mlx, src_mask,
&(g_allassets[i].width), &g_allassets[i].height);
if (!mask)
error_err("image loading failed");
error_str(g_assetsmap[i].src, "image loading failed");
apply_mask_to_image(g_allassets[i].img, mask,
g_allassets[i].width * g_allassets[i].height);
mlx_destroy_image(g_env.mlx, mask);

38
src/main/levels.c Normal file
View file

@ -0,0 +1,38 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* levels.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/18 17:49:39 by mcolonna #+# #+# */
/* Updated: 2024/04/18 18:02:40 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
#include "includes.h"
static void init_level_index(void)
{
g_loopfunctions.loop = room_loop;
g_loopfunctions.draw = room_draw;
room_init(g_env.levels[g_env.level_current]);
}
void init_levels(int count, t_const_string *srcs)
{
g_env.levels = srcs;
g_env.level_count = count;
if (count <= 0)
error_err("if you don't want to play any level don't start the game");
g_env.level_current = 0;
init_level_index();
}
void win(void)
{
g_env.level_current++;
if (g_env.level_current >= g_env.level_count)
error_err("end all levels!"); // TODO
init_level_index();
}

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/02/26 15:28:34 by mcolonna #+# #+# */
/* Updated: 2024/04/17 13:26:57 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:04:37 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -43,8 +43,6 @@ int loop_hook(void)
int main(int argc, t_const_string *argv)
{
g_loopfunctions.loop = room_loop;
g_loopfunctions.draw = room_draw;
if (argc != 2)
error_str("so_long", "takes 1 argument");
g_env.mc = mem_newclass(error_err);
@ -57,7 +55,7 @@ int main(int argc, t_const_string *argv)
WINDOW_TITLE);
if (!g_env.win)
error_err("mlx_new_window() failed");
room_init(argv[1]);
init_levels(1, &argv[1]);
mlx_expose_hook(g_env.win, expose_hook, NULL);
mlx_hook(g_env.win, DestroyNotify, StructureNotifyMask, close_hook, NULL);
mlx_loop_hook(g_env.mlx, loop_hook, NULL);

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/08 15:01:16 by mcolonna #+# #+# */
/* Updated: 2024/04/18 15:56:50 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:25:16 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -36,11 +36,15 @@ static bool exit_walk_through(
t_object *obj, t_character *character, t_point pos)
{
t_exit_data *const data = (t_exit_data *)(obj->data);
const t_point snas_p = room_find(snas_init);
(void)character;
(void)pos;
if (!data->active)
return (false);
visual_addtoroom(SPR_EXIT_USING, pos);
((t_snas_data *)g_env.room.objects[snas_p.y * g_env.room.width + snas_p.x]
->data)->state++;
visual_addtoroom(sprite_init(SPR_EXIT_REMAINING), pos);
return (true);
}

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/15 15:27:03 by mcolonna #+# #+# */
/* Updated: 2024/04/18 15:57:45 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 17:14:55 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -30,7 +30,7 @@ static bool ketchup_walk_through(
(void)obj;
(void)character;
g_env.ketchup++;
visual_addtoroom(SPR_KETCHUP_FADE, pos);
visual_addtoroom(sprite_init(SPR_KETCHUP_FADE), pos);
return (true);
}

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/03/15 15:27:03 by mcolonna #+# #+# */
/* Updated: 2024/04/18 15:58:11 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:29:33 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -18,7 +18,8 @@ static bool snas_walk_through(t_object *obj, t_character *character,
(void)obj;
(void)character;
(void)pos;
gameover_byfirskattack(&((t_snas_data *)obj->data)->character);
if (!((t_snas_data *)obj->data)->state)
gameover_byfirskattack(&((t_snas_data *)obj->data)->character);
return (false);
}
@ -38,9 +39,27 @@ static t_direction snas_brain(t_point pos)
static t_point snas_loop(t_object *obj, t_point pos)
{
t_point r;
t_snas_data *const data = (t_snas_data *)obj->data;
t_point r;
r = character_loop(&((t_snas_data *)obj->data)->character, pos, snas_brain);
if (data->state == SNAS_STATE_GOING_TO_EXIT
&& !data->character.walk_remaining_steps)
{
data->state++;
data->tp_spr = sprite_init(SPR_EXIT_TP);
}
if (data->state == SNAS_STATE_WAITING_TO_WIN)
{
data->wait_before_win--;
if (!data->wait_before_win)
{
win();
return (point_init(0, 0));
}
}
if (data->state > SNAS_STATE_GOING_TO_EXIT)
return (point_init(0, 0));
r = character_loop(&data->character, pos, snas_brain);
if (r.x || r.y)
g_env.moves++;
return (r);
@ -48,7 +67,20 @@ static t_point snas_loop(t_object *obj, t_point pos)
static void snas_draw(t_object *obj, t_point p)
{
return (character_draw(&((t_snas_data *)obj->data)->character, p));
t_snas_data *const data = (t_snas_data *)obj->data;
if (data->state <= SNAS_STATE_GOING_TO_EXIT)
return (character_draw(&data->character, p));
if (data->state == SNAS_STATE_DISAPPEARS)
{
if (!sprite_draw(p, &data->tp_spr))
{
data->state = SNAS_STATE_WAITING_TO_WIN;
data->wait_before_win = 10;
}
return ;
}
return ;
}
t_object snas_init(t_memclass mc)
@ -70,6 +102,7 @@ t_object snas_init(t_memclass mc)
r.type = type;
data = mem_alloc(error_err, mc, sizeof(t_snas_data));
data->character = character_init((t_character_sprites *)&sprites, 4);
data->state = SNAS_STATE_DEFAULT;
r.data = data;
return (r);
}

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/15 17:35:13 by mcolonna #+# #+# */
/* Updated: 2024/04/18 16:05:23 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 18:30:25 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -25,10 +25,8 @@ void path_map_case_init(t_point p, void **el, void *args_p)
before: point_init(-1, -1),
solid: p.x == 0 || p.x == room.width - 1 || p.y == 0
|| p.y == room.height - 1 || (
obj && (
(args->for_firsk && obj->type.solid_firsk)
|| (!args->for_firsk && obj->type.solid_snas)
))
obj && ((args->for_firsk && obj->type.solid_firsk)
|| (!args->for_firsk && obj->type.solid_snas)))
|| (args->for_firsk && surface->meta->first_frame == BRIDGE)
};

View file

@ -6,7 +6,7 @@
/* By: mcolonna <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/03 15:35:28 by mcolonna #+# #+# */
/* Updated: 2024/04/11 17:08:14 by mcolonna ### ########.fr */
/* Updated: 2024/04/18 17:15:45 by mcolonna ### ########.fr */
/* */
/* ************************************************************************** */
@ -23,13 +23,11 @@ void visual_loop(t_visual **visual, t_point p)
}
}
void visual_addtoroom(t_spritesmap_id sprid, t_point pos)
void visual_addtoroom(t_sprite spr, t_point pos)
{
t_visual *visual;
t_sprite spr;
visual = mem_alloc(error_err, g_env.room.mc, sizeof(t_visual));
spr = sprite_init(sprid);
visual->spr = spr;
g_env.room.visuals[pos.y * g_env.room.width + pos.x] = visual;
}