From 65143d823d777a0c932d72c68c9e4906d3c1a9e8 Mon Sep 17 00:00:00 2001 From: Aidiakapi Date: Wed, 8 Nov 2017 17:45:25 +0100 Subject: [PATCH 1/3] Add setting that moves items to a dedicated Dectorio item-group. --- config.lua | 12 ++++++++++++ data.lua | 1 + graphics/item-group/dectorio.png | Bin 0 -> 10865 bytes locale/en/en.cfg | 3 +++ locale/en/settings.cfg | 2 ++ prototypes/item/decoratives.lua | 2 +- prototypes/item/flooring.lua | 4 ++-- prototypes/item/item-group.lua | 19 +++++++++++++++++++ prototypes/item/landscaping.lua | 4 ++-- prototypes/item/signs.lua | 4 ++-- prototypes/item/walls.lua | 10 ++++++---- settings.lua | 7 +++++++ 12 files changed, 57 insertions(+), 11 deletions(-) create mode 100644 graphics/item-group/dectorio.png create mode 100644 prototypes/item/item-group.lua diff --git a/config.lua b/config.lua index 72b844c..129c926 100644 --- a/config.lua +++ b/config.lua @@ -93,8 +93,20 @@ DECT.ENABLED = { ["painted-concrete"] = settings.startup["dectorio-painted-concrete"].value, ["signs"] = settings.startup["dectorio-signs"].value, ["decoratives"] = settings.startup["dectorio-decoratives"].value, + ["item-group"] = settings.startup["dectorio-item-group"].value, } +DECT.ITEM_GROUP = setmetatable({}, { + __index = function (self, key) + return DECT.ENABLED["item-group"] and "dectorio" or key + end +}) +DECT.ITEM_SUBGROUP = setmetatable({}, { + __index = function (self, key) + return DECT.ENABLED["item-group"] and "dectorio-subgroup" or key + end +}) + DECT.CONFIG.SETTINGS = { ["decorative_removal_probability"] = settings.startup["dectorio-decorative-removal-probability"].value, ["vanilla_hazard_concrete"] = settings.startup["dectorio-vanilla-hazard-concrete-style"].value, diff --git a/data.lua b/data.lua index f3bbf21..63c6e47 100644 --- a/data.lua +++ b/data.lua @@ -29,6 +29,7 @@ require("prototypes.entity.signs") require("prototypes.entity.walls") require("prototypes.entity.decoratives") +require("prototypes.item.item-group") require("prototypes.item.flooring") require("prototypes.item.lamp") require("prototypes.item.landscaping") diff --git a/graphics/item-group/dectorio.png b/graphics/item-group/dectorio.png new file mode 100644 index 0000000000000000000000000000000000000000..6de3e86b5a0a403830a804da9d28616c0882abce GIT binary patch literal 10865 zcmV-%Dvs5OP)00001b5ch_0Itp) z=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02y>eSaefwW^{L9 za%BK;VQFr3E^cLXAT%y8E-^XO*0N*(04d=~L_t(&Lp^$lS6cVJFYCm;H|E@P+9qv! zdXv+nny69ZJd22m;5^4T&mt;_Ac}wx1Q8KIM1&wBLvV{qkU*?4)|#O?HqFqqJ@?+; zyY9O0{VDIe?Rzh4FG906_51yOKht*$>3WqQrrppywQAH#PmhB372TXtYIixDZimO? z9bewLQ7=v!vZZm>?+mO&wQ1t}*E1&eSvr3(==1OH>X!6MxlBDT<8j#u3PxbI)-tXp?yTK*c*{?~}kPa^t0LApOdggMC8BxV>yj3daN6!Y*g2M^tvL?zis z|0fam{&J!1uMzA|k?AWa|1vuLIl5YbJ)0-*Orw4gx-*S=$59I#Ss6mONf85|M0ETm zf^@BPq-jiJHk)l`t!+(b(W~)?4!gtQ#l2k;^BtBerhOrK$QIM4N*pjm-BU%kF5Q(_ z^(KSGWHc=sEf$M4xS_M*ZDk`QIyqf3Fb4L6h~8E7>hE zcW19L*v)^5==l^GxrFq50&gOqzJX5>DFrdZ!AmiR0GsWNFpeU20Xol$sJZ#4$;&8| z&cBRI!34fQ1(#6nXUJ4egmD;I=#MasAaL{YFrpnqW;-G#(jrI}liBHXJ_&__q20$% zLO$HFi#z&fEJ>^lxH5U089Z-7_rlHQnYfOHno*@pF4gI^2E7i>-n?p_Q_3u6Lo-+P zb%pRoo#gN3<59JuZ)(IDBO58~&04lpm_}3#C~Ep^1V9KnfgXl0A;vPyC&M-;QB@zZ zFi2D;?TBDkUwBYTp7|V`KF5#ra}0n44RAg~l!eIZF!F$puJh5&33PP?neRhpyCX>c zU0-m|e;D@fZhO5Rr`v61&6;C77NYK{W7`&DIy8v`E8jH9Z`6q@2E<0aPN|S-=H+sk z$gpBCnT<-N{2q4}K!1hO6WuTauQw`%={)b(Rg?7`wOT1NvJqJpG68kKSrQjAb{QSN zgid~rn#(Xa_y+=XnTNE;8#M~9){-mcSb)@YO+LUr`r+34okzZH*Mua)1rr-|!c`KCc$+AS3F zIa-ZkWl5vc%$ZkBaPSthv46&Vvw7iqrTA8(>eju5FKL4e^+_6Mlin_{S*-?xM%5Fs zG=xa92uz>1f&6j79H0$l5o+V3bG;GPF~k6^wnn(8F*6_GrA7ec07!80E}_E9D126V zg}lVTHif7|fNlVr$B3Ru4x8lw;N$o1?&2NO`mbvxUsp?F>Ll08CU1e}3~VG0ZQPwQ z+Uyp+USqMDELNj=&E$00tTq#C){;D81&vA`gx8IKrH>@`+iJ8w_A7CZ!)dqKR!s)& z0P=u`x+c-te5i&vd*K%-&~)fCq93@#`N&c~V&S5i9-;@!1h&LQ<_D3nv%&Ufjpg(|n2IS_OZJL|ynwWNVe77O)o+iF;En#4- zNvO5ifU`#9ssXsGUews^b`S1k&8;M{YydXUsLY8S;6QZKY~9j7##h3)#~JkFYpX_| z*9#!om0@tqD;&f?!&FzufNYosOh9}E1Dt^1=t_v=oa>2LW23VyM8!guILHGbD$gS- z1|fo1-X&!G9Eb46#Kay7Q8NdDo`J+hyUom2K1k@X-fUKbfJ8MZk_N4b1J;CoYs=J< z&1N(i)w*SkMx$2EDYaUS$z){BKDgDf6x*|UXK*cfWHXJu{#D6H*}^|$?tkq1eK_v) z@8AZ#*0yf(PGLSV=HR2y$&M5=6k^Z-KnQ9QUB-l;6VvGbG(uW{Y>J=_L_dly4I_FO z1s8EmqqBL$&-td5_>bYeff6#VqC`()RZ!^ zkvOp4t8`gy7LUhnTQ_O+3K#;gQmt0>-?zlJ8@_H(#P_TcefF+gE#<|uE=pW4LIJtD4*AseHZg(!Fj(AczuIPK3%eie6>j#I2e%$AD zZrX9&4WHHNv|hK<&O^b2PIZw%1=$IjGlqZ&%5zcnX9PQ;ASgxtC3gP{VlsfGB~aDg z2pilcK)0tbc=bsz4Tb0dZV;TKXy!|7?g|+`$jyu(5n|8ZN#}Z!hBogEt|yIb#I`TA zN{vQ?CK$wbcW@jBzUu8(oe#IO)DIH+*5D(zJC>5z8_C12_OOQ}VaQvwpZ!+5x)1ry(Fo2l!C~Q7J zfZghH*!(^xzU=}13HZJ2Sqsn_zy=M(v>CwQ;JV$t%;*+=`0)1V;9zIlW3!vQTR5m% zAn5Cto4>A}0jSuj$Xj9*fCSY*^)LYokC4Kd90W>-9zg7Y6=E2|x!@3-9!5ZFJR;P< z0gJ#Mf#pr0%S9NJ4ntFXi7k8?2|xmWB&CdQLqX}B&BQ(cw5>ztfa&A7ee0pe>vinz z=gj^xJ>mq|P3>QImAlM9|31onQsPhRv07pgVz6&&k`yow$&cJOp9^qC% zePVP%)F;P4$Dm0t1mH9zDxV zT(4F@dLxqDr-b$$D9MlHxl>e_S&xdb04-dj8-yOX; zIShty!OFwzslDv!y=>uj=EQcUz?C=v7J(D~U^TyZefsSCaQMLQbUDoygUOz~UhQPlp6k7B$-SJZ$Elp{+?k_fAo|dHuNv1IjIggge|{Pc`F#)Fka-~0bx8C#TbHsX z_Cc58S)1kBAG3se*UE%Y@#tluEI44$KG1J?FMxbMiiDKpLnRp!1ZZnOPQ(q+8OYM- zyeCv&as||en1i*F{OCRg7i20}3?A?hpvR6311ymOfnEPDz8?yly*)d9e(dvk{_8(~ zH|)Q!(4A4_r}^T;?8(RU`5&mNml+d}d**-@Ff0H5<3K35YhAPL;y&E#>7CZ!YF|nk z-OC)`zE&n^GJYu5o@EGj+C-~kX~ZrD6Hr_s|Nl8aaq}faDWFTcQo^l3DB*OU&XcVr zL<4ZaZ6KPEsKLCz=3F&oh|rLqAB+=3a!n9w<`$tO+-W#|wtM#a^z6siuU?-91G^G) zpwse>vG9sMcUmxWQat}d>-x_$^~=6_++wu{gTbR`$9(=sa36>F!C+u~`61-(=(eTX z{kE^`XYwUSW%EC!j(Yo4E}Pi~K$mADpo{J4DdwkP)+tsU|SLlwrbc7NN<07_3Ov?@87@u?YCdw zp1o3go&ja^qzB{Pf3I8qu}br*dG&3v@|3N^-~aqBba1e->3n_m;^=Ak)vM#(U7ytY zByngB(nQ)g9?#lXs0uY4&i13Z!iJExybXt>1vn*7&!|3fn?>Jz({8=!XJKq^Xo4k zKYsi$ZP}yB4=K_^n&P-@{&mahTlV@dHQLwRa{KSU|Mu~>kB>rO-!8tpxBK(Q5636R z<16koo+qkRl`in4jIGDCX|krnsr)_8(xaf?=lAxm=QoA)F!J%)I;t4rwudiZ@_m)ik}O4|^Tj`ocVX*)7Ix!a z9N%r@&)@D^N)q5H!<)AUtY1}duhsGr`r zhdF>}!36%8!`LMR0vwEGt`LRe2UT6=Akc$#40TVVJ95lKBXkJ{1t=oI-(>Ly_{AY0 zV_5BmO+Q0`-|k;a;&`srOkS%O$8|4pjE}rd2;Mf|7VfZHwQ8+UAe?BrAnS;LpX8Tf z77hyTE6+s$)(}D=ff7JEcP^-Mjz(A;_!?wY*k-`FKr}(7EOasq3VaampM;=6yrKXq z=)uTANJ7(A_T)Z<(A43L)FE5$)IKhJ@h_So~vJ7g~e{a0IX0;@h@`!$GUvqE@TL@Tcj5afrw~z)`@4 zVF;P)Lq?J#20nqM9+@T16@Wp62(V#U0pZFJE?@|o6GWT_kApX`#}VQSkh=n&NNm+` z1fW!63PQ@9+|J-{C-vJB`c~40ZAmO^2H!iR#owI0c>nh7-P>2E$Km&Hp$7v=E)fS0b^P%R3qS?(I+cgOvI{x`r2|N|rG(mmZNpynf1TkAVy%H5KwC#X zLrJiOW%BnjNB8n3_90YP%)b)Z4h|3erzeO1_S-LjnuGn|(P7Z%bF=3xH=E@dV>kdT zg}o8qy_hht0$1I*29kx>ZQI|0Ey4sF8SL3W^p5G}>$UQRf4KnJ0rCu?r;`{#(?OyE z$Y+K^B0`_DnFw=#C@h4(seIz`8yLc_m;gHHW>87Qrv(ZzB?wf1WN&By-k)z|f=B5? zo0%hcu3&Fv|L3=7CofJ8UOhh!`tgtNe?AT$=(S3TWe*Z{%FrsYIrOh&@YbX6&P3gn zGyA7yGLcv;SX_{s^qQrmIfu;%YfX=2`9_`mYMGF6@lTLLm4yg+kXwZ52f=;O4LD#3 z$&=`65gaEXf*w96Pyyg(oj-e&QxOOk&lbp!6_7v)+kzoLC#t-2XSjq)h-gUMNs8|= zBo3~njk@wC9*-OR|M?&Pb`bQQy*z&Z_SNB&z|nCSG?A+%*3RUi_2?!^LZ2bFU7f_X z-DnV3k17;ug-|3M7#-yCM~o{vg+ewrC+`t2!TtYW~XwfV+`SJPQF* zu5-~XA-V-wU<`qO0W3{iB6@&PD6e3!JV1P!x{TN>v6s5YfRuO+2m8QdIT;!T!-nh) zX%B9Ot-AWp7f3g1Ccmx{-s!XQjE_$aLPr7Lqiv_(=RW#22vN;pw+YQV(M@u=;ZC<9 zzI`$F-YoIBu50P;l+Ne(czqs|#XKdQ;`0R>jZ!4yQEI!dmhrBZ@;*ze{<2`O|C0#F z0{8xMq5H29qMQhAUxcnVVtEjOt=Bn@!me!NA#=F|pW!t87Hk8nMt5A-;E^Kj8u(69!xHFMlE>-i|BGr<73hDS251l-#+|*yBa=LkZ>; zlVQ2unIU2mKz6hxu8hg7ud8WqZK$bWmX_qxiwkS2%a_OFU+N>@t^GMHBcCltK9)!R zxElFfM;>X6O1+bil9WVmy;0E<#hatL2=%5UbybxG3u zXS3@@5=a^8>D0WusASh7z@QEP4Eezr`@_S7zz;8v z-@JMC;?;@kU_thf(IHOgm8aevkMESHm34nZDyC84M4ResTJAP9)G!JQDWxSeIqT+$ zJ~DitY#+m(s>yGxmwvMTIW$KW_uZ+jt*WhJR+g1kRuos1(W)vKWz1q;>-9%cEOei| zH$&cnlrl|rgNjdM)dgSm^Q)Y86Y$%$VZ}Z6ht4&K-^Yg`opp3blQE#k7*b``kH*%F z#CA-kuv8gZC;K4mKRyV3_w@0L)8lW$f%k7-fB5jm{z$G2RLizXd*rD?GgY%w(#l%M^UKhXHWbG*WbTgi2PwC@<2uAcf_@| zHPuuz;DTmqs+pywg-j-0+e~uN%UL+p?l@SWR2FE3oT> zn6%;&j4bAMij#Y1(%@>JOl}jW^vtBs8v75!epqE6hl0fGV^EQ!X)-*|afP6A27bI*?pbRmEh|n5Bg@T7F}FMNLgbc21_CGwPqaxgXuP zzF)fdNP&H;iF~Gwd?d%#R5h)wO$~K5ZLJMemCSNxNo8djolz_sj0v3Q^&JUZ*v14l z(Qv_sdv+jT7`1EWC6C7u@VWKt{9$c2RNo~@>rtc+sdHGGY?dZhYa4?0z(Bu!?1R|i z^4dcO;b1thxGtRYH|hheN^iB&U)d{9YaET^X!4Doal73@0$n>^h?Mjv10$;{%gf73 zYpN=;vQzW&vV{}e2MX%xVr1|>*)1Z6)nvbtctZHm9lazfY;9?(sj6&jsI00eW0V!a z5Gu-<_gS%f_lc$C;WWV?RX5_cS=@H>Lxaf;K(haF_VV=P=)3O^0|Ad0_sR{!)An+Guw!AjadxYE++5fuPGqUFwe~UC zB&}8x$tS}gnnF(Gciky3uWYPuq7_mL3JO?*gTjf4+Pa!q_U*&D$Vd0dLDfZ<5c|pY z`MdQm-&j6TbJHuB%(|MIriR+0q5^;)^i#$xmG<3)24G2FW)lyvaJO^ay5#lPeYkUe zg*~9kY93F3v+tB7w+ipnj@)XUyu+Jqbi3_G2f^pZPmYd4E~m}zuvsi7ot48i7WQj$ zC(I0ywYY00Ye1dbGMS=tkGq{ti`it*Es!8pe>)cmKXOM#7Ixn$p%=x)$98tLw6(WZ zSC^O2OPCDiMCZ-$98mf4>KOKJ{i~OTi_g?#ptWiwwUSxFD5BQYl*1Ux8AXg@DuYoZ z==jDZCX&5%40AheP&%0UyphdPW%jEw+r+8O!o)6dO7mnQycwIWSIFg1?xx**5b$q% z9b%C{DibT#Mh6yin}sP|^31lGbhW=u=4RgCuAH;7!v`Ut)&q;lY|@duGV;MZ*()Ij z?h{&BN&Sk!EUgBHmeLC;g#~$eCG^swV*0Wm1p>)@FY?Cnx1gN-Tz~P6<>EX0Wnu4a z2ECxMq55u9HIrFXQk>6(mP$*wEjIu{FagNbc87J|%IBF1c_v!dOh&UXzH25OWT%E5 z$C1=S0yLS7%SIzaz=tjypU>0lGz%Mo7IE6hVt$u6qm~!XT`trH>gTp=%)TkR-3ptA z%jxj>JQm|T>7f{V1W`$jd8fz@0cPQ$vXQiW3YEz$XOu!E^pYYPyrxxeTp#&TfAPn)$fsH|zbmeyvb3STs=f~7tPChr0i-Tt3fiM!0RZ4Ht_wP6GKRGI zW6RY3*^I84w0?O8ft>qybw<5fr&+NWO=hdbq!)|%Qn_@|BjK8gJ7zKlmD&A@%ppxq ziy(oe&UHPR3k3aEo6Y5MhQnct)d=Gyxu&r_1$j$GNXL=-BJ7&a4UvM*gxcELGB7Fz zqYS*NqzL@3qP%=|Bo1`xSQ~j}zWCA@c>?OBBs+xIc-L(}e`RF_ST%#mfX<6(MS1yo zy){?QS;!b!q)a|w$lT>)1`5wW9>ccr!V}z zfKID*IvkIluMyoY6|gl0&_=f^J+J=i9r{;Y{Cd0Hc65035citQFe-yqqtR-&YrvoteWdE32ugDy7q_tE!+T4u`kEP5i-l@wG7$ zMsZ?@d@@f4lZFr8A4;yRt1hHb=_RH0^Gb#ZeqVGqeGN3VJ?OqH2!-0nfm>Q z_a`R@k3;)sFJ3)+dT6y;^#;S^9~~p+B9V4DJ$@W1#fRW^{APZ5E@$VSV}H z*)Hx`x0@|ivtF+smE0T9W|4ApvWjRlXVusK;4$5o+)!7`pqCaG z(dugI@+kRz1B3PT^|FCjkgtG}(5^=+@^_0D;UlNINF^tY35QQ-Ha3F4m*?bU4QVJH z;?xH2?Sa`W&_q{A_U_%;&mZ1?|LWPnL3n2e-}QO@!GI&YFm5geI}TF0J6bYXc)S6PLWSw6#9$cbkKu}n?VQa zmy}dhmFMT@3@;Y&ttGSDW!*EWOYX7v@87+D^X9`(Z^EI_vu_WA!2sl<70>jrCZ9E% zF0#_bO@&-T0oOh7(;OtLvfAccS!kpIZQ?g zlvrI=E@#~e&l8Uz0|cTlTtZ+2PFm7`r=p5kQO+nUD=nlJcDA+Nt!serG(Q>-n<02e za5nOAf$X1+JW!K=T)Q~O$)r)K6e^{pn8q~}P1>0vXYodG`t0oN?b(~}pB)|@gk5%9 z&`&(lGMdVP?;-In!rt<|Diw;0~MKHdeFP<7V` z6X=66rQJ8d)JT~bsTrAR;GJ)5_H5d%jl4Mic5+p z1(eQ?w&uG{pqjka8z8}eC0s__4_P{>B4l8^<91GNI+cWB!XY6`F~E|r zFQJ54TnwjLR75GHbadPUU82znxUJV=X9fK1$e~qi`#u@87-A`>H6}YdgKMC!`=>+U z!0E~H){es;+=cp2j$u^|K&l%tK7gBl{w^{Uc%hJ4Xlq1ihg4nZ#RJqdXs3$B=! zj7BXn3$FzHq=uVNHFP__@$2%Tm}XHDOd!302DVi~959o{VAA1?MO{&QQVbkAsEh=s z+n$XCrs7ge&>0UZUs1w@F_aWj+gqEcg%pq`N#8Aqs}SS%?nmz2Cp$%C*uh0N|db%H|mh*pQHoFenOm*0_mk_VU9af57K`ya&}g zAJ~m%D>$`bZiP2)D(aAARSqST_s5p?#nf^W8hMGNzJ_Sf@8aS@CWA(&Q%dQy;!^9~K*-XN z=QahX7x(%7!6#3`KvwAC?b++MXD{>{LZ}#yb9|)`0utXu8(z#G(d3x-gm4=`|H)&& z!)AUQ4%+Ona+`#+y)1Q3$7EWoFr#8HzG*zUb0)okm&l%OAX)e*>uxMi8E^rL1o(#4 zpsbu;R7h2_V|S!jKtbM?Koljze!Mk}!ek_aDHUavX=&-~p?(m6LTWyP7$8$M8V`^I z0r1NspDvJr*)Ru_#kRK-!12JQ$K%939volsNJb1ao~dX=M}>fNPna}qFJ-B-)#kz1 zut$c1kA2=<9EVH_{%kgx#wD#C;xr97aajwCjZr%Y-(%@#A!fK7T=izV4-n|h`kJaeVva@il!_U+p2lZgZl!Z;FzkfSC!wR$m*46c8F6Nc?m6( zNg$d=C(mQILiNv&p5S)Jy2WHS18@w(!h6la1d!k^NoMyu@^x zd_KuLjX}zXlODNulU__IqUBNxa;vK<=_Q2_$!cn==D7(_6BG>!1F30OK?anAa|=5Y z6BFWL|76gMAi6<@EiNhozk{9~6T~BbKlu7ICKk)|dXrkMwc6|xs@|H>gnm_i6E~@0 zJib+&IKugPApb9Q~OYvLZC>+mqNZZm=A7!5j(q?z7vqir&=YbLc*oHC@$1*dBf zrq1a54LZG0$d^f{NiHF3WTPP!k>TzSCsQb(eR(zIW#=)D4$Q8quFwe*VYLS=LFsTk zltjWz9?8gq4bhod=`aVFRb^#WaS_M?jY6T0wL}4UV9np)W1~F2SgKSi)#62Vw<4=& zHm6OL)h&T=n#VKKI7TY#e!azFQ7F}0J08dg+k3>rDBR-|%G+y4Vroa??g{U-ijum- z>5!3n71_MmR_&ac&*7@na~89i1UrYF5AI8RA7e+3vF_faos*%mf}Wk5T~wG~%A_|o z){A>@!IZ$)ydtuTj{>J1lf<|7`s;5|C=`HSeqnwws2C_QwWxqvz-#-)CO{vGFqup# zk}7(}@AfEi+awt^?0A-zI{Bc2wN%)nfX$HOaXaVKYMERH@y_jWdf>n9_C+hVS(w~C zlhq^7?3AZ83sW1%6KC8^v93)f7W25gHIvC^v+0dXq|HgxB|@QxfDF!+_(mG9E3UYR zlAE2LmU@R$kXKt>4)F%0W`6WGXyrp8@f$^mpL;Xp;C-E#zeAiZc2*BB74@jHC+54|ZV&EuFB^0^ofb~r zsMng!M&WGx@M3n0D4|W1Rx=t`J8~QLvd)<_GtQSQ#ColEgLwFD6^o@hgMlP%jnEAe z-$V__Fu$C=Z z2H>9$;WIxU)&STlOBp5U8R?zXS0`o%>bZBS+3}3d+if$s6IMpAB9~(-nzwTdMiVT* zdwX7+%}%U`2Cdno7pgleM`F7bX_f4ldTuvcAH+l*w-yjZWJUAsPejJ(iwd*w6+@!BXM))A*oa<5D4G? z^fnv}IczqyQXvwH*;98(v2n3=MPJPKML2kHu9%rad_U<2W8`b|MG@-`SQfP~ucCrR zFNOwSx5urP`7rYQpW?6@4)keX-4g z)a#&Ms`ZZ+F1cBga2X!Lr$7K?dI-r6yf+#*V<;l=l;@&P&2)^8Yt zaROzhPNM~GYzMXv4nkW#uia*G*sMJxHH@B{r1;yn@7zgfF8dNV_W;-o4l2c-s3H%w zk&ose|J;U(%a}!#m9QJ<=2NmuN(xGfbH`e~c2A?Am5^8=_COEdyI^xe&CmnzAuBT@ zB|9TMI_gGY^L0jNbk$&d{YXO1Xkr_u%49Sf42BiU3QSoM zf3-A3eD7j=hRD(zBC>&t*eB6xRw8h+fRbHMkXb;Nhd64UkWPyfVv$k~-dxrb zUD$e^(H%vK`sRAfttc2m-0isGyVo}P2xyCS9M$$CbKS^nPlQ{H4%UB@o0D-TIia8+ zmtI1pQFAl0QnIttI?KOY=#7B7W$g&J;le~S@m0g=wurLaE74KcV{b*p#z5Usxz$%o z?p?pvSHfnq!8@m>#bS|YN;uiyH`L$LUs{`!RD3y;@g=S4>w?Cs)O*(pn!he+`g`jr zv!}1GrM-p4V)1yqap43{DBw@=TiE3lJ<<7fSK;{S-BJGsJ)I(jiBI`N00000NkvXX Hu0mjfnrIH_ literal 0 HcmV?d00001 diff --git a/locale/en/en.cfg b/locale/en/en.cfg index b50cb98..840022b 100644 --- a/locale/en/en.cfg +++ b/locale/en/en.cfg @@ -1,6 +1,9 @@ dect-gui-sign-title=Select an icon dect-gui-sign-cancel=Cancel +[item-group-name] +dectorio=Dectorio + [item-name] dect-base-dirt=Dirt dect-base-sand=Sand diff --git a/locale/en/settings.cfg b/locale/en/settings.cfg index 2eded8e..db3bf5d 100644 --- a/locale/en/settings.cfg +++ b/locale/en/settings.cfg @@ -6,6 +6,7 @@ dectorio-flooring=Enable Floorings dectorio-painted-concrete=Enable Painted Concrete dectorio-signs=Enable Signs dectorio-decoratives=Enable Decoratives +dectorio-item-group=Separate Crafting Tab dectorio-vanilla-hazard-concrete-style=Use default Factorio Hazard concrete style dectorio-landscaping-blueprintable=Landscaping items are blueprintable dectorio-decorative-removal-probability=Decoration removal probability @@ -21,6 +22,7 @@ dectorio-flooring=Enables the ability to craft flooring types including wooden f dectorio-painted-concrete=Enables painted concrete styles that replace the base Hazard concrete dectorio-signs=Enables the ability to place signs dectorio-decoratives=Enables the ability to craft decorative items for your factory +dectorio-item-group=Moves all Dectorio items into a dedicated crafting tab in the inventory. dectorio-vanilla-hazard-concrete-style=When enabled, Painted Hazard concrete will look like the default Factorio Hazard concrete when placed (requires Painted Concrete to be enabled) dectorio-landscaping-blueprintable=When enabled, blueprints will include landscaping features as tiles dectorio-decorative-removal-probability=The probability that decorations, such as bushes and grasses, are removed when flooring tiles are placed (1 = 100% are removed (default), 0.5 = 50%, 0 = none are removed) diff --git a/prototypes/item/decoratives.lua b/prototypes/item/decoratives.lua index 32139c9..dc3cdb1 100644 --- a/prototypes/item/decoratives.lua +++ b/prototypes/item/decoratives.lua @@ -20,7 +20,7 @@ if DECT.ENABLED["decoratives"] then flags = {"goes-to-quickbar"}, -- subgroup = "decoratives", -- order = "a[traffic-bollard]", - subgroup = "terrain", + subgroup = DECT.ITEM_SUBGROUP["terrain"], order = "w[traffic-bollard]", place_result = "dect-traffic-bollard", stack_size = 50 diff --git a/prototypes/item/flooring.lua b/prototypes/item/flooring.lua index 0f45a1f..7326e45 100644 --- a/prototypes/item/flooring.lua +++ b/prototypes/item/flooring.lua @@ -13,7 +13,7 @@ if DECT.ENABLED["painted-concrete"] then { type = "item-subgroup", name = "concrete-paint", - group = "logistics", + group = DECT.ITEM_GROUP["logistics"], order = "i" } }) @@ -60,7 +60,7 @@ if DECT.ENABLED["wood-floor"] then flags = {"goes-to-main-inventory"}, fuel_category = "chemical", fuel_value = "2MJ", - subgroup = "terrain", + subgroup = DECT.ITEM_SUBGROUP["terrain"], order = "a[stone-brick]-b[wood-floor]", stack_size = DECT.CONFIG.SETTINGS["flooring_stack_size"], place_as_tile = { diff --git a/prototypes/item/item-group.lua b/prototypes/item/item-group.lua new file mode 100644 index 0000000..5124015 --- /dev/null +++ b/prototypes/item/item-group.lua @@ -0,0 +1,19 @@ +if DECT.ENABLED["item-group"] then + + data:extend({ + { + type = "item-group", + name = "dectorio", + order = "d-a", + icon = "__Dectorio__/graphics/item-group/dectorio.png", + icon_size = 64, + }, + { + type = "item-subgroup", + name = "dectorio-subgroup", + group = "dectorio", + order = "a", + } + }) + +end \ No newline at end of file diff --git a/prototypes/item/landscaping.lua b/prototypes/item/landscaping.lua index 4b9afde..6e7ec4d 100644 --- a/prototypes/item/landscaping.lua +++ b/prototypes/item/landscaping.lua @@ -7,7 +7,7 @@ if DECT.ENABLED["landscaping"] then { type = "item-subgroup", name = "landscaping", - group = "logistics", + group = DECT.ITEM_GROUP["logistics"], order = "g-a" } }) @@ -42,7 +42,7 @@ if DECT.ENABLED["landscaping"] then { type = "item-subgroup", name = "landscaping2", - group = "logistics", + group = DECT.ITEM_GROUP["logistics"], order = "g-b" } }) diff --git a/prototypes/item/signs.lua b/prototypes/item/signs.lua index cf76c94..e796cfa 100644 --- a/prototypes/item/signs.lua +++ b/prototypes/item/signs.lua @@ -8,7 +8,7 @@ if DECT.ENABLED["signs"] then name = "dect-sign-wood", icon = "__Dectorio__/graphics/icons/sign-wood.png", flags = {"goes-to-quickbar"}, - subgroup = "terrain", + subgroup = DECT.ITEM_SUBGROUP["terrain"], order = "x[sign-wood]", place_result = "dect-sign-wood", stack_size = 50 @@ -18,7 +18,7 @@ if DECT.ENABLED["signs"] then name = "dect-sign-steel", icon = "__Dectorio__/graphics/icons/sign-steel.png", flags = {"goes-to-quickbar"}, - subgroup = "terrain", + subgroup = DECT.ITEM_SUBGROUP["terrain"], order = "y[sign-steel]", place_result = "dect-sign-steel", stack_size = 50 diff --git a/prototypes/item/walls.lua b/prototypes/item/walls.lua index c376878..96e57ec 100644 --- a/prototypes/item/walls.lua +++ b/prototypes/item/walls.lua @@ -2,13 +2,15 @@ if DECT.ENABLED["walls"] then + local subgroup = DECT.ITEM_SUBGROUP["defensive-structure"] + data:extend({ { type = "item", name = "dect-concrete-wall", icon = "__Dectorio__/graphics/icons/concrete-wall.png", flags = {"goes-to-quickbar"}, - subgroup = "defensive-structure", + subgroup = subgroup, order = "a[d-concrete-wall]", stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"], place_result = "dect-concrete-wall" @@ -18,7 +20,7 @@ if DECT.ENABLED["walls"] then name = "dect-chain-wall", icon = "__Dectorio__/graphics/icons/chain-wall.png", flags = {"goes-to-quickbar"}, - subgroup = "defensive-structure", + subgroup = subgroup, order = "a[c-chain-wall]", stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"], place_result = "dect-chain-wall" @@ -30,7 +32,7 @@ if DECT.ENABLED["walls"] then flags = {"goes-to-quickbar"}, fuel_category = "chemical", fuel_value = "12MJ", - subgroup = "defensive-structure", + subgroup = subgroup, order = "a[a-wood-wall]", stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"], place_result = "dect-wood-wall" @@ -40,7 +42,7 @@ if DECT.ENABLED["walls"] then name = "dect-hazard-gate", icon = "__Dectorio__/graphics/icons/hazard-gate.png", flags = {"goes-to-quickbar"}, - subgroup = "defensive-structure", + subgroup = subgroup, order = "a[wall]-b[hazard-gate]", stack_size = 50, place_result = "dect-hazard-gate" diff --git a/settings.lua b/settings.lua index a41e1df..5aefa1d 100644 --- a/settings.lua +++ b/settings.lua @@ -50,6 +50,13 @@ data:extend({ default_value = true, order = "a-g" }, + { + type = "bool-setting", + name = "dectorio-item-group", + setting_type = "startup", + default_value = true, + order = "a-h" + }, { type = "bool-setting", name = "dectorio-vanilla-hazard-concrete-style", From f27e62b759b0e2ca5e99b4ced3d3c704c578584c Mon Sep 17 00:00:00 2001 From: jpanther Date: Fri, 10 Nov 2017 17:26:18 +1100 Subject: [PATCH 2/3] Changed sorting order for items, updated item-group icon --- config.lua | 9 ++------- graphics/item-group/dectorio.png | Bin 10865 -> 7740 bytes locale/de/de.cfg | 5 ++++- locale/en/settings.cfg | 4 ++-- locale/pl/pl.cfg | 5 ++++- prototypes/item/decoratives.lua | 26 ++++++++++++-------------- prototypes/item/flooring.lua | 18 +++++++++--------- prototypes/item/item-group.lua | 10 +++------- prototypes/item/landscaping.lua | 14 +++++++------- prototypes/item/signs.lua | 20 +++++++++++++++----- prototypes/item/walls.lua | 12 +++++------- 11 files changed, 63 insertions(+), 60 deletions(-) diff --git a/config.lua b/config.lua index 129c926..69d06de 100644 --- a/config.lua +++ b/config.lua @@ -98,12 +98,7 @@ DECT.ENABLED = { DECT.ITEM_GROUP = setmetatable({}, { __index = function (self, key) - return DECT.ENABLED["item-group"] and "dectorio" or key - end -}) -DECT.ITEM_SUBGROUP = setmetatable({}, { - __index = function (self, key) - return DECT.ENABLED["item-group"] and "dectorio-subgroup" or key + return DECT.ENABLED["item-group"] and "dectorio" or "logistics" end }) @@ -159,4 +154,4 @@ DECT.INCOMPATIBLE.MODS = { }, } -return DECT \ No newline at end of file +return DECT diff --git a/graphics/item-group/dectorio.png b/graphics/item-group/dectorio.png index 6de3e86b5a0a403830a804da9d28616c0882abce..c369a0a708fa53d86c98a20ef5a583b5437d46e0 100644 GIT binary patch literal 7740 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 Hu0mjfnrIH_ diff --git a/locale/de/de.cfg b/locale/de/de.cfg index 11d3111..c1da55b 100644 --- a/locale/de/de.cfg +++ b/locale/de/de.cfg @@ -1,6 +1,9 @@ dect-gui-sign-title=Wähle ein Symbol dect-gui-sign-cancel=Abbrechen +[item-group-name] +dectorio=Dectorio + [item-name] dect-base-dirt=Erde dect-base-sand=Sand @@ -81,4 +84,4 @@ stone-walls=Einfache Mauern, die deine Fabrik vor Angreifern beschützen. dect-advanced-walls=Stabiler als einfache Mauern, machen deine Fabrik noch sicherer. dect-wood-floor=Einfacher Holzboden, der es dir ermöglicht schneller zu laufen. landfill=Erlaubt dir, Wasser hinzuzufügen und zu entfernen. -dect-signs=Schilder, die dir helfen deine Fabrik zu beschriften. \ No newline at end of file +dect-signs=Schilder, die dir helfen deine Fabrik zu beschriften. diff --git a/locale/en/settings.cfg b/locale/en/settings.cfg index db3bf5d..ce2684b 100644 --- a/locale/en/settings.cfg +++ b/locale/en/settings.cfg @@ -22,10 +22,10 @@ dectorio-flooring=Enables the ability to craft flooring types including wooden f dectorio-painted-concrete=Enables painted concrete styles that replace the base Hazard concrete dectorio-signs=Enables the ability to place signs dectorio-decoratives=Enables the ability to craft decorative items for your factory -dectorio-item-group=Moves all Dectorio items into a dedicated crafting tab in the inventory. +dectorio-item-group=Moves all decorative items into a dedicated crafting tab in the inventory dectorio-vanilla-hazard-concrete-style=When enabled, Painted Hazard concrete will look like the default Factorio Hazard concrete when placed (requires Painted Concrete to be enabled) dectorio-landscaping-blueprintable=When enabled, blueprints will include landscaping features as tiles dectorio-decorative-removal-probability=The probability that decorations, such as bushes and grasses, are removed when flooring tiles are placed (1 = 100% are removed (default), 0.5 = 50%, 0 = none are removed) dectorio-flooring-stack-size=The number of flooring items that can be stacked in one inventory slot (default = 500) dectorio-landscaping-stack-size=The number of landscaping items that can be stacked in one inventory slot (default = 500) -dectorio-walls-stack-size=The number of walls that can be stacked in one inventory slot (default = 200) \ No newline at end of file +dectorio-walls-stack-size=The number of walls that can be stacked in one inventory slot (default = 200) diff --git a/locale/pl/pl.cfg b/locale/pl/pl.cfg index 91b29e1..2e1f2a3 100755 --- a/locale/pl/pl.cfg +++ b/locale/pl/pl.cfg @@ -1,6 +1,9 @@ dect-gui-sign-title=Wybierz ikonę dect-gui-sign-cancel=Anuluj +[item-group-name] +dectorio=Dectorio + [item-name] dect-base-dirt=Błoto dect-base-sand=Piach @@ -81,4 +84,4 @@ stone-walls=Podstawowe mury chroniące fabrykę przed napastnikami. dect-advanced-walls=Silniejsze mury od podstawowych chroniące fabrykę przed agresorami. dect-wood-floor=Podstawowe drewniane deski służą do okrywania ziemnego podłoża. Deski podłogowe przyśpieszają tempo poruszania się. landfill=Pozwala na dodanie lub usunięcie terenów z wodą. -dect-signs=Znaki informacyjne które można ustawiać z informacją w formie przedmiotu. +dect-signs=Znaki informacyjne które można ustawiać z informacją w formie przedmiotu. diff --git a/prototypes/item/decoratives.lua b/prototypes/item/decoratives.lua index dc3cdb1..5fbe899 100644 --- a/prototypes/item/decoratives.lua +++ b/prototypes/item/decoratives.lua @@ -2,15 +2,15 @@ if DECT.ENABLED["decoratives"] then - -- -- Add subgroup for decoratives - -- data:extend({ - -- { - -- type = "item-subgroup", - -- name = "decoratives", - -- group = "logistics", - -- order = "g-b" - -- } - -- }) + -- Add subgroup for decoratives + data:extend({ + { + type = "item-subgroup", + name = "decoratives", + group = DECT.ITEM_GROUP["decoratives"], + order = "e-b" + } + }) data:extend({ { @@ -18,13 +18,11 @@ if DECT.ENABLED["decoratives"] then name = "dect-traffic-bollard", icon = "__Dectorio__/graphics/icons/traffic-bollard.png", flags = {"goes-to-quickbar"}, - -- subgroup = "decoratives", - -- order = "a[traffic-bollard]", - subgroup = DECT.ITEM_SUBGROUP["terrain"], - order = "w[traffic-bollard]", + subgroup = "decoratives", + order = "a[traffic-bollard]", place_result = "dect-traffic-bollard", stack_size = 50 } }) -end \ No newline at end of file +end diff --git a/prototypes/item/flooring.lua b/prototypes/item/flooring.lua index 7326e45..b51f688 100644 --- a/prototypes/item/flooring.lua +++ b/prototypes/item/flooring.lua @@ -12,9 +12,9 @@ if DECT.ENABLED["painted-concrete"] then data:extend({ { type = "item-subgroup", - name = "concrete-paint", - group = DECT.ITEM_GROUP["logistics"], - order = "i" + name = "flooring", + group = DECT.ITEM_GROUP["flooring"], + order = "i-b" } }) @@ -26,7 +26,7 @@ if DECT.ENABLED["painted-concrete"] then name = "dect-paint-"..variant, icon = "__Dectorio__/graphics/icons/paint-"..variant..".png", flags = {"goes-to-main-inventory"}, - subgroup = "concrete-paint", + subgroup = "flooring", order = _.."[paint-"..variant.."]", stack_size = DECT.CONFIG.SETTINGS["flooring_stack_size"], place_as_tile = { @@ -40,10 +40,10 @@ if DECT.ENABLED["painted-concrete"] then -- Move base hazard concrete item under painted concrete local base_hazard_item = data.raw["item"]["hazard-concrete"] - base_hazard_item.subgroup = "concrete-paint" + base_hazard_item.subgroup = "flooring" base_hazard_item.order = "00[a-hazard-concrete]" base_hazard_item.stack_size = DECT.CONFIG.SETTINGS["flooring_stack_size"] - + if not DECT.CONFIG.SETTINGS["vanilla_hazard_concrete"] then base_hazard_item.icon = "__Dectorio__/graphics/icons/paint-hazard.png" end @@ -60,8 +60,8 @@ if DECT.ENABLED["wood-floor"] then flags = {"goes-to-main-inventory"}, fuel_category = "chemical", fuel_value = "2MJ", - subgroup = DECT.ITEM_SUBGROUP["terrain"], - order = "a[stone-brick]-b[wood-floor]", + subgroup = "flooring", + order = "00[0-wood-floor]", stack_size = DECT.CONFIG.SETTINGS["flooring_stack_size"], place_as_tile = { result = "dect-wood-floor", @@ -104,4 +104,4 @@ if DECT.ENABLED["gravel"] then condition = { "water-tile" } } -end \ No newline at end of file +end diff --git a/prototypes/item/item-group.lua b/prototypes/item/item-group.lua index 5124015..2cbd205 100644 --- a/prototypes/item/item-group.lua +++ b/prototypes/item/item-group.lua @@ -1,3 +1,5 @@ +-- item/item-group + if DECT.ENABLED["item-group"] then data:extend({ @@ -7,13 +9,7 @@ if DECT.ENABLED["item-group"] then order = "d-a", icon = "__Dectorio__/graphics/item-group/dectorio.png", icon_size = 64, - }, - { - type = "item-subgroup", - name = "dectorio-subgroup", - group = "dectorio", - order = "a", } }) -end \ No newline at end of file +end diff --git a/prototypes/item/landscaping.lua b/prototypes/item/landscaping.lua index 6e7ec4d..7be2a72 100644 --- a/prototypes/item/landscaping.lua +++ b/prototypes/item/landscaping.lua @@ -7,8 +7,8 @@ if DECT.ENABLED["landscaping"] then { type = "item-subgroup", name = "landscaping", - group = DECT.ITEM_GROUP["logistics"], - order = "g-a" + group = DECT.ITEM_GROUP["landscaping"], + order = "l-a" } }) @@ -41,9 +41,9 @@ if DECT.ENABLED["landscaping"] then data:extend({ { type = "item-subgroup", - name = "landscaping2", - group = DECT.ITEM_GROUP["logistics"], - order = "g-b" + name = "landscaping-rocks", + group = DECT.ITEM_GROUP["landscaping-rocks"], + order = "l-b" } }) @@ -62,7 +62,7 @@ if DECT.ENABLED["landscaping"] then name = "dect-base-"..rock, icon = data.raw["simple-entity"][rock].icon, flags = {"goes-to-main-inventory"}, - subgroup = "landscaping2", + subgroup = "landscaping-rocks", order = _.."[base-"..rock.."]", stack_size = DECT.CONFIG.SETTINGS["landscaping_stack_size"], place_result = rock, @@ -77,4 +77,4 @@ if DECT.ENABLED["landscaping"] then base_landfill.order = "7[landfill]" base_landfill.stack_size = DECT.CONFIG.SETTINGS["landscaping_stack_size"] -end \ No newline at end of file +end diff --git a/prototypes/item/signs.lua b/prototypes/item/signs.lua index e796cfa..844d535 100644 --- a/prototypes/item/signs.lua +++ b/prototypes/item/signs.lua @@ -2,14 +2,24 @@ if DECT.ENABLED["signs"] then + -- Add subgroup for signs + data:extend({ + { + type = "item-subgroup", + name = "signs", + group = DECT.ITEM_GROUP["signs"], + order = "0" + } + }) + data:extend({ { type = "item", name = "dect-sign-wood", icon = "__Dectorio__/graphics/icons/sign-wood.png", flags = {"goes-to-quickbar"}, - subgroup = DECT.ITEM_SUBGROUP["terrain"], - order = "x[sign-wood]", + subgroup = "signs", + order = "a[sign-wood]", place_result = "dect-sign-wood", stack_size = 50 }, @@ -18,11 +28,11 @@ if DECT.ENABLED["signs"] then name = "dect-sign-steel", icon = "__Dectorio__/graphics/icons/sign-steel.png", flags = {"goes-to-quickbar"}, - subgroup = DECT.ITEM_SUBGROUP["terrain"], - order = "y[sign-steel]", + subgroup = "signs", + order = "b[sign-steel]", place_result = "dect-sign-steel", stack_size = 50 } }) -end \ No newline at end of file +end diff --git a/prototypes/item/walls.lua b/prototypes/item/walls.lua index 96e57ec..f222aab 100644 --- a/prototypes/item/walls.lua +++ b/prototypes/item/walls.lua @@ -2,15 +2,13 @@ if DECT.ENABLED["walls"] then - local subgroup = DECT.ITEM_SUBGROUP["defensive-structure"] - data:extend({ { type = "item", name = "dect-concrete-wall", icon = "__Dectorio__/graphics/icons/concrete-wall.png", flags = {"goes-to-quickbar"}, - subgroup = subgroup, + subgroup = "defensive-structure", order = "a[d-concrete-wall]", stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"], place_result = "dect-concrete-wall" @@ -20,7 +18,7 @@ if DECT.ENABLED["walls"] then name = "dect-chain-wall", icon = "__Dectorio__/graphics/icons/chain-wall.png", flags = {"goes-to-quickbar"}, - subgroup = subgroup, + subgroup = "defensive-structure", order = "a[c-chain-wall]", stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"], place_result = "dect-chain-wall" @@ -32,7 +30,7 @@ if DECT.ENABLED["walls"] then flags = {"goes-to-quickbar"}, fuel_category = "chemical", fuel_value = "12MJ", - subgroup = subgroup, + subgroup = "defensive-structure", order = "a[a-wood-wall]", stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"], place_result = "dect-wood-wall" @@ -42,7 +40,7 @@ if DECT.ENABLED["walls"] then name = "dect-hazard-gate", icon = "__Dectorio__/graphics/icons/hazard-gate.png", flags = {"goes-to-quickbar"}, - subgroup = subgroup, + subgroup = "defensive-structure", order = "a[wall]-b[hazard-gate]", stack_size = 50, place_result = "dect-hazard-gate" @@ -55,4 +53,4 @@ if DECT.ENABLED["walls"] then base_stone_wall.stack_size = DECT.CONFIG.SETTINGS["walls_stack_size"] base_stone_wall.order = "a[b-stone-wall]" -end \ No newline at end of file +end From b859a60eeebfe7d917bba4c7a42a8cff468aa915 Mon Sep 17 00:00:00 2001 From: Aidiakapi Date: Fri, 10 Nov 2017 16:37:35 +0100 Subject: [PATCH 3/3] Simplify item-group code. --- config.lua | 7 ++----- prototypes/item/decoratives.lua | 2 +- prototypes/item/flooring.lua | 2 +- prototypes/item/landscaping.lua | 4 ++-- prototypes/item/signs.lua | 2 +- 5 files changed, 7 insertions(+), 10 deletions(-) diff --git a/config.lua b/config.lua index 69d06de..dff4a97 100644 --- a/config.lua +++ b/config.lua @@ -96,11 +96,8 @@ DECT.ENABLED = { ["item-group"] = settings.startup["dectorio-item-group"].value, } -DECT.ITEM_GROUP = setmetatable({}, { - __index = function (self, key) - return DECT.ENABLED["item-group"] and "dectorio" or "logistics" - end -}) +-- The subgroups for all items in the mod +DECT.ITEM_GROUP = DECT.ENABLED["item-group"] and "dectorio" or "logistics" DECT.CONFIG.SETTINGS = { ["decorative_removal_probability"] = settings.startup["dectorio-decorative-removal-probability"].value, diff --git a/prototypes/item/decoratives.lua b/prototypes/item/decoratives.lua index 5fbe899..696f882 100644 --- a/prototypes/item/decoratives.lua +++ b/prototypes/item/decoratives.lua @@ -7,7 +7,7 @@ if DECT.ENABLED["decoratives"] then { type = "item-subgroup", name = "decoratives", - group = DECT.ITEM_GROUP["decoratives"], + group = DECT.ITEM_GROUP, order = "e-b" } }) diff --git a/prototypes/item/flooring.lua b/prototypes/item/flooring.lua index b51f688..9c06a18 100644 --- a/prototypes/item/flooring.lua +++ b/prototypes/item/flooring.lua @@ -13,7 +13,7 @@ if DECT.ENABLED["painted-concrete"] then { type = "item-subgroup", name = "flooring", - group = DECT.ITEM_GROUP["flooring"], + group = DECT.ITEM_GROUP, order = "i-b" } }) diff --git a/prototypes/item/landscaping.lua b/prototypes/item/landscaping.lua index 7be2a72..6eb465e 100644 --- a/prototypes/item/landscaping.lua +++ b/prototypes/item/landscaping.lua @@ -7,7 +7,7 @@ if DECT.ENABLED["landscaping"] then { type = "item-subgroup", name = "landscaping", - group = DECT.ITEM_GROUP["landscaping"], + group = DECT.ITEM_GROUP, order = "l-a" } }) @@ -42,7 +42,7 @@ if DECT.ENABLED["landscaping"] then { type = "item-subgroup", name = "landscaping-rocks", - group = DECT.ITEM_GROUP["landscaping-rocks"], + group = DECT.ITEM_GROUP, order = "l-b" } }) diff --git a/prototypes/item/signs.lua b/prototypes/item/signs.lua index 844d535..1cfe5a3 100644 --- a/prototypes/item/signs.lua +++ b/prototypes/item/signs.lua @@ -7,7 +7,7 @@ if DECT.ENABLED["signs"] then { type = "item-subgroup", name = "signs", - group = DECT.ITEM_GROUP["signs"], + group = DECT.ITEM_GROUP, order = "0" } })