From ed17380a83f6656229b21c5f3f4180a57ec4e1e4 Mon Sep 17 00:00:00 2001 From: "Ghostrider [GRG]" Date: Wed, 5 Oct 2022 20:59:21 -0400 Subject: [PATCH] Fixed multiple issues preventing proper export --- @blckeagls_EDEN/addons/3EDEN_plugin.pbo | Bin 137888 -> 155506 bytes .../fn_exportDynamic-3.sqf} | 59 +-- .../3EDEN_plugin/Core/fn_exportDynamic.sqf | 375 ++++++++++++++++++ .../addons/3EDEN_plugin/Core/fn_help.sqf | 2 +- .../3EDEN_plugin/Core/fn_initialize.sqf | 6 + @blckeagls_EDEN/addons/3EDEN_plugin/defines.h | 18 +- 6 files changed, 425 insertions(+), 35 deletions(-) rename @blckeagls_EDEN/addons/3EDEN_plugin/{Export/fn_exportDynamic.sqf => Core/fn_exportDynamic-3.sqf} (89%) create mode 100644 @blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic.sqf create mode 100644 @blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_initialize.sqf diff --git a/@blckeagls_EDEN/addons/3EDEN_plugin.pbo b/@blckeagls_EDEN/addons/3EDEN_plugin.pbo index 1068d5221b0469a044945c373c3d762314aa7113..991feb2fc8994f90c343acb546267262ff4b10a3 100644 GIT binary patch delta 54245 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

