From 3a852e52e3c70eaa3cfbaf85367338e007818edc Mon Sep 17 00:00:00 2001 From: Taka Date: Sat, 30 May 2020 10:09:33 +0000 Subject: [PATCH] Tightened up how we locate the map in a VASL save file. --- vassal-shim/release/vassal-shim.jar | Bin 29286 -> 29483 bytes vassal-shim/src/vassal_shim/VassalShim.java | 28 ++++++++++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/vassal-shim/release/vassal-shim.jar b/vassal-shim/release/vassal-shim.jar index f8a099dc9255b9ff9231dd4c5314ac07d522a9c5..57c189461fa3b3258fce4a849520ccb28365618c 100644 GIT binary patch delta 14689 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 delta 14506 zcmY*=V{oNg&~9woHg;^=n%K7O>|kQgjy2h_ZQGexlT2()H1Q<&oO7%0_uaSNs^?i< zYjv+5y{fvp`l&vKJU)a(Rab(B!GS`g@#g#H&4$Dxk|dz*0}A>sZdpe_qi z&@X3T{#G&^N=J$11!Cu1Y|34O?!*RUpL$D zlO)c04=|WWG^>?NE1dOwn^QW`4iYuSvwOG7*VR-*Rne=smk~4tD*slpYb+J4FMYHo zGQAEhezwd1UUaMJ9g+jB_}oZjx);j$u9siG+%XQh^vsmMCXf}qcCmFK4pHsBE&e3i z^-S{a)hBxr0<}?c8w!2AFY4x(0+>Y$fkQ97Xa8P)8#89;)yGR(^(>fQ?|Xw9R6I84 zH6R(10X=rF!u{j~%y(UV5#T;GO8kBjdL-S~`5x5e1YSe->eD{K$MO$3+Qq+(Kf7~; z|3vMVKFKV*pMG{d^AJ$!kUY^nf3NcD$oW(~(JkM5aP$gc{nak;>=Q!z$LM-@?Vi|< zkIx|}8rmR+j&C8#W%XGV-f6d8{iOE6EBA-1+DYv@TH;PN5H0uRm*9>}$BtBHp#62Q z*M>^w8_!4R5Au>d!&47Y<425&=u@mxrQ9Ezh=0%|U(AQfG*6P}r;E?tIr?-D-n>5e zTgAZl^xhvht)ls8d^dlIfU*buz5|Kx`uSqzwgttM`Yg z!I4ltu>PJL;WAlJtnmK3-Dt$ab}8~ajOV~b_=V&tP;%ePd?}LD9hWGsb3Qgp_moNn z8x1~)V(~USoB>6}ihtKq)ByXhI+V<(7f0xv=K%dXi!sWwOc@|go{U2tUmxvR(Mt2v z#rTjyd&DfD(-a$UPFNHV&LJp^r6#$lB>;pv%j`YNCKRgr<`7JpmP}7S2rA+idvnO* zTY9?#OX$V~2=F_*2$F@c{Jkd2mBQ$dNR{zr&@@=+Qep~!>cqu*WtYSkd%3p&lH6mk z+-m@I7Zz~!^8V83S&rU;S#vCY z2z)Mcju$3{APi}dex5{TiquybX>3+B-tW`}j_w_LnSj-J)SUHGGvvt(7986z@kGGD z3_4x`z1l^2ciy<7b!ETrQkkAS?k0kUlteu4eSkI$EPOkQ>WGziQ~P}?6{DKiozs1+ z=ngHTW3xm%y>*9MLt~@5cxHs{^sbILh`(sH-5oihrp57&-i?WZ?Mp|3Dk)$LK8Jm} zuAMwOpEyI3eI55)fXkW;^V#xdR|ilE-}ihUFru}U7^QgW(eP)aIq(K>y)qh%)~0b; zR`BM13vr(K&yx;3y-NWUb=fV+bOQuqjL?@9^Sk_{@sqJ^lFuyIc&?U44-S!%Rz|S9 z{JvnT+3(xKcPm`_HjwTUcD)xIi&e*;c-{8Unaq#I(@?RU?OPka4^o<7)&m{(d7}M{ zdjBwT)km~IPST}oFw)5spjtWg!}E>{is!C z@O4A9pKsUx&SI^qkY0;i2RMJV6a;B%B^cq}*}Hc3i!+1+T7XM0S^ZV_6>7UGqfC2y zUUH5}tj%g!TG-q1*gt1Q$c03NHo(ejF~<)SX1V$*=;}FwkFtB6_?l66oFh2GaEQz~ zq1Y%`yRw6Q^UUY;Fed8&h3XJ$l>bbfGHsXYlxthUl)_RXH1Uhe@>N7!`KnKiNcDE_SN&JoY~Ol5UfHo|aEq4EY^gLnQrLRdu^-tUczND55QZIKB6_ycHtPv? zh-FmXvj-p24m6$Y0u%`<0JC7Td_EFY1RMYBJ@%4vqes7SpdJb}C5p-XN%7m-2>t00 z&n^B^AlLE4-_PmrPklr*k=qmo?ZDg!usm*#Gz@>fU&BxQiuwm$zjIza3-xpZlrK~~ zAMVRw$eH(Ll zxCl^Ia*a{SfO-Uet1@x;Fu`G>`YDpl2@ST+-|%0VWleIPwXnb2?|Z^Q6ZfP#xbkD6 z__Mx^n#o^3_c`U#eMCLfI6kb_>R+NpE>Mrz5`Gkxi|&meeR&z}8{m|uuP2JuUN3i7 znWPC3cA-HWV7WuHlRSQa($q1nhbiI9BV-i?iomf~0tqdb{isx=A12})X? zdlf&}zs2~C)1ZHrI&M_=qH^WFnphWf?UD6DS_}|)KC>B*hB0Kk{2lb(4mfJktmOu3 zchu2JQ!WH?y%K`59+cKRt2(Ibz;VhbNx!+4&o+P12OfO&ATuD=d@dR$tDq9(@)#ws zjf#^b1jZO0NnQk-7o|EF?<2yxDe7SZ$Jd4SAbRD#!u5*AIx6-z_M z#lP#Ev_qN5sWi}Pos>2ZG;+?$p#BV_f^uj;6J0lRzLbb)T{?p7i2=s^^R$tr-j#wX zV}Zo`%(vt!LC!I*BkeiQ^^|?sJC6JCQtu3CKmsSeZt}(oY469?Zr$i`m22$jDy3hx zE{h{-QTz;D>f{!=R5Wf1k1doEBm-GMIN8tZ0MiM>XkKgRSqpZpL^MC@(fBH62VNMe zf7W@5=LsLy`a~o*sa7i$f=Q~ z&{Ci|9NDePmQl~rA_!1UW9i{$B0Iw0_*<1TW@MYDNDiH>Hxl&InU7g27{;AStrpWP zEATf6OKVZGW0hnP7UYZ9ejTE=bS(7w0okvZhF&i1AM7Vh23xT2XE5*GTK>dz$2t?F z_boazbx&4mASyGzhoHc|TZ5zUjF`TSGz`)WGZ>trL3XonVGTm?85v#2`b|lCC-${6 zRBS|EBc+*sAOF26@0bgUBj~6R2vJiitZO8IozS)2S6%i7Bh1gZjT}7D&vG4N00nSh z8|R%7&)-3DD0S|K^aR3*LMR2p@RqCA6XrqeP>h-{1QG~_s#VL0TeMB6$`k8GY8{xy zJ(S5Q!>9t1T?+?<9wj8DlM9Gi7vZd72(SIpBVk)-8<`loht_V|eoVI>C=MRQ^?lpK zS&b4POH}_7l1z&_s&FW$38QaAz+29_low8P+z?*0Dqr}Xi!B;@c`sFBMvANHvkcoT zM21L`D3&z&Mhk(l6zoIk!zHRIfmi|ug{N~f1~`?BE;({JB5p)YVJR}&WZpv#EbKjW zRR5a1gvreGjT}tWvgW8fDh=cEDf=j4)kj-1M_vUgV)j_RL$616QB62k;7zqcinD`8 zgei0K+96^^T$3`03q?RPgZNVA5zpW|P88vAAyIww$mAjfZ6JqD6>G(m#Cm>w=L{Up zfxE3sPQY>5t&B{EFZ`LV&$)2Ip;N}7s9DF(h85=6917ej)^B-(ncXR44N<^l63nj< zT#6+Rl>&LjP75Z(y zz^ob2EGz_BP0)HU)+zkS^_E+~U4ze!vwi6;IXzuv2k}|e&Lqv{0>7%^1xW#@(=w+u z=j&+I>c6z&+QxOHO$0K%zDn{%nO0PC#3c!NF7ZFzaq-oPc`j968;y2zwzy5S-d-E2 zDbZA1=4Wmzky_<{yF7i@E-#MeIJ7_gb%^BOL#eBnOsTt|N!q%iR8Oa?=@~&uJPA*h zCc2y=3MDC309a!u04``^PV*IR6*1*>B_uo)^WI4a$A`VCS4Izh%!pDZ@nMcbN1;sV zcSwV~ZBVg7{mLGdQ9MuJ*36S64M$lD=bg_x&V5c)N$UOLw4APg2~1w5*~)WY$|)1; z>&g4QAX7Ic^eyZD{=qsW7Sdw~I(?*Sg8f4wF_E2Epq}`Y0K{_*jcL%S8xGn|xtR2I zPO+YN5*&p=!QyFFl~Ma+(yuF0nmQ@V{*c!@pu7i))TrE+{T8f}?le>ZX*<=-P9t9w zzJZ-vyd@9r=3`%y>fE{}fK~rgwk(v_uxhB^;G4+Mf>zGw8RsBSkg|a@eE;Jvwu+sx zCA~jD@+@@_0BqZGn(&mT+!Exnh@Id4gR_O0`;lhC#-+ug8RFHR)5TLBrx1}U50WXEHp%z)q9#?{{yq{Cy`d>}e=XXswuMum~! zcfaKr%#>vkhA7{wMr(2H#(#)bXMkBI>^V9j98lJ{dSKvMT>s-YYJJxFRqbRkoVTlL z0Y1tKys#a@4CHP5_5J>=0=9}U9qmolGHJ3xCGa+D897axXF6EUN!PNgn0bCWAL|F-Vfr1D)JKx=&y_nOoK7nrdd_MNZ2QI5oGqJ)t2;p{ z6SclT(MZeU0C(@l_w(##9j#e|rlNoktN_bhrG_dyi*Q{T>_Dz+A!L>=I+dJd%P+oP z3W3Exa!5xG)i)B<-AG3nnY=-K1b4EX&|EEkc;>Q7c146ZI9&%*%fHwI_OElGSUfgl zrjRngKmd1e#HOO&1t?ni)S6+%3}^e9p~*=CMSNiij;bP?FV(zT|5_S3<3?@eG$vSO zyX1jdq%O(@DSy0kVXSj}^Z~_Gs^W$<1o$b>{a|<8eYI+|h7E2gh8RXu&Ql#uk*Giz zq707ek*Qlatc~hX*>;)GLHf}=Z95Av)asnK_+6BvzoKn@KM#6heyWigG&=ss5*MCX%!op8r*{muykpa_vHr>qlg=xCqs;4O~Xl zq-Sp^2T$g(ub7E(Dq~)!7^3)>_e`hwYWj65ZAVZ`>a;E$^QG?Mr0g*N9+p`>K&M`Q z@Gf94GwfRt_1Ndcau{U)(f0EI{UG0bvB_{d`P9s1Ynh}Hg;!l0`K2_rpXd&9!P;$* z<1<+OdXRLLLZXXSuO#fC`{-+$6fkfom5`Xq1b1W3HFl)g9_}C@DZk&rTWS44Ym!=l zlw6Vqbybpbps%T^1@yg+_aREJRd_T0tvY18P{CoW=dSuJhhpSJF?7q z&MUg>MNI4NjHYuPiAdViOz3|2F^sS1irT3rs_LjwdvfC#4%d#o@-=8N1*o>LwB&&k z=V%Jyro$D$hV-L55OB`zX`KKk$qHG8n{6}AG)Lqi7Kv#Ykgmz9CK+k7!d-?HcCXl! zlvbB0dDrrG4f__C9`Nq+qy8Qiso7uqe+Cm1zRztO@~H1B@(| zgypqfu%F^Yp3MYc%t3Tp^oxX{>|b5^`)&R=I4$CkJwS#J9om3J#h2)x2M45Au{g2 zHj$tTE3(!nmZP&Oe+_Tih{mI-%klB9HT_mK>s{RywJddhYoq|Ex2o4hY&!6UKl#g; z+qeyn%7zvRNkzFRcIp=^v&JuCe@r4T(ePzfEk|C$-m#A-mn;s-vAd(e-q)gN z)N6-CCfe*p;bS!YoWL{NR0qntwZH}XfCGk3%WNE|{Dr1~R=&g9`p1BCMpd6uhPRwx znr=d`m-!TOOlVOZ4_%`KCq^x4pRto4YD2E;HR=eM65@XlNwh1qCOL|sqJz`5bI4RF z;(`W?(sD&4Kv{>uRG*8~h6>WcInwtZmG3AAkOQ#`B`5qo8=>{B;8Aydxc(}pMvkDM3ZOn);pQb`-WH_ zW2mAt$xoBa>Fzm2s@S4=*ra8oZz5{Hz_QHXb?FI#21p8ycxRupP!|f6PjO1UEbJZ9Qx-jQGo7^d*Q=8^+%-7Rg+;PV^~U=ceZJ2 z(1>6q0P}0tgU#=qln;|kqddZ%(`%97|FUA%E1;es*PvNAWbx+~-yYLjc*P}NDh4~1 zqj3&9Wb4VO3lM~-zbn8oVHcIZVLdh(`pzURu6ZODxTR-qflw+8eO2|Xcq3`rXd$?0XTEG7pobs#Ba zdf-KPMj8g*x#n~kh5pH;!gsa@VOPbEj3V9dl`mRtQr0&G3;ST#!=^9hG3TkOi2OM% zz#D~a)Z-DRKeeUejlU^jg5#B{^5ft<82<)AD!)&b&(cVzf6>9X&(eY;Wvx&iZt#;(X0%J)F7`Uujkqcs8J9uHamz{sQ%9`_H}Z(`~C0to~hw zw)u1rvYH4k)lgsJwuxa3a;8X0+)uAn`5I*gv#qSB(RSq#rbi-M6IB<}8b#!J3E+2A zN-l(Q1Cc#KV!Qw%Wfg^^%Yb{e;6}+ZwteTO$Mo>gDGXYErM}ihVmpd@89=Bk>(;!} zYa3BQwWnrL{_B#%QBAD_SvK6}KQ$HP>T19{tBHl0kFSGaxb&gR!z&RHbz^e#EKvuw zyKFRPM@=q@0ev-$hd$@TdS<;>1JDZZgWXDW1b$e=A~CWcrHMuE@S_K{By_<866;AD z+?HuTd1jJUW)Ri!>Gw-`3Xp8|Pq zm$=9eIodg8(R(G1ohf{Iy-JvbaLLh08&FZaf=aW1 z&hYfbyK-CV`bX79q(ZZ-?`F}I-Zw;7LU?1sW~47j@I%8b%QH)yo|-5bTHo0%ssB`F z9ho}Q9L8(D6&GyQRj`j2nB;9RT9%7yIOM`=c-(9az@cnT)y?E zsUYRrp&E8wJv^eW|MC|dC%TL+rPUc63(o2_S3 z#k5RdwCf?(WyjgsFU%KMRQ|Mm)p(FBo0A{Wp#GvaQ?mEasX!{CU+A6uPfgtxEqq}! zcImC7m}~1IkIQgC&7~f;+>U{Z1CjMk-NZy6{wCY>*eK9^%FYtzR{w28OH+(B&}y9Q z52T{R_wQ)sErfN_>nT8^b@ooRoK{LnLd9lt<>A`j;e_5;vN1Ti6nd zK3qFOhmlEEQP+{=Mh#h-_1c+KY|R0(%9FXHWyU5gg*_5z-(=~UKt|cb8C7*NI&(a= zY5Kn?v~Q0VvA-v0t(Z&*N$jkx5xeb@lH`QqKpacC*0sC2`~pDr1PJX~8Yegik^VR_ zt*w-}-?*KOM(#V~_?mAtumVW|Y?CG`m+Xv~3pC*iqKL9|En{oTmrpr^G#h_C*oa8K zr7uLgUxpr^H2fg!0!DRF)(oj*Iw>%4TXcsSnHlZpG3K1*vIpG5GqfWcDzpgtQv@47 zdg_y2IlEtu&=mtIL#{O>7Bu!KIZq1)oTjq&@wCn+TtbpFx9WB_z@Baxy)Tjw-P&x8gL?G9(m$#+%yiw( zSrgdZg$^kj9rC;#o9H1OwZ>k(?c4W4U215t}-F!nVDSNCGJxOE?Y42Bqq)FXr ztiBhA=Hd3?8&!r_^Y8vFRC(l50e9P~S(4C7E04f(gWWRBuJLpxDivL4zy{j*(gouA zpAd14uP^GT*%R4vDQYKS#P!VL;qZ%QxDU{5Np_*`^9Y~;cxyMoB-bHA$3nPwHzID! z3qn8CL2Znv3koP-N#vGc13&cD!L^1|#Pt!*U8fA#6HdOo@wnX}9Y{kx9-{%(uv#Y` zqX}Tno^A~+z#@0g;*r6E9nZRZ|@^F-bP8kd4W_D@T(6@Nm-UDv_T>2Amk^2~(`b=f8N zsU?QuBP0xkF%}w=1lVS5meWuH>6^}V6AfS-w z1qeJ2N8`^P<}xPV^K1>+Mt@wb(=~qdsbE|&`gzdcCe(WAY5!(sj)Rwe4iNE_#lds^ z{qty1;~U-XJui_*gi@EfX@*m@fC4{2=DosS-iB3VLkPlI62+Dl1JH||v1TCR>;_cC zQ8ivf0;$-QUqu{g=xKb*fbp;CxuPCgxm^bM5_z4Ce{n5BtY~#}P6^Dl3s!qhS zJ8T$#ZbUX`>xO!4%-wb8&QL4V6PYB7_Et7Lv>v3<0FGyWD_g zS2vae&wnD^_eB%~Awn?jcpme{3dYUF#PhNA;pJDSOw8DtGS%HoZGa6he8k+R$>BoN zj||!1EUlmSNHNIH7_rFQ?hrD9yil-USn|~jtah%oPA7|R({%LS0|Bv3yhpl^@EGBa$^rIKEq;5%*_b9ru z$DJDd^(Ce{{TF5(%=zl|xOE9R24_pVm_?YW zkqn;(BTN4xM4NWLQm+0*aBOK~Kzx?h4MW9ump--#Cz7#Jf&)5U1yCfnNsYXy z*awgi%_`j)odGuBGU;GWoCw0!@E06!VOomqnJc2+~6G!39(~tM}BGXPiG*D z--E7*?gt0I3;i4f4%s|I0m6Xb_2Ah32iJ9IQ%a`Ku(buzzR02n#CQC_K1-55TflQz zVx+4^L)Us^LbLtM7;s9z3oEPA3YRS`p+mdnV>ps1P-YU-#B^od@%$BLAelXvd;m2F z9yx7>z)X|#UN8{4G-`=lGL)jyJkZV3>KYCcmyN3z{hU*PZ`tFF;mb{Kw zX7>I@Tayh)UGO&t*oVwH(i@>9r(VJP9JG!MDbz>T_&?Lje}S8|AsR)tXI3b6mJQed zAA9{SqQne}TIjm*4mYb^B&IuInK!bVZC7dQP^GeRrs#8)Z7 z>93G8hyqR+aX?=@Ws8VCek)@hVyN;aFownO!dYVIPT_EORN~isC!DP@St(*-XrP(g z5Izh3hA^Cd-Z+@K6a_b!QiGlA3XpJbvy!^%$~lwF8~h4pSR@nQ6dX)7Ud z;b1lMSJ4kqGhox@Aj15@6l8ARC;wJ&;>O+6;IEMZ2H<4?$@K=DY4!LQ*0K&nF7bp8 z{FnHy1+;%gMi$j2uIZI}$XBPnd1YFPyW@~Ca5N=cn8i&~HYG3!>*Z*~U^S1YYf#Xo zehaC8Y}~SE=7*~Gqx^BETP~90Pn?aC<%Q2# zH^O~%vZf!>b|Q0H6CK<6 zzCo{pu=17T+eqLxJIyLAUvb6NkDv}x!TV@N$2WN#vQoFx#;av1l$~xN)iMnRw}JP< zW;&o-0|bhdgjN~^inZ+k170`>OHCUHZp$6Qi0Caoa>(@diScbldQdO=n+S?HIazWw z_Yp4V6WGC4G)Xc41*XdL7{p_hPsZFBkHxAq-SqowD!?#<6dr?zyThyXO4-r7N%bBfSV05AMz1<%k5c6r!(u7oBT*%rUr&f%fIG1U$jO@1|D^Yv%#YM#W;*bVjKPjMq z9>UT9Uu~E|ZeTp`iCwf9UF1LQP*=_NgC`rC$=ND}4vNt*Sjb?ke5|HOg)LOTn54zp+w zxv^9b>mp@1Q%e*}M{`3h91HUjQva5XWuqfzn6a(*J>7m#UGfCv67{MiUT5-Pyy=p8{E*-|Da_%TCrNEv9C9?X3{L*bbmt?$h{yz>B@!g0 zHvQ`K+p4EcUBQePyY#PxOG7`9d3e$)Z6k&#IUNOuHd{YiAKG`wvkp=}8>E;Ic*nQ) z(I>b58QPP(ySP3h0Vt3023yW}{Na)j+Dvy=&=3{TFUmida<^t&_~C`>al|k?!OK&8 zfxA|yTDErF+SuZA?1mcGB0uX!t(8F^B?8DsE~RuPm%; zLqQ7RS|B6CmO^gFhv%n2bE8ltwu7YE7tj}@zffByF03fG(O>pNWoKOZ0f&VMUj>;x zh1KjGKY_90Zs&3m1jv|w&G{4@mx2Yc|+ST2Xg5vt?RRZ zl%Kz)k;c24_BHEdrla$L?S`TK5_h&D(9jBBK{;?^lLv0rnDtF(ve>TRX=jZLsmlPk zV^GN`Jy!jfM53KZxN)yvlSWop%|$5M!7(7zR<8oo&1!X#AtarAoJyPD=EJq}xa4y4 zmhhgM0Ag!uCC{H53~30wUEJeVg9P-%N-P9UePm}=2d696eaC{p4Zi@=q6+MLL@8rM zi+TMK%o%DJc;?F*NjSJ7{PI>VCO}dB8EZ3Y+2%c!Y z(+y4t-SX~!kE#s_8!`?EC3Rv(x{AyyH-(vNG#xg)9fcjPDb%0_Msg+ z(QPL2K_wolvy^MP*jTuP^C9U@oi!KIL+y^`Y0kf7@j-svo+7hpZ~S}d^GMkZO`R>Y zv9m5B9Pw+~b3Hf+VRJUw>gm3C9l9q$WWu&tB#1UJW~~vZ`%HMLO=ezyt8(ex2kIUC zZR>g$y>8f(-#aU`ArwR&mxp>ECauk933b-os9Q63jI#6u1&k&~L^)<80!HuJ9(R zwa*@nZ{poxJ54{cZz_szwq?&X8qcV;I3L_Qwcj&s1_$+BnTIr8*_$}OWwAB=jc02M zp3Ph*GD`M~^Pq@~IX;KdcV%aQm{Rp&Zi~?K z#?R)U=0{91xi|W@;L*9Iko}X3h!?zIh8;ypMtt@<ydl4z4Qc%ljxyf2NA8E7qVlruSSV~ zr7S;3#@@+8lh4Bmb-wO67YW301P#9*Acq37LSo#B-ZF_^sNai`rw08AB5+?#7co4? zjopL~-}n8`ue7~KQSon~TOP5EccUaeky#Fb)97v^zGgz=3I6-=ZscE^)+^{k!Yx%~ z4^adlig_M?&p@k}H`aHt?@hhSOjp8lQ`&Iek-rDe_HlqP+Ys-;UQWPRwPb(aY&9}g zjjdj~0^UnNEB>W<)}2XVTs!#`mP+rzjWk3jH<@@+IRvLo>5`ET_lsP%0szhk$Djb{ zOM3cvR%`rb?8B=4Ju2AO{Ba41N@)}BEbD1qCHboKd=~bOZYH8sJ$ut-=sAW#=%@AO zESA9L89NMlJ=Bl-uz%)06Asn}r9+@eW_<@5-|6&bT;b4n5Jf|fYfjpSWJ8FZ_G{fB z`=RUheTP=w0bb|by8$8Sm%C5HweOI?^-=P#Z|o;7Cs#K#ze8HEGFBZ-`L7(sw_r-O?*SKQZeW`G}1n`8qYei z(3h9v&~n40ZCkdN;TEWsw?bzv4WR7huBZa3DtoGDOU&AX>3L56EP5H$j*vtH%{xJ) z7m7Q>bh)^8K{-w2mTpb}ZMLai!y|jAJO`en7``$MD>WWRWw!#YQLJv3##SHWm>K1G z?PlBV5|GMtlXC<&y%3rv3Vm)}8NLsjM>Qud5Q*g7eq#U4oPV7A>nGXNOS2m%5G~{W zBsHFG;N@MWBfKAG^JRLXQfvUI`L3OIv$mW3?(LV^4@rK*x5xE?_n!Zmium!*NO53X zV0+j$tW4qPvSYn|o{i#8_b!9H+5&bn(p`hi8E^i zxv>c=EK|-dREdODozy#GV#U^=qZH@H^J=MMRyFUACGSn*m4=&fNL>y@Vy|m{(WP?L zg76g1zo)2gcxm(Fl4b5bpjY$}H+qpncrIV3#OYoU77OP^vROyG&#S4aDpYS7Ce`3A z&Y#s9m#!$NF(Snk++ewwNS>{8w)9lIs?oZz@^mzQX1TPUwwF;rih@w5y{8ku8GK3Z@~Iw7V% z|J?Wzex$Aj7~g(N1!$Tx){L;$eAPbRhG`!H^!yGFToKvu3PK|KL{S+(VUPJFHhO0! znC%a<_+V8&{*0`A56nu`>52M8PZ%Y8S4~aI=h^c z09rXAjvBAauGAmdPy~FTudc;)cG9;F5i%sRE@zpXi*M3AgZy1ysoCcbn-NQ3U}k{O zR>aib5K%j#j6DuCze`h7r;*fvz$$x^PrwmJfl{#=gh)k=kU^UoG|K`QsZ&OYml7bg zT4eov6TfGO*<5y+z@^%Lm75{yP0x4ot_@1#S&n

60P(|>B;f&2_QCH8hgL5*j@O_RgHrZz?4pxLYE1oVSw!&gmFSrrnKhdgpB7k zNSVjd#>b%^q?DCtBS6(0C1Aj}H1FfbQpG%A7nzg!EO!4@CGkU?%q=H+0zN&Cd;AA& z4D;4ca;M)km@BjNo2-w-TAZJC%>B%3wnN>5zcRX0Hjaa!1jkX)jPC}HMw9S{G z3FX7~;Tcw+nF}$s=LjY@Ds8$5K-qwv29m!86HYA9o?VRu9(mMDk1;74&K>Hj451Sa zmsxcdVrGm-hrvvE?ue0}yw(8ozO*0m@89vDGzK)tEBdT*ckVxdTwGjlnZ*x>H__w*Pa^_+4NAM{=c9?*FD&%-=SoFdtzUt4$73knPr*j@MpG2 z2K0gQ%gMU0l~P`%C#1iyLFDoi%Emh|;PF%pDuHE}sVXxi^7YXE>~pvHF`L!uA)X+i zZ!zc$QWv2WVEvIlUb$(r3w@Fl{^b5r2eTFx0a&_JT^+rrE%D#Sv{d%0DN|Z|!2wZzHQ+xnK z(4ab#wjfTJWJ_pLVt@clOb_w;*yE6u=mz!FNVoa)DqU&tfB%V<$2GfTBaeR~F6Iuf zioG}M;3r2K#bdxU1S=a=@Q3sNh538BY>`K(apUxUbThb$=7_=d)4Y#UzkhZUn#!eh z9Whly7yQbk$+%54dA)6 z$~#adM)sLB6p+R`){HLT^TAtZ}ElN>cKLpas5FtD(uvxOMGy^ zeFxRm72uw_Mc4z>?|9Wk%-W6n^Or_wCuO&06?z?^o1mwQ?KZ7|) zQ`Dyzjk~vKAh8YkZ_exzfCOg)*f9Rv;C{o~ zJN0%HpbxysHb&T5Y_)J^x8HSN+Se4+;^A8aLT>|Emp;(dmEaM2vz_@_xFH~<>>(ij zM+xFo2SLW!Eql*=?O^-x85p4 z)?;z*nkZami5FTS3){+{bkoNfJ};^wSj9V`IR`?IyST6Y(*Q9W5K(-U>@7k$3(>Bi z9_J8UQSp@(*`fDzp2PU^S0@HryWXbtWgPUhOyI!ULEyXY6%j}H1!mUqM}zRFL&msJ zUR=x<0YG^zd0T~HMQic$m6xg6WC@$-UwBF)r4AXp@ETHt2PhAnH^_{?h4>>h%AjFdVZ(yU2QBLO3yCUCq6D3M{NuOOz6OVcvYRsWTt zk+Vdx=N>naX5x26^$qtX^|i-s3{z2rG({)=!szz_{crxxPI>`Dl-bmM>u)A^6q zyD|OeZp-bTPOKj2#Z3oF!2qP;&iS9GoXa4sSXc;%uSgIO`2X7x1d$PF&;}cXW()`F zaYy;j#k4yy)TudW(t-^1(**^D labelAreas = new HashMap() ; - VASSAL.build.module.Map map ; - List maps = VASSAL.build.module.Map.getMapList() ; - if ( maps.size() > 1 ) - logger.warn( "WARNING: Found multiple maps - using the first one." ) ; - map = maps.get( 0 ) ; + VASSAL.build.module.Map map = selectMap() ; if ( map.getBoardCount() == 0 ) // the scenario doesn't contain any boards - we create a single GENERAL area that spans // the entire map (we assume a single board width, and unlimited height) @@ -731,6 +727,28 @@ public class VassalShim Utils.saveXml( doc, reportFilename ) ; } + private VASSAL.build.module.Map selectMap() + { + // NOTE: VASL 6.5.0 introduced a new map ("Casualties") as part of the new Casualties Bin feature, + // and also renamed the default map ("Main Map"). + List vaslMaps = VASSAL.build.module.Map.getMapList() ; + List otherMaps = new ArrayList() ; + for ( int i=0 ; i < vaslMaps.size() ; ++i ) { + VASSAL.build.module.Map map = vaslMaps.get( i ) ; + if ( map.getMapName().equals( "Main Map" ) ) + return map ; // nb: we always prefer this map + if ( map.getMapName().equals( "Casualties" ) ) + continue ; // nb: we ignore this map + otherMaps.add( map ) ; + } + if ( otherMaps.size() == 0 ) { + logger.warn( "WARNING: Couldn't find any maps!" ) ; + return null ; + } + logger.warn( "WARNING: Couldn't find the main map, using the first alternate." ) ; + return otherMaps.get( 0 ) ; + } + private String makeVassalCoordString( Point pos, Snippet snippet ) { // FUDGE! VASSAL positions labels by the X/Y co-ords of the label's centre (!)