diff --git a/ressources/door.xpm b/ressources/door.xpm new file mode 100644 index 0000000..729055c --- /dev/null +++ b/ressources/door.xpm @@ -0,0 +1,235 @@ +/* XPM */ +static char *door[] = { +/* columns rows colors chars-per-pixel */ +"64 64 165 2 ", +" c #000001", +". c #0F0D0A", +"X c #100E0A", +"o c #100E0B", +"O c #110E0B", +"+ c #110F0B", +"@ c #120F0B", +"# c #100E0C", +"$ c #110E0C", +"% c #120F0C", +"& c #13100C", +"* c #14110C", +"= c #14100D", +"- c #14110D", +"; c #15120E", +": c #16120E", +"> c #17130E", +", c #18140F", +"< c #19140F", +"1 c #19150F", +"2 c #191510", +"3 c #1A1610", +"4 c #1B1610", +"5 c #1A1611", +"6 c #1B1611", +"7 c #1B1711", +"8 c #1D1812", +"9 c #1E1812", +"0 c #1F1913", +"q c #1F1A13", +"w c #201B14", +"e c #211B14", +"r c #211B15", +"t c #221C14", +"y c #231C15", +"u c #231D16", +"i c #241D16", +"p c #241E16", +"a c #251E16", +"s c #251E17", +"d c #251F17", +"f c #261F16", +"g c #261F17", +"h c #3C1313", +"j c #3C1413", +"k c #3C1414", +"l c #3D1414", +"z c #3D1514", +"x c #3C1615", +"c c #3D1715", +"v c #331C17", +"b c #381815", +"n c #3D1816", +"m c #3E1A17", +"M c #3E1C19", +"N c #3F1D19", +"B c #3D1E1A", +"V c #272017", +"C c #272018", +"Z c #282119", +"A c #292119", +"S c #292219", +"D c #29211A", +"F c #29221A", +"G c #2A221A", +"H c #2B231A", +"J c #2B231B", +"K c #2B241B", +"L c #2C241A", +"P c #2C241C", +"I c #2D251C", +"U c #2E251C", +"Y c #2F261C", +"T c #2F261D", +"R c #30271D", +"E c #3F211C", +"W c #31281E", +"Q c #32281E", +"! c #32291E", +"~ c #32291F", +"^ c #33291F", +"/ c #222222", +"( c #342B20", +") c #342B21", +"_ c #352B21", +"` c #352C21", +"' c #362C21", +"] c #362D22", +"[ c #372D22", +"{ c #382D22", +"} c #382E22", +"| c #382E23", +" . c #392F23", +".. c #392F24", +"X. c #3A2F24", +"o. c #3A3024", +"O. c #3B3025", +"+. c #3D3125", +"@. c #3D3226", +"#. c #3E3327", +"$. c #3F3327", +"%. c #3F3427", +"&. c #3E3328", +"*. c #3F3428", +"=. c #343434", +"-. c gray21", +";. c #401C19", +":. c #401F1A", +">. c #42211C", +",. c #40221C", +"<. c #40231D", +"1. c #43231D", +"2. c #42251E", +"3. c #42251F", +"4. c #432721", +"5. c #442720", +"6. c #472A22", +"7. c #442E24", +"8. c #492E24", +"9. c #413528", +"0. c #403529", +"q. c #413629", +"w. c #423629", +"e. c #40362A", +"r. c #4A3429", +"t. c #49342A", +"y. c #45392B", +"u. c #46392C", +"i. c #46392D", +"p. c #473A2C", +"a. c #473A2D", +"s. c #483B2D", +"d. c #483B2E", +"f. c #493C2D", +"g. c #493C2F", +"h. c #493D2F", +"j. c #4A3D2F", +"k. c #4B3E2F", +"l. c #533D2F", +"z. c #4B3E30", +"x. c #4C3E30", +"c. c #4D3F30", +"v. c #4E4031", +"b. c #4F4031", +"n. c #504132", +"m. c #514232", +"M. c #514233", +"N. c #524333", +"B. c #534434", +"V. c #544535", +"C. c #554636", +"Z. c #544637", +"A. c #564737", +"S. c #594A38", +"D. c #5B4B3A", +"F. c #5D4E3B", +"G. c #60503D", +"H. c #63523F", +"J. c #474646", +"K. c #484848", +"L. c gray31", +"P. c #848382", +"I. c #989796", +"U. c #DADADA", +"Y. c #DDDDDD", +/* pixels */ +" ", +" C.H.C.C.H.C.C.C.F k.C.C.H.H.C.C.C.H.F C.C.H.C.C.C.H.H.C.C.H.F C.C.C.H.H.C.C.C.H.C.C.F H.k.C.C.H.H.C.k.C.F H.k.C.C.H.H.C.C.H. ", +" C.k.k.C.H.k.C.C.F k.C.C.H.H.C.C.C.H.F C.C.k.C.k.C.H.H.C.C.H.F C.k.C.H.H.k.C.C.H.C.C.F H.k.C.C.H.H.C.k.C.F H.C.k.k.H.H.C.C.H. ", +" C.k.C.C.H.C.k.C.s { M.C.H.H.C.C.C.H.F C.k.H.C.k.C.H.H.C.C.H.F C.k.C.H.H.k.C.C.H.C.C.F H.k.C.C.H.H.C.k.k.F H.C.C.k.H.H.C.C.H. ", +" C.k.C.C.H.C.k.@.u s ^ @.D.H.C.C.C.H.F k.k.H.C.k.C.H.H.C.C.H.F k.C.C.H.H.k.C.C.H.k.C.F H.k.k.C.H.H.C.C.k.F H.C.C.C.k.H.C.C.H. ", +" C.H.C.C.H.s.F Y = s F p.v.v.C.C.C.k.F C.C.H.C.k.C.H.H.C.C.k.F C.C.2.H.H.k.C.C.H.k.C.F H.k.k.k.H.H.C.C.k.F H.k.k.C.H.k.C.C.H. ", +" C.H.C.C.C.Y ..r . + 7 [ k.k.C.k.k.H.F C.C.H.C.k.C.H.H.C.C.k.F C.C.C.m 6.C.C.C.H.k.C.F H.k.C.C.H.H.C.C.k.F H.k.C.C.H.H.C.C.H. ", +" C.H.C.v.c.{ = C . + 0 Y v.k.v.k.C.H.F C.C.H.C.k.C.H.H.C.k.k.F C.C.C.6.k.k.2.2.H.C.C.F H.H.C.C.H.H.C.C.k.F H.C.C.C.H.H.C.C.H. ", +" C.k.v.s.w.F 0 . . . = s { M.y.C.C.H.F C.C.H.C.k.k.H.H.C.k.H.F C.2.2.H.H.2.k m m 2.C.F H.H.C.C.H.H.C.k.k.F H.C.C.C.k.H.C.k.H. ", +" C.k.C.w.c.r . . . . + 0 ^ p.k.C.C.H.F C.k.H.C.C.k.H.H.C.C.H.F C.C.C.H.6.k k k k m C.F H.H.C.C.H.H.C.C.C.F H.C.C.k.H.H.C.C.C. ", +" C.k.C.v.c.) . . . . . + ^ w.k.C.C.H.F C.k.H.C.C.k.H.H.C.C.H.F C.C.m m m k m m k m C.F H.H.C.C.H.H.C.C.C.F H.C.C.C.H.H.C.C.C. ", +" C.k.C.C.c.u ^ . . . 1 { Y c.C.C.C.H.F C.k.k.C.C.C.H.H.C.C.H.F C.m 2.m m m 2.m m 2.C.F H.H.C.C.H.k.C.C.C.F H.C.C.C.H.H.C.C.C. ", +" C.k.C.C.D.F s F . + [ F k.H.C.C.C.H.F C.C.H.C.C.C.H.k.C.C.H.F C.C.k k 6.C.C.C.H.C.C.F H.k.k.C.H.H.k.C.C.F H.C.k.C.H.H.C.C.C. ", +" C.k.C.C.H.%.y...= & 0 ..D.H.C.C.C.H.F C.C.H.C.C.C.H.H.C.C.H.F C.2.C.k.H.2.C.2.6.2.C.F H.H.k.C.H.H.C.C.C.F H.k.C.C.H.H.k.C.C. ", +" C.H.C.C.H.C.w.v.% r @.C.H.H.C.C.C.H.F C.C.H.C.C.k.H.H.C.C.H.F C.C.Y.H.k.C.C.2.m C.C.F H.H.k.C.H.H.C.C.C.F H.k.C.C.H.H.k.k.H. ", +" C.H.C.C.H.k.C.C.0 ^ M.C.H.k.C.C.k.H.F C.k.H.C.C.k.H.H.C.C.H.F C.C.Y.k.k.C.m C.H.C.C.F H.Y.Y.Y.Y.Y.Y.Y.C.F H.C.C.C.H.H.k.C.H. ", +" C.H.C.C.H.k.C.C.u C.C.C.H.k.C.C.k.H.F C.k.H.C.C.k.H.H.C.C.H.F C.C.C.Y.H.C.C.C.H.C.C.F H.Y.C.C.H.H.k.Y.C.F H.k.C.C.H.H.k.C.H. ", +" C.H.C.k.H.k.C.C.F C.C.C.H.H.C.k.k.H.F C.k.H.C.C.C.H.H.C.C.H.F C.C.C.Y.H.C.C.C.H.C.C.F H.Y.C.C.H.H.C.k.Y.F H.k.C.C.H.H.k.C.H. ", +" C.H.k.k.H.k.C.C.F C.C.C.H.H.C.k.C.H.F C.C.k.C.C.C.H.H.Y.Y.Y.F C.C.k.Y.H.C.C.k.H.k.C.F H.Y.C.C.H.H.C.k.Y.F H.C.k.C.H.H.C.k.k. ", +" C.H.k.C.H.C.C.C.F C.C.C.Y.H.C.k.C.H.I.C.C.k.C.C.C.Y.Y.C.C.H.F C.k.k.Y.H.C.C.k.H.C.C.F H.Y.C.C.H.H.C.C.Y.I.H.C.k.C.H.H.C.k.k. ", +" C.k.C.C.H.C.C.C.F C.k.C.Y.H.C.k.C.H.I.Y.C.k.C.C.Y.H.H.k.C.H.F C.k.C.Y.H.C.C.C.k.C.C.F H.Y.C.C.H.H.Y.Y.k.F H.C.k.C.H.H.C.C.H. ", +" C.k.C.C.H.C.C.C.F C.k.C.Y.H.C.C.C.H.F Y.C.H.C.C.Y.H.H.k.C.H.F C.k.C.Y.H.C.C.C.k.C.C.F H.Y.Y.Y.Y.Y.C.C.k.F H.C.C.C.H.H.k.C.H. ", +" C.k.C.C.H.k.C.C.F C.k.C.Y.H.C.C.C.H.F Y.C.H.C.C.C.Y.H.C.k.H.F C.C.C.Y.H.C.C.C.k.C.C.F H.H.Y.C.H.H.C.C.k.F H.C.C.C.H.H.k.k.H. ", +" C.H.k.C.H.C.k.C.F r.C.C.Y.Y.C.C.C.H.F Y.C.H.C.C.C.Y.H.Y.Y.H.F C.C.C.Y.H.C.C.C.k.C.C.F H.H.Y.C.H.k.C.C.k.F H.C.C.C.H.H.C.k.k. ", +" C.H.k.C.H.C.k.C.F 2.2.C.H.Y.C.C.C.H.F C.Y.H.C.C.C.Y.Y.C.C.H.F C.C.C.Y.H.C.C.C.k.Y.Y.F H.H.Y.C.H.k.C.C.C.F H.C.C.k.H.H.C.C.H. ", +" C.H.k.C.H.C.k.C.F C.m ,.H.Y.C.C.C.U.I.Y.Y.H.C.C.C.Y.H.C.C.H.F C.C.C.Y.H.C.C.Y.Y.Y.C.F H.H.Y.C.H.k.C.C.C.F H.C.k.C.H.H.C.C.H. ", +" C.H.k.C.H.C.k.C.F C.m k k.Y.C.Y.Y.H.F C.Y.Y.C.k.C.Y.H.C.C.H.F C.k.C.H.Y.Y.Y.C.H.C.C.F H.k.Y.C.H.k.C.C.C.F H.C.k.C.H.H.k.C.H. ", +" C.-.-.-.K.-.-.C.F 2.m m 6.H.Y.C.C.H.F C.C.Y.C.k.C.H.Y.C.Y.Y.P.C.C.C.k.Y.C.C.C.H.C.C.F H.k.Y.C.H.H.C.C.C.F l.r.,.r.8.H.k.C.H. ", +" C.H.C.C.K.C.k.C.F C.m m 6.6.Y.C.C.H.F C.C.Y.C.C.C.H.Y.Y.k.H.F C.C.C.k.H.C.C.C.H.C.C.F H.k.Y.Y.H.H.C.k.C.F l.:.N k k 8.k.C.H. ", +" C.H.C.C.K.C.C.C.F 2.C.C.6.m Y.C.C.H.F C.C.Y.C.C.C.H.H.k.C.H.F C.C.C.k.H.C.C.C.k.C.C.F H.k.C.Y.H.H.C.k.C.F H.C.N k k l.k.C.H. ", +" C.H.k.C.K.C.C.C.F C.r.C.H.H.C.Y.C.H.F C.C.Y.C.C.C.H.H.k.C.H.F C.C.C.k.H.C.C.C.k.C.C.F H.k.C.Y.H.H.C.k.C.F H.C.r.k ,.H.C.C.H. ", +" C.H.k.C.H.C.C.C.F 7.r.C.H.l.C.Y.C.H.F C.C.H.C.C.C.H.H.k.C.H.F C.C.k.k.H.C.C.C.k.C.C.F H.k.C.C.Y.H.C.k.k.F l.C.:.k 8.H.C.C.H. ", +" C.J.J.J.J.J.J.C.F k.C.C.H.H.r.Y.Y.H.F C.C.H.k.C.C.H.H.k.C.H.F C.C.C.H.H.C.k.C.H.k.C.F H.k.C.C.H.H.C.C.k.F H.r.k m l.H.C.C.H. ", +" C.-.-.-.-.J.J.C.F C.C.C.H.H.C.C.C.H.F C.C.H.k.C.C.H.H.C.C.H.F C.C.C.H.H.C.k.C.H.k.C.F H.k.C.C.H.H.C.C.7.F H.:.m :.l.l.C.C.H. ", +" C.-./ -.-.J.J.k.F C.C.C.H.H.C.C.C.H.F C.C.H.k.C.C.H.H.C.C.H.F C.C.C.D.C.w.w.v.D.y.C.F H.k.k.C.H.H.C.C.k.F l.:.N r.H.7.k.C.H. ", +" C.-./ -.-.J.J.C.F C.C.C.H.k.C.C.C.H.F C.C.H.C.k.C.H.H.C.C.H.F C.C.y.o.) Y ^ Y C.y.C.F H.H.k.C.H.H.C.r.k.F l.m k.C.l.k.k.C.H. ", +" C.H.k.C.H.C.C.C.F C.C.C.H.H.k.C.C.H.F C.C.H.C.k.C.H.H.C.C.H.F v.v.k.D.R p.^ ^ *.C.k.F H.H.C.k.H.H.k.C.r.F :.C.k.C.H.H.C.k.H. ", +" [ C.k.k.H.C.C.C.F C.C.C.H.H.k.C.C.H.F C.C.H.C.k.C.H.H.k.C.H.F v.C.y.{ y.F 7 u r K k.F H.H.C.k.H.k.k.C.C.F 8.C.C.C.8.H.C.k.k. ", +" F M.s.k.H.C.C.k.F C.C.C.H.H.k.C.C.H.F C.C.H.C.k.C.H.H.k.C.H.F C.C.[ @.R = & + = 0 o.F H.H.C.C.H.H.C.C.C.F 8.C.C.C.H.H.k.C.k. ", +" r z.v.k.H.C.C.k.F C.k.C.H.H.C.C.C.H.F C.C.H.C.k.C.H.H.k.C.H.F C.v.s @.1 + + % = 7 ^ F H.H.C.C.H.H.C.C.C.F 8.r.C.C.H.H.C.C.H. ", +" 1 { { v.C.C.k.k.F C.k.C.H.H.C.C.C.H.F C.C.H.C.C.k.H.H.k.C.H.F C.v.Y K = = + + = 1 u F H.H.C.C.H.H.C.C.C.F H.C.C.C.H.H.C.C.H. ", +" 7 7 s &.F.k.k.C.F C.C.C.H.H.k.C.k.H.F C.C.H.C.C.k.H.H.C.C.H.F C.[ w.K F = = = & = ^ F H.H.C.k.H.H.k.C.C.F H.C.k.C.H.H.C.C.H. ", +" . & w.V F.s.k.C.F C.C.C.H.k.C.C.k.H.F C.C.H.C.C.C.H.H.C.C.H.F C.p.v.@.) 0 u = 1 7 p.F H.H.C.k.H.H.C.k.C.F H.C.C.C.H.H.C.C.H. ", +" . . F { H.p.w.C.F C.C.C.H.H.C.C.k.H.F C.C.k.C.C.C.H.H.C.C.H.F C.C.@.y.@.^ ^ u { ^ p.F H.H.C.k.H.H.C.k.C.F H.C.C.C.H.H.C.C.H. ", +" . . C { C.p.k.C.F C.C.C.H.H.C.k.k.H.F C.C.H.k.C.C.H.H.C.C.H.F C.k.@.@.c.p.w.[ *.C.C.F H.H.k.C.H.H.C.k.C.F H.C.C.C.H.H.k.C.H. ", +" & % k.F k.s.k.C.F C.C.C.H.H.C.k.C.H.F C.C.H.C.k.k.H.H.C.C.H.F C.k.C.H.H.p.p.o.y.p.C.F H.H.k.C.H.6.2.C.C.F H.C.C.C.H.H.k.C.H. ", +" = & { ^ C.s.k.C.F C.7.C.H.H.C.k.C.H.F C.C.H.C.C.k.k.H.C.C.H.F C.C.C.H.H.C.C.k.H.C.C.F H.H.C.C.6.h h C.C.F H.k.C.C.H.H.k.k.H. ", +" . V { w.C.s.k.C.F C.C.k.H.H.C.7.C.H.F C.C.H.C.C.C.k.k.C.C.H.F C.C.C.H.H.C.C.k.H.C.C.F H.H.k.2.m h h ,.C.F H.C.k.C.H.H.C.k.H. ", +" & 7 { { C.B.C.C.F C.C.,.6.6.C.k.C.H.F C.C.H.C.C.C.H.k.k.C.H.F C.C.C.k.k.C.C.C.k.C.C.F H.H.k.2.k j ,.k.C.F H.C.k.k.H.H.C.C.H. ", +" % V L s.C.C.C.C.F C.C.k.m k m k.C.H.F C.C.H.C.C.C.H.H.k.C.H.F C.C.C.H.H.k.C.C.k.k.C.F H.H.C.k.k m C.k.C.F H.C.C.C.H.H.C.C.H. ", +" = u ^ M.H.C.C.C.F r.r.k.,.m r.k.C.H.F C.C.H.C.C.C.H.H.C.C.H.F C.C.C.H.H.C.C.C.H.k.C.v H.6.2.k k m C.7.7.F H.C.C.C.H.H.C.C.H. ", +" 1 7 *.B.H.k.k.C.F C.:.7.k m 5.7.7.H.F C.C.H.k.C.C.H.H.C.C.H.F C.C.C.H.H.C.C.C.H.k.C.b l.H.k 2.6.m C.r.k.F H.C.C.C.H.H.C.C.H. ", +" 0 s M.C.H.k.k.k.F r.r.7.k k r.C.k.H.F C.C.H.k.C.C.H.H.C.C.H.F C.C.C.k.H.C.C.C.H.k.C.v H.6.k m H.6.2.2.,.F H.C.C.C.H.H.C.C.H. ", +" F 0 M.C.H.k.k.C.F 5.m ,.6.m N C.C.H.F C.C.H.k.C.C.H.k.C.C.H.F C.C.C.k.H.C.C.C.H.r.r.F H.m k x H.H.2.2.,.F H.k.k.C.H.H.C.k.H. ", +" 7 *.C.C.H.C.C.C.F r.C.m 6.6.2.C.C.H.F C.C.H.C.C.C.H.H.C.C.H.F C.C.C.k.H.C.C.k.H.C.C.F 6.6.x m l.l.2.C.C.F H.C.C.C.H.H.C.k.H. ", +" & C.C.C.H.C.C.C.F r.C.2.H.8.C.C.C.H.F C.C.H.C.C.C.H.H.C.k.H.F C.C.C.H.H.C.C.k.k.C.C.F 6.m 2.2.6.H.C.C.C.F H.C.C.C.H.H.k.k.H. ", +" r C.C.Z.C.C.B.B.B.B.B.Z.r.4.B.C.C.C.C.B.B.B.B.C.B.Z.Z.C.B.C.B.C.C.C.C.C.B.C.B.B.B.B.B.C.2.2.m 2.C.C.C.C.B.C.C.B.B.B.Z.C.C.C. ", +" { L.k.z.w.k.k.k.*.w.w.w.*.L.k.k.k.k.k.k.k.k.k.z.z.w.w.w.w.k.L.k.k.k.k.k.k.k.k.k.k.z.z.k.k x N w.L.k.k.k.k.*.*.*.k.z.z.k.L.w. ", +" C.w.w.w.Z.Z.Z.C.Z.C.C.B.B.*.*.w.w.C.C.B.B.*.*.w.B.Z.Z.C.B.w.w.w.w.C.C.C.B.w.*.w.w.*.4.m m 2.C.C.C.C.C.C.B.C.C.Z.w.w.w.C.C.C. ", +" k.k.k.z.z.z.k.z.w.w.w.k.k.k.k.k.k.k.k.k.k.k.k.k.z.z.z.k.k.k.k.L.k.k.k.k.k.k.k.z.z.z.E k.k.k.k.k.k.w.w.w.k.k.k.z.z.z.z.k.k.k. ", +" k.k.k.k.w.*.k.z.z.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.*.*.*.w.w.w.z.k.k.z.k.k.k.k.k.k.k.k.k.k.k.k.w.k.k.w.w.k.w.w.w.k. ", +" C.C.C.C.C.B.C.Z.Z.C.C.w.w.*.*.B.L.B.B.w.w.*.w.C.C.Z.B.Z.Z.B.L.w.B.C.C.B.w.*.*.w.C.B.B.B.Z.B.Z.*.w.*.B.Z.Z.B.C.C.C.C.B.Z.C.B. ", +" k.L.w.w.*.w.*.w.k.k.k.z.k.k.k.k.k.k.k.z.k.z.k.k.k.k.*.w.w.z.k.k.k.k.k.k.k.z.k.k.k.k.k.k.k.w.L.k.k.k.k.z.w.w.w.*.*.k.k.z.L.k. ", +" B.B.C.C.C.C.B.Z.B.B.B.C.w.w.B.B.B.B.B.Z.Z.Z.Z.B.B.B.B.Z.Z.Z.Z.L.B.B.B.Z.Z.Z.Z.C.B.B.B.Z.Z.Z.Z.B.B.B.B.Z.Z.Z.Z.B.B.*.*.Z.Z.Z. " +}; diff --git a/ressources/good_maps/door.cub b/ressources/good_maps/door.cub new file mode 100644 index 0000000..b169ef2 --- /dev/null +++ b/ressources/good_maps/door.cub @@ -0,0 +1,22 @@ +NO ressources/north.xpm +SO ressources/south.xpm +WE ressources/west.xpm +EA ressources/east.xpm + +F 220,100,0 +C 225,30,0 + + 1111111111111111111111111 + 1000000000110000000000001 + 1011000001110000z00000001 + 10D1000000000000000000001 +111111111011000001110M00000000001 +10000000001100000111011111d111111 +11110111111111011100000010001 +11110111111111011101010010001 +11000000110101011100000010001 +100000000000000011J0000010001 +10000000000000001101010010001 +11Q00001110101011111011110N0111 +11110111 1110101 101111010001 +11111111 1111111 111111111111 diff --git a/src/cub3d_data.h b/src/cub3d_data.h index 405b9b7..4e8553f 100644 --- a/src/cub3d_data.h +++ b/src/cub3d_data.h @@ -6,7 +6,7 @@ /* By: kcolin +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/07/17 14:59:37 by kcolin #+# #+# */ -/* Updated: 2025/09/22 17:17:23 by tchampio ### ########.fr */ +/* Updated: 2025/09/30 17:32:50 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */ @@ -36,6 +36,7 @@ typedef struct s_cub3d_data t_img_data *perk_logos[3]; t_img_data *tally_marks[5]; t_img_data *round_figures[10]; + t_img_data *door_texture; t_mapdata *map; t_player player; t_keypresses keypresses; diff --git a/src/hud/load_texture.c b/src/hud/load_texture.c index 24397ea..1aca228 100644 --- a/src/hud/load_texture.c +++ b/src/hud/load_texture.c @@ -6,7 +6,7 @@ /* By: tchampio +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/09/03 17:02:08 by tchampio #+# #+# */ -/* Updated: 2025/09/22 17:17:34 by tchampio ### ########.fr */ +/* Updated: 2025/09/30 17:35:31 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */ @@ -109,6 +109,7 @@ void load_textures(t_cub3d_data *data) "ressources/barricades_6.xpm"); data->barricades_texture[5] = load_single_texture(data, "ressources/barricades_7.xpm"); + data->door_texture = load_single_texture(data, "ressources/door.xpm"); load_points_textures(data); load_perk_logos(data); load_round_indicators(data); diff --git a/src/map/collision.c b/src/map/collision.c index 981b275..8add28c 100644 --- a/src/map/collision.c +++ b/src/map/collision.c @@ -6,7 +6,7 @@ /* By: kcolin +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/08/06 11:25:05 by kcolin #+# #+# */ -/* Updated: 2025/09/09 10:15:46 by tchampio ### ########.fr */ +/* Updated: 2025/09/30 17:43:36 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */ @@ -25,14 +25,14 @@ static bool out_of_bounds(t_mapdata *data, int x, int y) bool blocks_movement(t_mapdata *data, int x, int y) { - if (out_of_bounds(data, x, y) || ft_strchr("12345678", data->map[y][x])) + if (out_of_bounds(data, x, y) || ft_strchr("12345678d", data->map[y][x])) return (true); return (false); } bool blocks_view(t_mapdata *data, int x, int y) { - if (out_of_bounds(data, x, y) || ft_strchr("12345678", data->map[y][x])) + if (out_of_bounds(data, x, y) || ft_strchr("12345678d", data->map[y][x])) return (true); return (false); } diff --git a/src/map/forbidden_characters.c b/src/map/forbidden_characters.c index 68d9662..0ff4054 100644 --- a/src/map/forbidden_characters.c +++ b/src/map/forbidden_characters.c @@ -6,7 +6,7 @@ /* By: kcolin +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/07/17 14:18:13 by kcolin #+# #+# */ -/* Updated: 2025/09/22 17:16:41 by tchampio ### ########.fr */ +/* Updated: 2025/09/30 17:23:06 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */ @@ -21,11 +21,13 @@ * J - Juggernog perk * D - Double tap perk * 2345678 - barricade and it's levels starting from 2 (every planks) to 8 -* beware of zombies +* z - beware of zombies +* d - closed door +* i - open dooro */ bool has_forbidden_characters(char *line) { - static const char *allowedchars = " 10234567NSEWMQJDz\n"; + static const char *allowedchars = " 10234567NSEWMQJDzdi\n"; size_t strsize; int i; diff --git a/src/raycast/walls.c b/src/raycast/walls.c index 676239d..c653c77 100644 --- a/src/raycast/walls.c +++ b/src/raycast/walls.c @@ -6,7 +6,7 @@ /* By: kcolin +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/07/31 13:17:39 by kcolin #+# #+# */ -/* Updated: 2025/09/22 17:17:54 by tchampio ### ########.fr */ +/* Updated: 2025/09/30 17:41:52 by tchampio ### ########.fr */ /* */ /* ************************************************************************** */ @@ -66,6 +66,8 @@ static int get_color(t_cub3d_data *data, t_ray *ray, int tex_y) if (ft_strchr("234567", data->map->map[ray->map_y][ray->map_x])) return (my_mlx_pixel_get(get_right_barricade(data, data->map->map[ray->map_y][ray->map_x]), tex_x, tex_y)); + if (data->map->map[ray->map_y][ray->map_x] == 'd') + return (my_mlx_pixel_get(data->door_texture, tex_x, tex_y)); if (dir == NORTH) texture = data->no_texture; else if (dir == SOUTH)