w7wRjs9%-K}wZ`Hj`23 z;!~yQtmSLGw1g&{jv1fUT?`KT-1^$X^!EHbwSLrP2m8kf2clNhrcHdV@N`xk=s}lk z+BDx(zkI;8K8-^7=Ikr({z9{5hN?LSD!~seZ1>+)sio86Q{Bi9$38*&{oB5A z$91e1xAiic3Es^U3}**r^SYnOjq;_skThs6P5Ky}NUIfsoy&WqBB6R~TJxOgb!&-p z>8+zKd;Dt#fFyiAcaLx7}Nf|qo0p= zn?ecEb4p=ub*vn+`0vB#`lq~^<{}mB)JyX0>({oh<&?YPZ@#)W7XN7e_=?f7H}rDM z-jCnil|fg(GSPLMnOLf8bDea#cAivm^3B^zGik;ls5Vy3Q(RgZ>mRrj)8bp4B7{$N z2`H>yEks}UPo2E&Oek;YfF*Z1OzqN31(i705u5k7hQOV~LXxhMSvE_G5Od@B$ zy_EQFmqNopATOr2&@{n>R&c?!O6BWtyb>gru|Gfn-7>Lnma8v^`=DiIvo0&$SdjhV zxB0EIt+#9|_xd!;^GT|(Vxp;4@irb>;U*+;R4^>2@RlX$r?YHgQ#@eS=o%PgVXbJ; zl5l-+;G}VWm_P-+Mz%~4N~ z<;J~L*-L2ogA41g>FZIgk{gV)m9Z5JhB(7k53iYCRz4*Dvbf=O=;xr&2WamYxmr;^ zip}V`>dR~ky>~gTp^~vwSV58^8EPvS*zD^yz+A1aj_OlhG}? z#Arm@)oVG2zB%ltW4#!1eVcv~CH%^YCPvGIvs?$~am- z%EOBa_204YjRm|7gdUo@dA*RN9j{)iw!W#6PW|D{;DErHIvEAabdm+|IkqWotrq@V1Q)c&GsdhXJ<3%V+&`955@X_$#ldfh90nq%~le4RB~_IdY! zSB*o5aq?w0?BV5OM9%^??|4dHcsg#U`?dZOiRyOZ(C}ssV>_Br+*E%^VJ(3!DD%=s zUZJ;7>5VUnv8(1zpoPbDwPM%RMHAJ}uZM*M5m?ChP7 zCmrXga0ai~T|r}+sIC=Gs>%kZWo>)|9}X=H%pz)jT%BB#JG(W-_F++w)&qrVB&IbvIPMW?@Y7#c^;T|#S9HR) zF7%W%WgYsis5!tk#mbe$E8j$pEA#kSpWNy->a@_Dc=H-DBka>CM=e4oTOJO<=V21L zD`IKA%sWuBe(NbZA@N&<4v|at+_dT=A1My;(qI~G|3_DKTmnyrn@MxL=6i~F zcan+b`suz)0_QCbr?XF;5RF-Pl5Nk3W@VbQKgd*`d3utVJ6%mjDa=(b^KGiVW6~+e z+Mdv@>PYf|Ccaudbg$Rt`vLp%VuH5`&rnOL%D%f|*#Cup3EReMdv@?XE#I+DM;>Fc zgw~U8Yd22r-#)(j=8)ZqBT27}Gov+dj*!;bT{u{zk&=5uSF){P-;-R)E{bnm%aZ#S};o^N%J zGC94D?&quQJG?(Ni~!F>X$i-<);z&F0qcW|DQ!vO?cwak6AAnWl5M5**RfS?X^LLl zm)7RBIBCFp%%iBRiG-Sgs#IV~_T9zf`kj2NiCQ;4you0!Dc94QIzO=C6bOfRL?4M9 z81$bK5uE0TWjZ#cb)y{3Hl)*UO&*;tdvJE1u1X-Cus$RBZIr+roo`zYSZ7Y@%p`?j zjq7v{J`g5h$_xBF?)q7g#G{1QHC`|xetnf zT9!+=-Fvog_)16trw%XwgMKcX)6%h<#adafCE>9HiUT+C2hX@$pCNZWDKda( zUnw$KTYnRa_o=%2odoe5f`dGQqk?P`HiQ$@cgPpzh$EPr>dx48R~%3A6CQcMN6qy9 zp=*rwmw9$rDQdw?CorH|5Us(O=pbb7>aqASl3%tt;@Dv?^IFX`LFX%aeU3R=qvI{a z8A4)NqC^Gm6VvD|n-^R}6J2j4BrXc8 z;d$XEE;x$*{^8rk##BUImzKWasr~x(S~dKp#5(mNCxp(Fq)YnL91rG)PAS|=Vpw`H zX2c|D`({btnlpi7wY!mW8h+t3rr{^jHLID7oU3YLpEz$`>@$4N3!knjg3{b{0Xd$xkZdkUaWLCOV(RhSXm&0m~&*qZfpPVPV#L(vG_0CBWg8be90zh!eQjn{`2L+hpk?!ILsvK zCHJtSuDd+C1huuY+o~ z&&9P%uG4#Z##~H`Z6DH7I+1=+98EgT{`?t5hI?+S?wpXqn%~Bu_iFd;itQ*(vJy|I z-h4b+{bl$OXH>q#5&Y^#jXN39xw5w<`1=biUmns;FvveqVVQpR&?`svMW@=^ozHAm z=EB2>&fbh6cM@{tZ98)%HdWod>%zF_CH#x$>&LazuXN#A1Z-aRU{^|hJ9}FR2Yst@ zwzPBN;I}f!rwK>TKbUv;>SLbH*;8ZBYUc00W4ic&ee}j0f1Y@+Yn+8!@i~@C*Bp{^ zj{!X1vQaJ76O8o_j*MiwlH9<1usq36GmkGT=o9RB$e+?TRDEpSmc+kMbYAoRDpi$_ z)ZsbWqP7esvCEZ8ibZc&=p}Rc$laOHywPi4Qu+5Y+$ZCv#h30l_52WnZOtle?{soh zMt=AcrLgOsi}O>b=w43sFLM_L>-!0rws(=x=Bv7roq$}~d{-`B_2~(<-VPE-RdRQ) z88l8XUeU5Jdv`cuylk`3_dMNqTj5Auef-1o_jFbdFO`7Ov!|+O#Wwx4^46!c|wE z?pcq(-InR_d>O}YQEk3e_)NI}Syg-sHTLEbUa#rrTd#Xxmep9Y6hgB5yqd>w@vD<$ygmTMdwdb#M?s6++ZyplGq15hw-0zG&o=NIXLov%TlH#Fy$Kg}`>q0tn?V1k} zXU<}4=1)&Obf`6szF=dd9QUa{YUKRg^X=0Gy-kp9jpl7B+c%PPHNWt`Z6P+=&!T8Z@1gf4snzGC?b$L%vn-c+^ISmSr zEluysO@wZ@EqU^PrpC+1cVgXCw-L$c#a=Zxm1GKKu;}Kc(PL^#^%tUM5uPl2{EQ*B zP^xV+$e$SxzGX_EN=K@vuczO|Ml2vr#Ed@F>s#Z;V&ok&=x@1?W&AYfx-p0SMf#xW zBL}#X3O{`!6Xea3;T?23jeD1H?y-U`&No6*n=2XS6;Xokh+h^eS;H?yw0b>>3RWkG zn-nLH&8zFk$Ebf3sc4!iN<8V#643J@&c@+RLMA!6=CI+cBNfl$CF# zZY)~9OtB@Twpn)J7PP34vUS6nn(Lqv9bmi68d)R z6%Ri*vMXu(nfWW%b05f{*{*MtRpHBg#HQ#=IPv1%3I}m)+qs%;Vq-M8(j@RS>U|C# zyGkNSa{hRBkK5}B#?hFf8tv+k++cd4xVDRNLy0fnf6EVG3C8C0AwGbb-l+PtYRN-dHfO|@z<}9qdkvR``{bOwl5jTh-zex1>c!P3ugw~i7CHr^U2T>dvk&9 zBpNHNpriXslidCmp;yLe;iArCk1SyxOTOCgF3sEwr3~61IL?e{jMNXk>Nq?zyeb^N zwt%&USJAjKCKQmTgr~?KxL-SO>H6)j^`y+N9jRr5?^llH)|@lnu<;4gb9_&~?+yMj zg-+^%1~J_xT;Y{_i83iCqyr-6&lEbj&G9j!H%<>r^oY1`zP-EP?4cO1IxsZq5Pu{+ z>RK_1MWE$MsCeF16DR*zfx!vBjSDm7v8_hWwEZft$2==Bv$5hZ06zY&SI_|cZifSJ^jpdJ)GppmDZOUMA{PId-iin1$dWhnuwxk=f)vwB-3&3v44_ z(aWm_Ejfmhczt<2M<*;I-y;$sW;?U4Juj;G4% zDI4#soxQvyI*`#j<+r{4X?(?o`E6OCf+d;{|Kl4YAMEofuTD0ZSR4@dsJ1a=nysXE zPNub@Q$OwJGIle=WN~WY%>q}_boXmX&*ry@+NWk@zw~@~^!iz!`et;+)EZQIn~15O zX`LX^PmeLQo5@d5n4JI9M01AhiL4us4Y{wm(O3yL0c2_DxUztFZicxO*C)UA@W_L> z=mLAaai=1oV(oD~dG7D$V*-W<#+mv)7z|>eth;HkN2)uXwplec39y^7g!@@tqy5xf zr8Apyv|ZswLYAZ@yG%0pa>Db#7{A`?q;fC3CttBUGCs*)t7Z?2zginTX042EEe3Fk z^cPYBjuDm~#DAq=aUGe5OR}8q^Z@hN&zhUM$qC_zB zhlM-4RcIW$1kpZVa9e;+#`qRl%3NEP2|tlW$FXQ?m||tzRkIy_&Q@=}vAX|AKGC|T zY^N>1T_Tl=qPM24rsJXR((Q+f3BfGS_Qwb7v37r&Jujt8rZeYS!>XIE)dN-JXxIwl3QHbxxrKXT8uN7uC zN9`U>F!b!(hi|2H4zA&V9-;#wkBcG3M*hqlhHU!kF_GB(Ec;{dllH6L(^k=o)G=g8 zRbZHk7+>6$5HkN@@#Pf>?%PuJ*MhwX0VtKgw2_wsq$>odNUr6(fqoox^iLyF&l^8* zb?+GO`YxY8@#Wi9f_<0h<@SHoq5tqf&eBp(R)BVTQmHR->zvb*?R~^n=yr?dK!som z(yw!?;>QmdsrfRqM|Kh1BkK}HDTye&V}2V)l<3-7^_j$zY6C@jRp(5-bHbS>$$QG{ zN?16`I1wq5wDi4CT%5A=*aK~5yWfSaC5=5fI1cat=Gck*$ZyU^E2(t()Q>oL7PZEC zNVWUtQ(6%TdhEYh+582a7=wO&F@o~;tV#Ln7Y?(pQH|8@TgS&&p4rXPn?_I^3s)-f zmnuM~3C<1Fe1CPue%ftK=f&Jt+c@zzTI`zy*Yvi|M!jD8K>D`3v=sO5mn~oUTC*c> zn$@m7eWE?G=!q`*w3OcK8=&S_qoq!DkkiH#i=G*!K{<_W5q&R)<&=%P?0qa879QNzlIX!O*paOVQpr9Q&PlxIj_Yq7f1QLX{p0- zU}K}F$au)*@wDdNNTV(p(w89$4(wKFXExFqS-Z3$}6nr)xo--d&`}IP# z#)3&u9Z5YCzClD4uH&hXiUIvi#TJJzKN=goyTyOkDE=NfaRE7jYMLUODg}YM2K3FH z*5D&ux{zif4Tt_*`%`hAM}bX>c#Nf$EM2@x?GnrnCp%tFT()_>;ve@RD-JzEAS;L# zjn%|?mMqE^KYaL=FVFI*)C9ApLT8)zZ~5&{-MEW|R+#EPiqhEzgBT z?~l`EO-;VpTqaRJu|W9JW&X88=986go*T_?vc)(Z9Mt{A51OrRek7dg(S5Rp_u_@; zX~&l_b}CE)#d-$r?G)m9Shu*3kQpg46}!5@Q7<*lkt=A@6U{1V$GkU^mNa2u85vJ- zG?$*rGWP4A_V)cmi0!0#vW{wD)Ee!S*xzlI`=GGOaqPLfNoSZAc3dPu-||OqElsYf zi#oT%Hk8Z#AJDO+8IctZi3w46lv~Bg9WY7`eO>t6$KOMdR(~}j^10YiC%umx9*1u} zufB|4dLxAYs3Fm^mC(28HLkfa*ZSxu`R}Dyl)?LK7sp+hz)S7E??dAi$u**s(YCWf zF$#>gxvlRPiMA3Rcu-Z}XI*K3P4xW7PuUscnOmKiYd+#n1_Q)=8~h5QJFP`t%E$=> z7nNt?Rcd=n?@z3@sW`73?d9pws~v=${xwB1O=87)HPpxWlTf!SRqw0A#QL#3s@0OR zLh-T33MZ>;MO|VtBJ9`k)w-T!n+>C1`IMAam72=Dy51(G&%KaO4-z$NlON3vRZYxT~XcZ8=p1}15g zi3pgj(N{LB0i>@pi70|@D5Y_Hp?>?7?_rueevaH+8oBj6Tes^}*z@1P7irpY(J~zL z)m|sxeP5(FBgpcd@_k^CZG!A!z5<$kH?xvwoV*Lf+1^n0h|QQb&Qc36#e=t*ty~vx z9U(Ef+|Ct9(Mp;a+{l}cNVuOfCaJvCS2NxZH zxUo#NW2JG=omytfeDkjR|`s*A08BkSm70Mh?@3~tpow- zk!Bv@0R=!a>0nPDhy*^%1DR9rwu#Nk4g^O=;=+r_z#n)ZCWfCm{z$lL?5rjAZO%p*#1sfTV ziF1$+JTU;V!Mf)mNmxY)^20(A!h*aIJvShPe3{wC&y3@MD2Ues?vVf+`i?)x+d_a1 z-V%ZYxj-HWBBBD~RPT)v5{=yoeB9eBK*h!be4tnWHV}qrB$3n~T|~HyDYeIQ6d@24 z(E7dM-~bURkiZ`tGVnEFNRSb&l$EzAsL;yR)(6B@a0lN&2ciQK z5B(ugR0fU`g+$?-qL3BfbM;Ax7S1~f5s+JXU_vzm`bgO1Uj_KzZ`vV9?SHUoR6m=B zX&dTaVcZ_yJdp3{gP`&VX->4as-Tk z?GYf)xkn&Qphm#_sI`HZ;E5v;4RR$w2PPv3-~3~y{0vG1vuH!igkVf}f>gsclF*S~ zo^O_fNKm^^ffgttP5F&o|9Qu_fw+X5LEP|!6vTwg_r30DNkbC9Gy-%250-a=h%h}t zf=UBs>_yi3SDO6WP=IOvyO!V4pFd}YgQq<*65d*n2%Z(V0oRnW&|!KMp}MXS+hG+| zJvLQ)B>V}RfxAD5(}&T@rhh~Am$1tmMj*lk@)>rAKyNP}Kb4*6%SfC{5JC)mkee5o zD16BG?03RUoIpZYgoL7C25*R255>9j)q4=zA#gWPx(TAX*~ET%7>T8TJQrf`V&i1x z?gc&quL_coT0tBEcNY-%Pl^MPC9)168Em&8L%78o(t|s1fgkeQkU8ve8?pc+QvidB z9C{m)gV|cZRfG@Z1kd?E0&so{bPD$N1&e}3E98ijtOfZmTA^szx(#vz3FMt%*;r_U z%;0u^D0DxVUc$ON5vHw_RrQQjk0FXoL;(B+QVbiP0d+KVLOM8@c}Um=Nn?Zc3}y=g zE6ULTh#Ch`fv{)*xb+Hv_Jf5~W+$^O0HQ?XrXv87{F!6h6r&$tJq-SV2BSFDa!^g*MWk5!N{ru+S?io2_Q{f42I0{5tWV1A^&d3 z0)E;J$zl2nCO#)je-;dg>sja|JQxRbvgaLOd3-$!@nV*)+GxONxlq7|r8|%-;m?KO zK`1l=%ie=La51Feiu+ImF5oSwL$wFu#*p{!fjF3vrdfGl^!ko=Mq=jt(Cu(-4pD&pbdnd$SQ!*1n&XZs@}qz+8~CdF51|Lf5MckqP>31676qx1U>@09 z?lz+!Mk!FO@Q){roNc_3_=Fs)Iy#yLMyg;EfzDwT9V3@uOpe(haS;LVzXe!L4Wa>A zk7$Si#C=D;eh*JNK=cHd$%YtV)zJ_?=+s_qZ=)d|&^0i2fV*t)WpZQ*~zrhtI?U+vRdBB!h#5 z(t;IVf-zl-g+$=wi$Lk?UV%t(K$tBy*eGr{?Q$GMwo?y6jS#REnM6P{0XZ>*Lz5wX zM7#{o0eLA;2D9|)IY=C{G>o5v^bld68~~FNF?m2LAxxAE?yjGQz=v)Kk%6R&2MdU5 zJmdz~#zQ_xA{bNt3y?Z8rhhVmfC&SC69VFDnGWHDf&FV!=yzKPJYpyeQS&3Ez3lCM z^&NMW7-A3+{-V@?mPE`!0hlcTVnA%LUo$am1fuc3^LUp+QFHd;*x$fG3=A zPXbt$|IC}0f!U=GgVjAZ6|(zT&x=Pu1!F4HehkLa z8~h*xdp`{lMjopj04jhi9ijo`d11u`U~e0yBTF*4!{njUAr>%v7Qphonhx>91L>fM z*C50Q#4=$Ju%%`Yq=sb!F$=p0ks|`fi4ZQ&M9dB#?U=e(FG3tUx{&QPP-DUw&{?=5 z17ZL~l0SmQ8pz#D1|)!~Har`69M%dD4&3n+(%6w;p)4T#*E12lwM+6{=8o5s3f?Az ziL-&g--01Vrk{qd6$mr}V(0pJx$la$%`liops5TnhFQIMn%}Db;mn}m!CXX95VFG_V?a)l#vsO@kLz3lb`OTt zuFt_x6kLL6G3y3!dM*Jy8+IR}JNPSAClJxZ8+6Oc#nTalk?{#q$0Y3N0MHDDJgAEL zmj~FaFdhb&5SnAak#ieE#*>hp7uI(IqqV>X5n%BV!rqr5iJxt1y9`moBrkSsF@YD5 z7Mz#|*?`bezwp-1-`3_==DK@%`6+vO`q==(!e@8fR$c(@wvi7+faD6Khp7N?nHmm% zxkEeuC0I{VQh_~Z0RxHLyaMq67VZt8jfaPql2@PuSU4mLz&IQ)fb0=gw-rF_^vERN zbHWjGX17wrIR)a$UI-?LWFeTH)>S}q&lZA-zH$|a(9J@iN@of|%Sf++A{3>dL7`2M z1nhkk3;?(igWIoy6#|n1p3p=dV}y@Pf@eLifn^We(!(i}KqfF(->!i=Fjs8#5H74) zw3`8n5WvYrfF36IWzp`lg2j-`4*7`dfH!I-K&Y-3gF4!Z!Mv$0*=^NsE(el93!_Vb zYW_p+GE#W35>WZ}8p4MOr-94yTM-~!d%0!PK-K(~O9cZ01Tf!ghys>*4H^8B`?wT% zG`r8r|B?Y(1sL`Q+P{-q{RVXK4@9NPfkMGNYf=8^Tu>!GJX#J01ykhx+rMlTK8&t_ zh68}ASr(2{zBr)QHOb)Q_gTmUsl*0%Jkd62qIRInC z2s2khRM^0_hYwc+AyI4uVh~;p5n+;&tHFYRDK%UTkztbFRRaZrNfM|5dmzYzM{7V5 z@*v6p_}8FjBr&N5Oma-QM>Rl`VXla4!P0`cGOh)zK(0s;Cr}5p`p0A7Gj~588>)pU zFys}wAzmzCD1hShu)qz7TNq^pgdc<_LjqqZfuN3T99AGypYD$d0czj7mEn*9Pa;Ca z40Hmrzky5{q=XR&_^ktiApKGT2`c2|VB_?0WCJs2wH?mV`u`d7NTZ|P@Eu!yt_Y$l_-N~AVys9y+a^3 zHBFExP-SnL07Eca3VO|8Iw4yMOu(f7hh8X%D*e~K?e4y%2N>CZ=!gE|uUdJ?fVhJ{ z+(_gGLCta$%*7uo)wa2Kg|-9_M)>~3kmop*pDzaI@z(){#F ze$9Uu4RQU!libC^uO-Pf8CY;x+{O@t}ycbJ|A~Zdj7}!7hA*{*fSw8wu8B{mxnh9d+uwl3ATn2 zYXXEsbwsQ}A!l!I5D9nJ;Mghsqj|oVf*Tup(V!(O(Uv#m68}%--5=TzglqP80kOy&&mVt z7TA{G!+ZeK@-O^4I9(QE|NS`jZwiW9K>}d+$Ar5R5TL|2A6gu$B zQ4)(H#0EAkLtqj)ND)}A$jOKt*rW@PgANjb+r9Gn0E4yH{I?2_;NLW# z7jDS}-3?QO@b)@F2Y*)t`;HZgknkUSgUOQnn=UyhK?c8diRQ1m1U8Q4AyEL4LBXKK z60oT|qOaO$%(!47hFku7bp=OVAc(iUmj`kn58w|fdx!xl0t{jSOh!0X8#4WU7Kr`jbODDwdwlc<>etE- zgaH5L0MtkaasucAD;HnQAG_?oiss+Jt`Kw>;5mX1gROKSTewRXvIYsv24K%mO%HQK zUabfA8>RIj6=b*~^`UTTP>qeP7l_2Zi@ZSQ9D@NkRR?G=Ik?3DV#MrqV~+N%Y#jio zX!nqG2RZi7C>%TnG2#Kokq`)DCm)yxw#Ojh-DcecnZ)2Q0d&;Y#r`*N4mi&H3r+JA z9O38U0l);vaQqxfPa|;XHD(Id^ovGdA9PPd{u!-32olU{3`rxru`q_jk>e;rQ6OqH z#z0J3jUh+mSo_zZko)U4{%qtPVHCi&e{`WxWS&pJK4>@kR@y*Z9=g(Lx@ zKvd*@N{Qeoyw!E=|=)t@db%tobKU2;S6*57Pg$5%ApqQgIbO^I% z=UGEMpbTaaeqjxo#%2RrKLMVE^=u&i9bw(Yg^?0E*z01@5;7QE)!(dqVa{Nh5Zi(i zsy$+$uAK&egJvKZm{kWJvV~58x;vF1YSta4^#fso9Opae>+NYT6k&R(HXF=l1(ELn z8g|yqUx$nG&%*`N+e0>RustM3i-2AKf~P(90G9-K%8{O@O|)z4>>3W71OT4HCM?W` zg8z!k20s`KED3| z+uZ?Qd)&df;~s^-F^7QIAm(z22PBRMV3H1qUVaBwX9a8uMNQBz1Y-ww z`U5dHAaMt|am>cv#orfXgPh+}(mNUGumn))Qw%iRAb$^7cK)`liD`14{1^`w7yjx%Zi#&qT zXn(=9xC1A~*ACzn!E*UGXC?rt#SSx10Ttz)yR*js8SI6N%>6$jz5WG!7lxM7lV1^8 ze*k&4KLM|J{M#U}-$7ZwfV|-UIeeD^to{t*|Mx*&$SjWlNVi=C(qRmY7XgI9Nm&5i zVE|J(uMDhLKOc2?h8SC(f=b9moB{U98&vrV*Uk`3jvcc{S)+7%6|&n`diG_ zC4fl#3y{_?2)@6=V_hEypqGCakHrkrP5^+@?qLBVd};z>2a`H<0^;7mCKl8KE=WxR z6Bhuq2;nyqkRWhX_TFuPck_WC1r~4&pyVfh>tBUw{jWl;sNn~%fp>?&GXW&m|82aL z?F`@@rt&{St*Bt!S>VwB4??YsZh(y;1cwB}H$bN`S3P@I8#jP?he_k8+sUPYP3i#L z2_pbt6BmQeBZRHyG2oc=d60ks$8632c;5!G;lax@h+CWd9(1haJ=jMQT>xMz1TYI6 zdvGlSdn|xO9FxlY7-Aqn@Yg^7SnL?klwkYL3ga09mly#;fj8#(76CNaaS?c}MT?N= zk4?*oMIe4(7lGDh`2bmiw?qEoeM02DycGg0PS_IxF@dY22)q<^4PwGZz}rWbAbuv) zkL66+%N@K@0+ut(#W4r4KMaR00Toq({5)R5yvH_P1h#dQ-2IV-WGWD1*}axt2G)z` z3fOeKxD3#h-k$;IW|pD-_&Xg0*47GGt|V6=0fL&AF zh^MYWhkoAWeFB)Lg-^gG75xmj2%0DLqvq5yXg|#k?LRJQ3#6#HiNK)5M_}FVJQit2>o4*+#MXe*~Ec!yt{@V zrluPpv`g~m%QDzlSRAl578WzCgav4Ut0OzN^;m%UkFl^McWw`0WBs4DuIIIhCn-}p?aVjbZ-o%4m zdMx4}&=wS-r}hsJq~b*o^qbvuvljQT``+v?8Y>JA*;~^gq-|d>0p9iY2-L( z+ZuK2N*^y3ZDhH!bosYN58z7b%j?lTRV~ENo*9T^*!S@(=H#GG861Qvwe*5*S76xT zO1HzGbXwv|iqcR5t(t8)yNaAwM2VAj1-O?R6_D{)MZ-=0+04-p#ZVCGn~QusMB_s0 zAH!tvZV00fxR{>d$<+oUSThV*9q~^5S%rlsO%xQ2o#HiVIY2YQbdirWlj&m7>Eg;; z0!Z5hq$8^v>}$al(=C)2=;!^=XX`K}1g3(2FwtzCi68|RNzJZs5r1x#F=vO1hT3SI z;e*_b{D+W`OI%~53iQD#2FD^)IBUNRDw+wnAyMBIc(lb66rI-9AN-JFMqy^sTq*N>3_!I&{cJ`j6NuNg5vBx}y bI`HeqTkFHk^FyPHGn?x9xAf09o9%xAs3utR delta 50078 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 W*4OVfzkK_AvpD``d*{}VCw~BeOjcR| diff --git a/@blckeagls_EDEN/addons/3EDEN_plugin/Export/fn_exportDynamic.sqf b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic-3.sqf similarity index 89% rename from @blckeagls_EDEN/addons/3EDEN_plugin/Export/fn_exportDynamic.sqf rename to @blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic-3.sqf index b392993..0dd6c6d 100644 --- a/@blckeagls_EDEN/addons/3EDEN_plugin/Export/fn_exportDynamic.sqf +++ b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic-3.sqf @@ -1,12 +1,16 @@ /* - blckeagls 3EDEN Editor Plugin + GMS 3DEN Editor Plugin by Ghostrider-GRG- Copyright 2020 */ + +systemChat "Staring exportDynamic.sqf"; +if (true) then exitWith {} + #define oddsOfGarrison 0.67 #define maxGarrisonUnits 4 - +if (true) exitWith{diag_log "Exiting at line 9"}; objectAtMissionCenter = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "objectAtMissionCenter"); blck_minAI = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "minAI"); blck_maxAI = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "maxAI"); @@ -23,7 +27,7 @@ lootVehicleVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> " buildingPosGarrisonVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingPosGarrisonVariableName"); buildingATLGarrisionVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingATLGarrisionVariableName"); -CENTER = [0,0,0]; +//Mission_CENTER = [0,0,0]; diag_log format["Dynamic Export called at %1",diag_tickTime]; diag_log format["With blck_MissionDifficulty = %1",blck_MissionDifficulty]; @@ -384,40 +388,41 @@ _lines pushBack ""; _lines pushBack "/*"; _lines pushBack " Use the parameters below to customize your mission - see the template or blck_configs.sqf for details about each them"; _lines pushBack "*/"; -_lines pushBack format["_chanceHeliPatrol = blck_chanceHeliPatrol%1;",blck_MissionDifficulty]; -_lines pushBack format["_noChoppers = blck_noPatrolHelis%1;",blck_MissionDifficulty]; -_lines pushBack format["_missionHelis = blck_patrolHelis%1;",blck_MissionDifficulty]; -_lines pushBack format["_chancePara = blck_chancePara%1;",blck_MissionDifficulty]; -_lines pushBack format["_noPara = blck_noPara%1;",blck_MissionDifficulty]; +_lines pushBack format["_chanceHeliPatrol = GMS_chanceHeliPatrol%1;",blck_MissionDifficulty]; +_lines pushBack format["_noChoppers = GMS_noPatrolHelis%1;",blck_MissionDifficulty]; +_lines pushBack format["_missionHelis = GMS_patrolHelis%1;",blck_MissionDifficulty]; +_lines pushBack format["_chancePara = GMS_chancePara%1;",blck_MissionDifficulty]; +_lines pushBack format["_noPara = GMS_noPara%1;",blck_MissionDifficulty]; _lines pushBack format["_paraTriggerDistance = 400;"]; _lines pushBack format["_paraSkill = '%1';",blck_MissionDifficulty]; _lines pushBack format["_chanceLoot = 0.0;"]; -_lines pushBack format["_paraLoot = blck_BoxLoot_%1;",blck_MissionDifficulty]; -_lines pushBack format["_paraLootCounts = blck_lootCounts%1;",blck_MissionDifficulty]; +_lines pushBack format["_paraLoot = GMS_BoxLoot_%1;",blck_MissionDifficulty]; +_lines pushBack format["_paraLootCounts = GMS_lootCounts%1;",blck_MissionDifficulty]; _lines pushBack format['_missionLandscapeMode = "precise";']; -_linse pushBack "_useMines = blck_useMines;"; -_lines pushBack "_uniforms = blck_SkinList;"; -_lines pushBack "_headgear = blck_headgear;"; -_lines pushBack "_vests = blck_vests;"; -_lines pushBack "_backpacks = blck_backpacks;"; -_lines pushBack "_sideArms = blck_Pistols;"; +_linse pushBack "_useMines = GMS_useMines;"; +_lines pushBack "_uniforms = GMS_SkinList;"; +_lines pushBack "_headgear = GMS_headgear;"; +_lines pushBack "_vests = GMS_vests;"; +_lines pushBack "_backpacks = GMS_backpacks;"; +_lines pushBack "_sideArms = GMS_Pistols;"; _lines pushBack format['_spawnCratesTiming = "%1";',blck_spawnCratesTiming]; _lines pushBack format['_loadCratesTiming = "%1";',blck_loadCratesTiming]; _lines pushBack format['_endCondition = "%1";',blck_missionEndCondition]; -_lines pushBack format["_minNoAI = blck_MinAI_%1;",blck_MissionDifficulty]; -_lines pushBack format["_maxNoAI = blck_MaxAI_%1;",blck_MissionDifficulty]; -_lines pushBack format["_noAIGroups = blck_AIGrps_%1;",blck_MissionDifficulty]; -_lines pushBack format["_noVehiclePatrols = blck_SpawnVeh_%1;",blck_MissionDifficulty]; -_lines pushBack format["_noEmplacedWeapons = blck_SpawnEmplaced_%1;",blck_MissionDifficulty]; -_lines pushBack format["_minNoAI = blck_MinAI_%1;",blck_MissionDifficulty]; -_lines pushBack format["_maxNoAI = blck_MaxAI_%1;",blck_MissionDifficulty]; -_lines pushBack format["_noAIGroups = blck_AIGrps_%1;",blck_MissionDifficulty]; -_lines pushBack format["_noVehiclePatrols = blck_SpawnVeh_%1;",blck_MissionDifficulty]; -_lines pushBack format["_noEmplacedWeapons = blck_SpawnEmplaced_%1;",blck_MissionDifficulty]; +_lines pushBack format["_minNoAI = GMS_MinAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_maxNoAI = GMS_MaxAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noAIGroups = GMS_AIGrps_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noVehiclePatrols = GMS_SpawnVeh_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noEmplacedWeapons = GMS_SpawnEmplaced_%1;",blck_MissionDifficulty]; +_lines pushBack format["_minNoAI = GMS_MinAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_maxNoAI = GMS_MaxAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noAIGroups = GMS_AIGrps_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noVehiclePatrols = GMS_SpawnVeh_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noEmplacedWeapons = GMS_SpawnEmplaced_%1;",blck_MissionDifficulty]; _lines pushBack "_submarinePatrols = 0; // Default number of submarine patrols at pirate missions"; _lines pushBack "_scubaPatrols = 0; // Default number of scuba diver patrols at pirate missions"; _lines pushBack ""; -_lines pushBack '#include "\q\addons\custom_server\Compiles\Missions\GMS_fnc_missionSpawner.sqf";'; +#include ; +_lines pushBack '#include"\GMS\Compiles\Missions\GMS_fnc_missionSpawner.sqf";'; diag_log ["dynamic"] call blck3EDEN_fnc_versionInfo; uiNameSpace setVariable ["Display3DENCopy_data", ["dynamicMission.sqf", _lines joinString _lineBreak]]; diff --git a/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic.sqf b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic.sqf new file mode 100644 index 0000000..a7e7a61 --- /dev/null +++ b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_exportDynamic.sqf @@ -0,0 +1,375 @@ +/* + GMS 3DEN Editor Plugin + by Ghostrider-GRG- + Copyright 2020 + +*/ + +private _m = "Staring exportDynamic.sqf"; +systemChat _m; +diag_log _m; + +#define oddsOfGarrison 0.67 +#define maxGarrisonUnits 4 +objectAtMissionCenter = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "objectAtMissionCenter"); +blck_minAI = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "minAI"); +blck_maxAI = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "maxAI"); +minPatrolRadius = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "minPatroRadius"); +maxPatrolRadius = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "maxPatrolRadius"); +maxVehiclePatrolRadius = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "maxVehiclePatrolRadius"); +aircraftPatrolRadius = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "aircraftPatrolRadius"); +garisonMarkerObject = "Sign_Sphere100cm_F"; +oddsOfGarison = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "oddsOfGarison"); +maxGarrisonStatics = getNumber(configFile >> "CfgBlck3DEN" >> "configs" >> "maxGarrisonStatics"); +typesGarrisonStatics = getArray(configFile >> "CfgBlck3DEN" >> "configs" >> "typesGarrisonStatics"); +blck_MissionDifficulty = missionNamespace getVariable["blck_difficulty",getText(configFile >> "CfgBlck3DEN" >> "configs" >> "defaultMissionDifficulty")]; +lootVehicleVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "lootVehicleVariableName"); +buildingPosGarrisonVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingPosGarrisonVariableName"); +buildingATLGarrisionVariableName = getText(configFile >> "CfgBlck3DEN" >> "configs" >> "buildingATLGarrisionVariableName"); + +/* + Set Default Values Where not Defined using Menu Commands +*/ +if (isNil "blck_dynamicStartMessage") then +{ + blck_dynamicStartMessage = "TODO: Change approiately"; +}; +if (isNil "blck_dynamicEndMessage") then +{ + blck_dynamicEndMessage = "TODO: Change Appropriately"; +}; +if (isNil "blck_dynamicCrateLoot") then +{ + blck_dynamicCrateLoot = format["_crateLoot = blck_BoxLoot_%1;",blck_MissionDifficulty]; +}; +if (isNil "blck_dynamicCrateLootCounts") then { + blck_dynamicCrateLootCounts = format["_lootCounts = blck_lootCounts%1;",blck_MissionDifficulty]; +}; +if (isNil "blck_dynamicmarkerMissionName") then +{ + blck_dynamicmarkerMissionName = "TODO: Update appropriately"; +}; +if (isNil "blck_spawnCratesTiming") then +{ + blck_spawnCratesTiming = missionNamespace getVariable["blck_lootTiming","atMissionStartGround"]; +}; +if (isNil "blck_loadCratesTiming") then +{ + blck_loadCratesTiming = missionNamespace getVariable["blck_loadTiming","atMissionStart"]; +}; +if (isNil "blck_missionEndCondition") then +{ + blck_missionEndCondition = missionNamespace getVariable["blck_endState","allUnitsKilled"]; +}; + + +/* + Look for an object defined in CfgBlck3DEN \ configs \ that marks the center of the mission + and set the coords of the center if such an object is found +*/ +all3DENEntities params ["_objects","_groups","_triggers","_systems","_waypoints","_markers","_layers","_comments"]; +private _centerMarkers = _objects select {(typeOf _x) isEqualTo objectAtMissionCenter}; +diag_log format["_centerMarkers = %1",_centerMarkers]; +if !(_centerMarkers isEqualTo []) then +{ + CENTER = getPosATL (_centerMarkers select 0); + diag_log format["CENTER defined by object %1 typeOf %2",_centerMarker,typeOf (_centerMarkers select 0)]; +} else { + diag_log format[" No object marking the center of the mission was found: using a flashing road cone or flag is recommended",getText(configFile >> "CfgVehicles" >> objectAtMissionCenter >> "displayName")]; + diag_log format["Place such an object or a marker to ensure the mission is accurately stored and spawned"]; +}; + + +private["_m1","_markerPos","_markerType","_markerShape","_markerColor","_markerText","_markerBrush","_markerSize","_markerAlpha"]; +/* + pull info on the first marker found +*/ +if !(_markers isEqualTo []) then +{ + _m1 = _markers select 0; + _markerType = (_m1 get3DENAttribute "itemClass") select 0; + //_markerShape = (_m1 get3DENAttribute "markerType") select 0; + _markerColor = (_m1 get3DENAttribute "baseColor") select 0; + _markerText = (_m1 get3DENAttribute "text") select 0; + if !(_markerText isEqualTo "") then {blck_dynamicmarkerMissionName = _markerText}; + _markerBrush = (_m1 get3DENAttribute "brush") select 0; + _markerPos = (_m1 get3DENAttribute "position") select 0; + _markerSize = (_m1 get3DENAttribute "size2") select 0; + _markerText = (_m1 get3DENAttribute "text") select 0; + + /* + use the coordinates of that marker as mission center of no object demarkating the center is found + */ + if ((isNil "CENTER") || (CENTER isEqualTo [0,0,0])) then { + CENTER = _markerPos; + diag_log format["Position of marker %1 used for position of CENTER = %2",_m1,CENTER]; + }; + if (count _markers > 1) then + { + diag_log format[" More than one marker was found; only the first marker was processed"]; + }; +} else { + _markerType = "ELLIPSE"; + //_markerShape = "ELLIPSE"; + _markerSize = "[250,250]"; + _markerColor = "COLORRED"; + _markerBrush = "SOLID"; + if !(_objects isEqualTo []) then + { + Mission_CENTER = getPosATL (_objects select 0); + } else { + Mission_CENTER = getPos (_objects select 0); + }; + diag_log format[" No marker was found, using default values and position for mission center position"]; +}; + +if (Mission_CENTER isEqualTo [0,0,0]) then +{ + Mission_CENTER = getPosATL (_staticObjects select 0); +}; +diag_log format["Mission_CENTER = %1",Mission_CENTER]; + + +private _garisonedBuildings = []; +private _garisonedStatics = []; +private _garisonedUnits = []; + +private _landscape = _objects select{ + !((_x get3DENAttribute "objectIsSimple") select 0) && + ((typeOf _x) isKindOf "Static" || ( (typeOf _x) isKindOf "ThingX")) && + !((typeOf _x) isKindOf "ReammoBox_F") && + !(_x getVariable["isLootContainer",false]) && + !((typeOf _x) isKindOf "Helper_Base_F") +}; + +private _simpleObjects = _objects select {(_x get3DENAttribute "objectIsSimple") select 0}; +diag_log format["_simpleObjects = %1",_simpleObjects]; +private _missionSimpleObjects = []; +{ + private _object = format[' ["%1",%2,%3]', + (_x get3DENAttribute "ItemClass") select 0, + ((_x get3DENAttribute "position") select 0) vectorDiff CENTER, + ((_x get3DENAttribute "rotation") select 0) select 2 + ]; + diag_log format["_object = %1",_object]; + _missionSimpleObjects pushBack _object; +} forEach _simpleObjects; + +private _missionLootVehicles = []; +private _lootVehicles = _objects select { + ((typeOf _x) isKindOf "AllVehicles") && + !((typeOf _x) isKindOf "Man") && + (_x getVariable["lootvehicle",false]) +}; +diag_log format["_lootVehicles = %1",_lootVehicles]; +{ + _missionLootVehicles pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _x,(getPosATL _x) vectorDiff CENTER, '_crateLoot','_lootCounts',getDir _x]; +} forEach _lootVehicles; + +_missionPatrolVehicles = []; +private _patrolVehicles = _objects select { + (((typeOf _x) isKindOf "Car") || ((typeOf _x) isKindOf "Tank") || ((typeOf _x) isKindOf "Ship")) && + !((typeOf _x) isKindOf "SDV_01_base_F") && + !(_x getVariable["lootvehicle",false]) +}; +diag_log format["_patrolVehicles = %1",_patrolVehicles]; +{ + _missionPatrolVehicles pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _x,(getPosATL _x) vectorDiff CENTER,getDir _x,maxVehiclePatrolRadius,maxVehiclePatrolRadius]; +}forEach _patrolVehicles; + +private _subPatrols = []; +private _subs = _objects select { + ((typeOf _x) isKindOf "SDV_01_base_F") && + !(_x in _lootVehicles) +}; +diag_log format["_subs = %1",_subs]; +{ + _subPatrols pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _x,(getPosATL _x) vectorDiff CENTER,getDir _x,maxVehiclePatrolRadius,maxVehiclePatrolRadius]; +} forEach _subs; + +private _airPatrols = []; +private _airVehicles = _objects select { + ((typeOf _x) isKindOf "Air") +}; +diag_log format["_airVehicles = %1",_airvehicles]; +{ + _airPatrols pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _x,(getPosATL _x) vectorDiff CENTER,getDir _x,aircraftPatrolRadius,aircraftPatrolRadius]; +} forEach _airVehicles; + + +private _staticWeapons = []; +private _statics = _objects select { + ((typeOf _x) isKindOf "StaticWeapon") && + !(_x in _garisonedStatics) +}; +diag_log format["_statics = %1",_statics]; +{ + _staticWeapons pushBack format[' ["%1",%2,%3]',typeOf _x,(getPosATL _x) vectorDiff CENTER,getDir _x]; +} forEach _statics; + +private _infantry = _units select { + !(surfaceIsWater (getPos _x)) && + !(_x in _garisonedUnits) +}; +diag_log format["_garisonedUnits = %1",_garisonedUnits]; +diag_log format["_infantry = %1",_infantry]; +private _units = []; +{ + { + if (vehicle _x isEqualTo _x) then {_units pushBack _x}; + } forEach (units _x); +} forEach _groups; +_infantryGroups = []; +{ + _infantryGroups pushBack format[' [%1,%2,%3,"%4",%5,%6]',(getPosATL _x) vectorDiff CENTER,blck_minAI,blck_maxAI,blck_MissionDifficulty,minPatrolRadius,maxPatrolRadius]; +} forEach _units; + +private _scuba = _units select { + (surfaceIsWater (getPos _x)) && + !([_x] call blck3DEN_fnc_isInside) + // checck _x get3EDENAtribute "name" != "garrison"; +}; +diag_log format["_scuba = %1",_scuba]; +private _scubaGroups = []; +{ + _scubaGroups pushBack format[' [%1,%2,%3,"%4",%5,%6]',(getPosATL _x) vectorDiff CENTER,blck_minAI,blck_maxAI,blck_MissionDifficulty,minPatrolRadius,maxPatrolRadius]; +} forEach _scuba; + +private _lootContainers = []; +private _ammoBoxes = _objects select { // "ReammoBox_F" + (((typeOf _x) isKindOf "ReammoBox") || ((typeOf _x) isKindOf "ReammoBox_F")) +}; +diag_log format["_ammoBoxes = %1",_ammoboxes]; +{ + _lootContainers pushBack format[' ["%1",%2,%3,%4,%5]',typeOf _x,(getPosATL _x) vectorDiff CENTER, '_crateLoot','_lootCounts',getDir _x]; +}forEach _ammoBoxes; +private _missionCoords = []; +if (toLower(missionNamespace getVariable["blck_missionLocations","random"]) isEqualTo "fixed") then +{ + _missionCoords pushBack Mission_CENTER; +}; + + +private _lines = []; +private _lineBreak = toString [10]; + +_lines pushBack "/*"; +_lines pushBack " Dynamic Mission Generated"; +_lines pushBack " Using 3DEN Plugin for blckeagls"; +_lines pushBack format[" %1",['dynamic'] call blck3DEN_fnc_versionInfo]; +_lines pushBack " By Ghostrider-GRG-"; +_lines pushBack "*/"; +_lines pushBack ""; +/* +#include "\GMS\Compiles\Init\GMS_defines.hpp" +#include "\GMS\Missions\GMS_privateVars.sqf"; +*/ +_lines pushBack '#include "\GMS\Compiles\Init\GMS_defines.hpp"'; +_lines pushBack '#include "\GMS\Missions\GMS_privateVars.sqf" '; +_lines pushBack ""; +_lines pushBack format["_defaultMissionLocations = %1;",_missionCoords]; +_lines pushBack format["_markerType = %1",format['["%1",%2,"%3"];',_markerType,_markerSize,_markerBrush]]; +_lines pushBack format['_markerColor = "%1";',_markerColor]; +_lines pushBack format['_startMsg = "%1";',blck_dynamicStartMessage]; +_lines pushBack format['_endMsg = "%1";',blck_dynamicEndMessage]; +_lines pushBack format['_markerMissionName = "%1";',blck_dynamicmarkerMissionName]; +_lines pushBack format['_crateLoot = blck_BoxLoot_%1;',blck_MissionDifficulty]; +_lines pushBack format['_lootCounts = blck_lootCounts%1;',blck_MissionDifficulty]; +_lines pushBack ""; +_lines pushBack "_garrisonedBuildings_BuildingPosnSystem = ["; +_lines pushBack (_garisonedPos joinString (format[",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_garrisonedBuilding_ATLsystem = ["; +_lines pushBack (_garrisonATL joinString (format[",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_missionLandscape = ["; +_lines pushback (_missionLandscape joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_simpleObjects = ["; +_lines pushback (_missionSimpleObjects joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_missionLootVehicles = ["; +_lines pushBack (_missionLootVehicles joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_missionPatrolVehicles = ["; +_lines pushback (_missionPatrolVehicles joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_submarinePatrolParameters = ["; +_lines pushback (_subPatrols joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_airPatrols = ["; +_lines pushback (_airPatrols joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_missionEmplacedWeapons = ["; +_lines pushback (_staticWeapons joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_missionGroups = ["; +_lines pushback (_infantryGroups joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_scubaGroupParameters = ["; +_lines pushback (_scubaGroups joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "_missionLootBoxes = ["; +_lines pushback (_lootContainers joinString (format [",%1", _lineBreak])); +_lines pushBack "];"; +_lines pushBack ""; +_lines pushBack "/*"; +_lines pushBack " Use the parameters below to customize your mission - see the template or blck_configs.sqf for details about each them"; +_lines pushBack "*/"; +_lines pushBack format["_chanceHeliPatrol = GMS_chanceHeliPatrol%1;",blck_MissionDifficulty]; +_lines pushBack format["_noChoppers = GMS_noPatrolHelis%1;",blck_MissionDifficulty]; +_lines pushBack format["_missionHelis = GMS_patrolHelis%1;",blck_MissionDifficulty]; +_lines pushBack format["_chancePara = GMS_chancePara%1;",blck_MissionDifficulty]; +_lines pushBack format["_noPara = GMS_noPara%1;",blck_MissionDifficulty]; +_lines pushBack format["_paraTriggerDistance = 400;"]; +_lines pushBack format["_paraSkill = '%1';",blck_MissionDifficulty]; +_lines pushBack format["_chanceLoot = 0.0;"]; +_lines pushBack format["_paraLoot = GMS_BoxLoot_%1;",blck_MissionDifficulty]; +_lines pushBack format["_paraLootCounts = GMS_lootCounts%1;",blck_MissionDifficulty]; +_lines pushBack format['_missionLandscapeMode = "precise";']; +_linse pushBack "_useMines = GMS_useMines;"; +_lines pushBack "_uniforms = GMS_SkinList;"; +_lines pushBack "_headgear = GMS_headgear;"; +_lines pushBack "_vests = GMS_vests;"; +_lines pushBack "_backpacks = GMS_backpacks;"; +_lines pushBack "_sideArms = GMS_Pistols;"; +_lines pushBack format['_spawnCratesTiming = "%1";',blck_spawnCratesTiming]; +_lines pushBack format['_loadCratesTiming = "%1";',blck_loadCratesTiming]; +_lines pushBack format['_endCondition = "%1";',blck_missionEndCondition]; +_lines pushBack format["_minNoAI = GMS_MinAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_maxNoAI = GMS_MaxAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noAIGroups = GMS_AIGrps_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noVehiclePatrols = GMS_SpawnVeh_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noEmplacedWeapons = GMS_SpawnEmplaced_%1;",blck_MissionDifficulty]; +_lines pushBack format["_minNoAI = GMS_MinAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_maxNoAI = GMS_MaxAI_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noAIGroups = GMS_AIGrps_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noVehiclePatrols = GMS_SpawnVeh_%1;",blck_MissionDifficulty]; +_lines pushBack format["_noEmplacedWeapons = GMS_SpawnEmplaced_%1;",blck_MissionDifficulty]; +_lines pushBack "_submarinePatrols = 0; // Default number of submarine patrols at pirate missions"; +_lines pushBack "_scubaPatrols = 0; // Default number of scuba diver patrols at pirate missions"; +_lines pushBack ""; + +_lines pushBack '#include"\GMS\Compiles\Missions\GMS_fnc_missionSpawner.sqf";'; + +diag_log ["dynamic"] call blck3EDEN_fnc_versionInfo; +uiNameSpace setVariable ["Display3DENCopy_data", ["dynamicMission.sqf", _lines joinString _lineBreak]]; +(findDisplay 313) createdisplay "Display3DENCopy"; + +private _m = format["exportDynamic.sqf: reached line 367"]; +systemChat _m; +diag_log _m; +_m = "Exported Mission copied to clipboard"; +systemChat _m; +diag_log _m; \ No newline at end of file diff --git a/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_help.sqf b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_help.sqf index 0483f54..fb9da45 100644 --- a/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_help.sqf +++ b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_help.sqf @@ -4,4 +4,4 @@ Copyright 2020 */ -diag_log format["Help called at %1",diag_tickTime]; \ No newline at end of file +diag_log format["Help called at %1",diag_tickTime]; diff --git a/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_initialize.sqf b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_initialize.sqf new file mode 100644 index 0000000..85908bf --- /dev/null +++ b/@blckeagls_EDEN/addons/3EDEN_plugin/Core/fn_initialize.sqf @@ -0,0 +1,6 @@ + + + + + +diag_log format["fn_initialize loaded at %1",diag_tickTime]; \ No newline at end of file diff --git a/@blckeagls_EDEN/addons/3EDEN_plugin/defines.h b/@blckeagls_EDEN/addons/3EDEN_plugin/defines.h index 3d72fbc..fc16e4c 100644 --- a/@blckeagls_EDEN/addons/3EDEN_plugin/defines.h +++ b/@blckeagls_EDEN/addons/3EDEN_plugin/defines.h @@ -16,7 +16,7 @@ */ class CfgPatches { - class blckeagls_3den + class GMS_3den { requiredVersion = 0.1; requiredAddons[] = {3DEN}; @@ -37,8 +37,8 @@ class CfgFunctions class Export { file = "3EDEN_plugin\Export"; - class exportDynamic {}; - class exportStatic {}; + //class exportDynamic {}; + //class exportStatic {}; }; class Core @@ -53,8 +53,12 @@ class CfgFunctions class display {}; class displayGarrisonMarkers {}; class displayLootMarkers {}; + class exportDynamic {}; class getGarrisonInfo {}; class getLootVehicleInfo {}; + class initialize { + postInit = 1; + }; class isInside {}; class loadCratesTiming {}; class onDrag {}; @@ -151,7 +155,7 @@ class display3DEN class Blackeagls { - text = "Blackeagls"; + text = "GMS"; items[] = { "blckAbout3EDENPlugin", "blckSeparator", @@ -171,7 +175,7 @@ class display3DEN //"blck_getLootVehicleInfo", //"blck_getMissionLootVehicleInfo", "blckSeparator", - "blckSaveStaticMission", + //"blckSaveStaticMission", "blckSaveDynamicMission", "blckSeparator", "blck3EDENPluginHelp" @@ -180,7 +184,7 @@ class display3DEN class blckAbout3EDENPlugin { - text = "3EDEN Plugin Version 1.0 for BlckEagls by Ghostrider-GRG-"; + text = "3EDEN Plugin Version 1.0 for GMS by Ghostrider-GRG-"; action = "call blck3EDEN_fnc_about"; }; @@ -469,7 +473,7 @@ class display3DEN class blckSaveDynamicMission { text = "Save Dynamic Mission"; - action = "call blck3DEN_fnc_exportDynamic"; + action = "systemChat 'saving dynamic mission';call blck3DEN_fnc_exportDynamic"; picture = "\a3\3DEN\Data\Displays\Display3DEN\ToolBar\save_ca.paa"; };