From 081ceeb70e80c351901a1157e6ef8b10ac6f8ba9 Mon Sep 17 00:00:00 2001 From: attilavs2 Date: Tue, 15 Apr 2025 16:14:21 +0200 Subject: [PATCH] =?UTF-8?q?WIP=20(transf=C3=A9ration=20d'un=20ordi=20?= =?UTF-8?q?=C3=A0=20un=20autre)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 2 +- map/converter | Bin 21344 -> 23632 bytes script/test.lua | 5 +++++ src/game.c | 2 -- src/lua_inter.c | 23 +++++++++++++++++++++++ src/lua_inter.h | 2 ++ src/main.c | 1 + src/map.c | 4 ++++ 8 files changed, 36 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 2bbe7d2..3edeec2 100644 --- a/Makefile +++ b/Makefile @@ -3,7 +3,7 @@ OUTNAME = mtycoon -CFLAGS = -O0 -Wall -Wextra -g -I./raylib/include -I./lua/include -pipe +CFLAGS = -O2 -Wall -Wextra -g -I./raylib/include -I./lua/include -pipe CC = gcc diff --git a/map/converter b/map/converter index 1dc804242807aecad0a0c2ca2c77d0194dda3c61..b555b450be6f935adc2ef9a31843bb0f509faf7e 100755 GIT binary patch delta 7036 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 delta 5053 zcmZ`-3vg7`89wLUJ-c^bNj95glkmtUyanThfOm`Ivf2OvZv0mH<}53Yiyl2pim5e8M%(VVcG{WHQfn-m06! zTV*-VbG~mgNAu+){5xM~wmItIGNSz>WqDKb7q|VSXz+hWuW|;(okgdL3-52+rq}A3 zm#iv2Dl+{Hld%K7w(IsZm)z(JR5l65VyQpNW$enD+{CQy3X+&r!a~ual?4n;R1=$c zwIMasEY<@U+HthO8S6~UdYHh+Ee?Ev!jHS9Kz{7&rxoSOYrX*^1eC0CWM!zSC=<>s z6gk)62{jiT#Gq?LEEemk1$j$+B8!tV!<8_Hn!XB#A`fstAzG+ zJ7YHXI#kc)C%Q{2R)G(!rdUq*2ML9$@bPZRDQm4TRr_hrjehOfzP#;p@?+`dr zcD1?eDvZtEbOKg(hicA*qEmdRy%V*EB5$h7yId+7@DXLUIcSgXswc+4*Q^>ld>a1`8hv_|!)THH;(QSYY;+}mP!CcKbt z`3>pN<0}fLdQ1i2h91Wg@c;HWTt(~CBU-GnYBVhSoT%`sg2JhG;+UprYBw!nblg%C zYc9dF-B>!b!%iIU*(p)6O+ns5;6^L(KHx%;vaXJ@tAq|UJ=nz>Cj)So1&Do*jdvEL znYE_@5h3plo-if1mfK6Y)HXQ|8fq@X);rdYqO7eK6+f_oO$XB2sOP=rmWmuhyj9Bn z=If07qhgfWl~(jOkQ=&mrK99C2^@|mZ#B)cR0J|#8m&s}dYcT9W99~orumHVyA=qYq)Oxy>*fVJ>U{S`{kdg@(;ax0}h#IS&BZH*8Hjta>5U#wf=m zU<%8}H0@n!+oXf5tB4G*@1+ za69|pUI4DC>b4K#%hK}(p~tmWk1qpj+B>?&LPirk+a}3cuM5*|YK`8% z2sLj`Swrw9D~#*nM!fEw*Qge=zlRRDv{=ET;-br(=izXK%LgOPkOL4BWjt?Xn2MpowY``6cVlPJMz@F5gUd9q zK=yRs){*Sql^gT$+q`^3V?%C@T%3JNQdxcdhWg;7;E>wj@FBG$TyjVD7`Z(-T>c?@ zka2Ira=?ew$`^tI=bzMH?i0y z@cJvUSQ56=N$`Ad6f`g=M|=CCEX~Q~&&o|X!@?^ND}E^vqCb91@SBF1L(u}8mXP$Q zHr;F2vo(*yQ1)$5&$=9ojlId9+hgAad-b=m7{%%F*A|ky@_!BL$6@~=V~IBawgAx9 zI;hwsPZ>3?_|191C(n+~)kX!{T)9tZZP^98xZIt8m;B?HtV}E-qZ$}9Te#*^1C}r3 zD_UCk9bBw}ab-)kV*&<{ISIdBpy@!=9sU?9hFcTA z0L|@*vmrmm`$4YqQpy(o6*P+jm7q`ZwV+EfDE&U(4d11zh-djTKrVCADjncSur7Dy zGUPwR_h7I>RdkfU3x`!kEi`{(_6IN!j*OS!5}>+lBNIF?Kxd=HwUOHKGzgVr(3XI5 zFl5hpGS4Sz4N27?3fKTa0sYKI3+QSHll?h3x*mdLS0vMa4-~o~K2gjOrHn5U{ArMM z-DdlnGT3I4Gp)YPH5X*(XCPh&EvZxQECs`(68{s145|>HP)@2M(f%>0QxESeA&>=2 z#<`^Gt6|PTum|iKG)}#w^ajv`I4H)PI5yb;`!EG!(=8CiUlIo)(s!u8*fGZh(fNcY z^Id=(g<9CV9eRxxg^Alh93!*@8vTmYxV}*8tAHA>QlAG%N#U7ThM>j++(YU!q^7Qw zgGQ6+Wnv*AYE8tKgfR8AYnW?@_XtqJNBhsvcmf4Y#_gmvK~RK=Vu;3bS|U|ZNVaFl zMkABlk0BH9f;fk8g}RealtvLI7ElSx%n~+{ja*c8FH4M&V|Xt$&~lTX*|vBeSmQTl z`hx_ZKTi6l?@#W$P7r&EzL4jr_uh$Ghb20 z64tU+ZVIKfu48Oq02T0QDt1zCKzu=02W`s~k&3ZScw2S=0x`O!o0134XVp)h~-M zNda8Pel&t=Qmoz#To^-DNojtrC%D~a3siZaw<8=ULs3IDm$*;9;~19JxY$xX#6 z^ZMs9YkJglQr?pEZRl%2j}HuSHRTz2qoLe?qbWMa%Jv{_P@Vif|i2p%)1ku?nL| zc#LzxUMCXTg?$Qq)>uBR!b3hO?ZPv~1o!$NxJ%1V6FgiclE(=DcHuCN2+`Omvd;;z z2qBLMeV=e5vfdy>l{VZj5{(nWYrJSQ0^3jpSiUew@6d)Ni-g(2#Wb6?SELiu8!JQ- z1YRL@-Ma@RpHP9I((}YXVn&BZVcHS}*?~N+BZ3!+eO>GA-7Mt&9wa6i$V6$a0j&Wc&QQ{Gfhn%)Y1b73A^3%4W!%xp{oLykjnXUq3Q;d1m~2#Yw21eiXQ8w)S}kb@`@I(st^OeY%!mm-P#BU84e~FS>kw!A$f^aocqU^{wrib)dbAg+NxsbaZ8skU#Xhl`qmnq z67rj>@y_Fgro$OousBQ3uTFRV!u$kc?cash = lua_tointeger(L, -1); + } + } +} + void lua_mt_init(lua_State *L){ for(int i = 0; i < sizeof(exported_funcs)/sizeof(*exported_funcs); i++) lua_register(L, exported_funcs[i].name, exported_funcs[i].fn); diff --git a/src/lua_inter.h b/src/lua_inter.h index e91f19e..3a9982d 100644 --- a/src/lua_inter.h +++ b/src/lua_inter.h @@ -7,6 +7,8 @@ void lua_ontick(Game *game); void lua_onframe(Game *game); +void lua_onmapload(Game *game, int map); + void script_init(); void script_clean(); diff --git a/src/main.c b/src/main.c index 8ef6829..94fb078 100644 --- a/src/main.c +++ b/src/main.c @@ -30,6 +30,7 @@ int init(Game *game){ err |= init_game(game); init_ui(); script_init(game); + load_map(game, 0); return err; } diff --git a/src/map.c b/src/map.c index 8d21738..dba4539 100644 --- a/src/map.c +++ b/src/map.c @@ -10,6 +10,7 @@ #include "types.h" #include "draw.h" +#include "lua_inter.h" extern MapCollec mapcollec; @@ -39,6 +40,9 @@ int load_map(Game *game, int mapn){ return 1; if(generate_coll(game, mapn)) return 1; + + lua_onmapload(game, mapn); + return 0; }