From f19ac591aeeb27299a84c34e8b4ed24e9bfa0171 Mon Sep 17 00:00:00 2001 From: DarkGuardsman Date: Tue, 3 Sep 2013 17:24:43 -0400 Subject: [PATCH] Added Ilus Element mod for merging Content will be merged into the core as an optional decor block/item set. --- .../assets/dark/models/xpFurnaceSample.bmp | Bin 0 -> 759862 bytes .../assets/dark/models/xpFurnaceSample.mtl | 11 ++ .../assets/dark/models/xpFurnaceSample.png | Bin 0 -> 36993 bytes resources/assets/illus/lang/en_US.properties | 95 +++++++++++ .../illus/textures/blocks/GlowGlass.png | Bin 0 -> 183 bytes .../illus/textures/blocks/StainedGlass.png | Bin 0 -> 183 bytes .../assets/illus/textures/blocks/basalt.png | Bin 0 -> 835 bytes .../illus/textures/blocks/basaltbrick.png | Bin 0 -> 485 bytes .../illus/textures/blocks/basaltchiseled.png | Bin 0 -> 465 bytes .../illus/textures/blocks/basaltcobble.png | Bin 0 -> 617 bytes .../illus/textures/blocks/basaltcracked.png | Bin 0 -> 561 bytes .../illus/textures/blocks/basaltmossy.png | Bin 0 -> 698 bytes .../illus/textures/blocks/basaltslab.png | Bin 0 -> 465 bytes .../illus/textures/blocks/basaltslabside.png | Bin 0 -> 495 bytes .../assets/illus/textures/blocks/blocks.png | Bin 0 -> 22244 bytes .../illus/textures/blocks/colorSand.png | Bin 0 -> 651 bytes .../assets/illus/textures/items/dust.png | Bin 0 -> 290 bytes src/dark/illus/ClientProxy.java | 15 ++ src/dark/illus/CommonProxy.java | 21 +++ src/dark/illus/IllustriousElements.java | 160 ++++++++++++++++++ src/dark/illus/TranslationHelper.java | 72 ++++++++ .../illus/blocks/colored/BlockBasalt.java | 92 ++++++++++ .../illus/blocks/colored/BlockColorGlass.java | 51 ++++++ .../illus/blocks/colored/BlockColorSand.java | 95 +++++++++++ .../illus/blocks/colored/BlockColored.java | 96 +++++++++++ .../illus/blocks/colored/ItemBlockBasalt.java | 41 +++++ .../blocks/colored/ItemBlockColored.java | 34 ++++ src/dark/illus/items/ItemColored.java | 75 ++++++++ 28 files changed, 858 insertions(+) create mode 100644 resources/assets/dark/models/xpFurnaceSample.bmp create mode 100644 resources/assets/dark/models/xpFurnaceSample.mtl create mode 100644 resources/assets/dark/models/xpFurnaceSample.png create mode 100644 resources/assets/illus/lang/en_US.properties create mode 100644 resources/assets/illus/textures/blocks/GlowGlass.png create mode 100644 resources/assets/illus/textures/blocks/StainedGlass.png create mode 100644 resources/assets/illus/textures/blocks/basalt.png create mode 100644 resources/assets/illus/textures/blocks/basaltbrick.png create mode 100644 resources/assets/illus/textures/blocks/basaltchiseled.png create mode 100644 resources/assets/illus/textures/blocks/basaltcobble.png create mode 100644 resources/assets/illus/textures/blocks/basaltcracked.png create mode 100644 resources/assets/illus/textures/blocks/basaltmossy.png create mode 100644 resources/assets/illus/textures/blocks/basaltslab.png create mode 100644 resources/assets/illus/textures/blocks/basaltslabside.png create mode 100644 resources/assets/illus/textures/blocks/blocks.png create mode 100644 resources/assets/illus/textures/blocks/colorSand.png create mode 100644 resources/assets/illus/textures/items/dust.png create mode 100644 src/dark/illus/ClientProxy.java create mode 100644 src/dark/illus/CommonProxy.java create mode 100644 src/dark/illus/IllustriousElements.java create mode 100644 src/dark/illus/TranslationHelper.java create mode 100644 src/dark/illus/blocks/colored/BlockBasalt.java create mode 100644 src/dark/illus/blocks/colored/BlockColorGlass.java create mode 100644 src/dark/illus/blocks/colored/BlockColorSand.java create mode 100644 src/dark/illus/blocks/colored/BlockColored.java create mode 100644 src/dark/illus/blocks/colored/ItemBlockBasalt.java create mode 100644 src/dark/illus/blocks/colored/ItemBlockColored.java create mode 100644 src/dark/illus/items/ItemColored.java diff --git a/resources/assets/dark/models/xpFurnaceSample.bmp b/resources/assets/dark/models/xpFurnaceSample.bmp new file mode 100644 index 0000000000000000000000000000000000000000..58f16f6ecab2d4966cd0585396ef4bb532b02cdd GIT binary patch literal 759862 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 literal 0 HcmV?d00001 diff --git a/resources/assets/dark/models/xpFurnaceSample.mtl b/resources/assets/dark/models/xpFurnaceSample.mtl new file mode 100644 index 00000000..b24e846a --- /dev/null +++ b/resources/assets/dark/models/xpFurnaceSample.mtl @@ -0,0 +1,11 @@ +# Blender MTL File: 'None' +# Material Count: 1 + +newmtl None +Ns 0.000000 +Ka 0.000000 0.000000 0.000000 +Kd 0.512000 0.512000 0.512000 +Ks 0.800000 0.800000 0.800000 +Ni 1.000000 +d 1.000000 +illum 2 diff --git a/resources/assets/dark/models/xpFurnaceSample.png b/resources/assets/dark/models/xpFurnaceSample.png new file mode 100644 index 0000000000000000000000000000000000000000..62652e6e5118345af6d4c927dcc59a7c306bc4a2 GIT binary patch literal 36993 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 ZbhBI*nAX)@Q7L%#wBxDL@2>pk{{RpU#Jd0h literal 0 HcmV?d00001 diff --git a/resources/assets/illus/lang/en_US.properties b/resources/assets/illus/lang/en_US.properties new file mode 100644 index 00000000..10dcc3fb --- /dev/null +++ b/resources/assets/illus/lang/en_US.properties @@ -0,0 +1,95 @@ +# IllustriousElements Language Properties +# @author DarkGuardsman + +# Blocks +tile.colorSand.Black.name = Black Sand +tile.colorSand.Red.name = Red Sand +tile.colorSand.Green.name = Green Sand +tile.colorSand.Brown.name = Brown Sand +tile.colorSand.Blue.name = Blue Sand +tile.colorSand.Purple.name = Purple Sand +tile.colorSand.Cyan.name = Cyan Sand +tile.colorSand.Silver.name = Silver Sand +tile.colorSand.Gray.name = Grey Sand +tile.colorSand.Pink.name = Pink Sand +tile.colorSand.Lime.name = Lime Sand +tile.colorSand.Yellow.name = Yellow Sand +tile.colorSand.LightBlue.name = Light Blue Sand +tile.colorSand.Magenta.name = Magenta Sand +tile.colorSand.Orange.name = Orange Sand +tile.colorSand.White.name = White Sand + +tile.GlowGlass.Black.name = Black Glowing Glass +tile.GlowGlass.Red.name = Red Glowing Glass +tile.GlowGlass.Green.name = Green Glowing Glass +tile.GlowGlass.Brown.name = Brown Glowing Glass +tile.GlowGlass.Blue.name = Blue Glowing Glass +tile.GlowGlass.Purple.name = Purple Glowing Glass +tile.GlowGlass.Cyan.name = Cyan Glowing Glass +tile.GlowGlass.Silver.name = Silver Glowing Glass +tile.GlowGlass.Gray.name = Grey Glowing Glass +tile.GlowGlass.Pink.name = Pink SGlowing Glass +tile.GlowGlass.Lime.name = Lime Glowing Glass +tile.GlowGlass.Yellow.name = Yellow Glowing Glass +tile.GlowGlass.LightBlue.name = Light Blue Glowing Glass +tile.GlowGlass.Magenta.name = Magenta Glowing Glass +tile.GlowGlass.Orange.name = Orange Glowing Glass +tile.GlowGlass.White.name = White Glowing Glass + +tile.StainedGlass.Black.name = Black Glass +tile.StainedGlass.Red.name = Red Glass +tile.StainedGlass.Green.name = Green Glass +tile.StainedGlass.Brown.name = Brown Glass +tile.StainedGlass.Blue.name = Blue Glass +tile.StainedGlass.Purple.name = Purple Glass +tile.StainedGlass.Cyan.name = Cyan Glass +tile.StainedGlass.Silver.name = Silver Glass +tile.StainedGlass.Gray.name = Grey Glass +tile.StainedGlass.Pink.name = Pink Glass +tile.StainedGlass.Lime.name = Lime GGlass +tile.StainedGlass.Yellow.name = Yellow Glass +tile.StainedGlass.LightBlue.name = Light Blue Glass +tile.StainedGlass.Magenta.name = Magenta Glass +tile.StainedGlass.Orange.name = Orange Glass +tile.StainedGlass.White.name = White Glass + +tile.basalt.name = Basalt +tile.basaltcobble.name = Basalt CobbleStone +tile.basaltbrick.name = Basalt Bricks +tile.basaltchiseled.name = Chiseled Basalt Bricks +tile.basaltmossy.name = Mossy Basalt Bricks +tile.basaltcracked.name = Cracked Basalt Bricks + +item.GlowRefinedSand.Black.name = Black Glowing Refined Sand +item.GlowRefinedSand.Red.name = Red Glowing Refined Sand +item.GlowRefinedSand.Green.name = Green Glowing Refined Sand +item.GlowRefinedSand.Brown.name = Brown Glowing Refined Sand +item.GlowRefinedSand.Blue.name = Blue Glowing Refined Sand +item.GlowRefinedSand.Purple.name = Purple Glowing Refined Sand +item.GlowRefinedSand.Cyan.name = Cyan Glowing Refined Sand +item.GlowRefinedSand.Silver.name = Silver Glowing Refined Sand +item.GlowRefinedSand.Gray.name = Grey Glowing Refined Sand +item.GlowRefinedSand.Pink.name = Pink Glowing Refined Sand +item.GlowRefinedSand.Lime.name = Lime Glowing Refined Sand +item.GlowRefinedSand.Yellow.name = Yellow Glowing Refined Sand +item.GlowRefinedSand.Light Blue.name = Light Blue Glowing Refined Sand +item.GlowRefinedSand.Magenta.name = Magenta Glowing Refined Sand +item.GlowRefinedSand.Orange.name = Orange Glowing Refined Sand +item.GlowRefinedSand.White.name = White Glowing Refined Sand + +item.RefinedSand.Black.name = Black Refined Sand +item.RefinedSand.Red.name = Red Refined Sand +item.RefinedSand.Green.name = Green Refined Sand +item.RefinedSand.Brown.name = Brown Refined Sand +item.RefinedSand.Blue.name = Blue Refined Sand +item.RefinedSand.Purple.name = Purple Refined Sand +item.RefinedSand.Cyan.name = Cyan Refined Sand +item.RefinedSand.Silver.name = Silver Refined Sand +item.RefinedSand.Gray.name = Grey Refined Sand +item.RefinedSand.Pink.name = Pink Refined Sand +item.RefinedSand.Lime.name = Lime Refined Sand +item.RefinedSand.Yellow.name = Yellow Refined Sand +item.RefinedSand.Light Blue.name = Light Blue Refined Sand +item.RefinedSand.Magenta.name = Magenta Refined Sand +item.RefinedSand.Orange.name = Orange Refined Sand +item.RefinedSand.White.name = White Refined Sand \ No newline at end of file diff --git a/resources/assets/illus/textures/blocks/GlowGlass.png b/resources/assets/illus/textures/blocks/GlowGlass.png new file mode 100644 index 0000000000000000000000000000000000000000..42ed544b5930993690de746a7ac5f9564b07b557 GIT binary patch literal 183 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzwj^(N7l!{JxM1({$v_d#0*}aI z1_r((Aj~*bn@<`j$X?><>&kwYg;j(}FZAhjC!mmvr;B4q#NoHs4Fwq#c$_aDC|#$q zZkP5dwge~VY5#ejtc?sUP1RA+H11EXNvk?71Jr^H1pY7G#lYWjpL4NP^nFo~jHj!g J%Q~loCIEcXF^>QM literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/StainedGlass.png b/resources/assets/illus/textures/blocks/StainedGlass.png new file mode 100644 index 0000000000000000000000000000000000000000..fa5eca9a5871903d61c2a6145ee67fab61d9be90 GIT binary patch literal 183 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzwj^(N7l!{JxM1({$v_d#0*}aI z1_r((Aj~*bn@<`j$X?><>&kwYg;j(}E!s}L04U_*>Eaj?aro_ZLqP@w9_Nb(O4n(u z+oipVEy2lo+JD|BYa>HTQ*~4{jr)^p(yC6&0JR_kf&WW)G4OZX=UglmeP0wL Jvd$@?2>>FvFq{AY literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basalt.png b/resources/assets/illus/textures/blocks/basalt.png new file mode 100644 index 0000000000000000000000000000000000000000..7a9d427be5f8d838afc22c934c97e6794868b0a6 GIT binary patch literal 835 zcmV-J1HAl+P)^1sKtj=&k?&0?BO1Q7DuOUfiu976@ zBuQ%Ber$`EB=y=PNj}>AaKWDHlB6J8r@_P9kKXLudfL8av3StrciQLL-L4=A#BFTx~;|-3^r%yL4bl!wtlhsrw(J*Z+Br}*j1N(mn3CZ z?8R;|8YhT=6Hf+YsMilJ9K zH?14Y*@l#0l6CKAK%STb>3KXa2;6Fn3}RNhA)ZoM6Iwy_BCEpsVNxoMN(qC}7^vee z47l}L!^1EnF3!B2swJiYmHUgx)yg0VD&n&F#g+>zQKq7*j+-!0@&V!pZs)J=1~rax z>jUZxT6-Fz@Cm|y##~E{`eNht!#u>D983LqKLblJH;^~d zW##qg=WX0@x*7hBYmMo0X}K_y5AytBch5hjoyU&LpUC{TA3!^tH#;!hrXzAww8W~0 zK<{TSj%cuK=0ay{uE_^u%H=laBV#|<<xAMa$gh^Gz7| z%~PK9OUW0$YPsW}Jq~;uPHoICIg;OA^UKMxzrdtr!M;D}pvpZM_z!T#K)(DtbDaPH N002ovPDHLkV1lLTiAVqd literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basaltbrick.png b/resources/assets/illus/textures/blocks/basaltbrick.png new file mode 100644 index 0000000000000000000000000000000000000000..39bfc56535e73b17a295e8be102267d1f4430b3a GIT binary patch literal 485 zcmV^1__W3o1Xvx0dh%1 zK~z}7%~m-QgFp-u*YE%e-ogLh!~hNVks?thDC>|+id{E5>}koeaa2{+0Ra2H0|4SU z#_RXCZ2*8IN$_gNap03hQFJ=5*0$~aJ$Sa1NauNWZdjHD0FY&wbA6g7=eorl-=q0w zfSwYm8j*2b5pi9$qx*QC>(r2c2Iwh0yFz5CTIZF4JkJ3D!!Vq(#6JViSUeCDiG|e4 zhHtZj?}Vd)s|}2$s@RIXYDpR87>)+4n$P)lU7fMjm?{H(-=FT|KGm9k2AZb%>jJ8o zG37{82KAhO28yC^dVXbfT>}8hvUJvX>u;#@{u!WJt-RMt#w;LG#@MP8<2ZhFz&`_u zQ2PSLjQhwCkyAU0Tp4Bl>;2(WLiJdg(Te#N%LhWOl)T64E5hjsEkvpXs$WMdYpnaj z(STK{RIRENt(=x-w5#Sfwc?)vt5OjmW31UhrdSWy?WSq!)QnYU!p#D!?^i@!*ZuVW b4=xLCGutT;8vkgZ00000NkvXXu0mjfv|QL~ literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basaltchiseled.png b/resources/assets/illus/textures/blocks/basaltchiseled.png new file mode 100644 index 0000000000000000000000000000000000000000..ff5b74ce55231d676b0eccfe6b48cfaf694100cc GIT binary patch literal 465 zcmV;?0WSWDP)^1|v(gQb_;+0bWT& zK~z}7&6m5fgD?<7#k-^D|NjtZ2(J`(PG-=s*GYx9N$?A=R+3FI48ti&$8qStD9cik zR8`fbeOVSsQrC5oq05ct$2I160Q5i*Q(PM|VZ z+w%xeL*J>N@4jP6)eWL!i200000NkvXX Hu0mjfkPgv? literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basaltcobble.png b/resources/assets/illus/textures/blocks/basaltcobble.png new file mode 100644 index 0000000000000000000000000000000000000000..b471297d2fd667baba2c8e68e07186036129bb5e GIT binary patch literal 617 zcmV-v0+#)WP)^1uJetiMRj&0rp8m zK~z}7&6Y>6!axj!ztD?7w1{%!!2kbUG=<(F@4y?xS_yE=`VwW?4LjrU*uii(i~(-9 z8}Bh1jR3gc?*K$m1iqO*Q z?{qo=dKkD^*&N)T)3>*#z00x5r0Nd>rfa~@8@t|_JSS+0NAP5roYhSb3 z1mJu=`@ujEhGG1^pd2rk%S2U6GnNT4CavUhPi)<87l8SEo_K-m8JJ8a@whUpnHbpZc2BAb1t+&@o-b_(xg1sR@)>`s!1{pd_wjgqJSeR+8jZwmY4_P`@TUrF z{n|*I15_P~cDwCpM%_>hsYlo@=??=!YBeDBiUIk6a%)2fRSnizEz|y0fsm=rt*XEE zhBVK&$TdUyqX9))y=tbbR;y0$uycS7P1l+)#8e!|o-rWrmv^fQ)ZLV`*TMhZ&}y}u zb*p-P&uZf}Ic3g(ax14&H?%ibRoE$5jwrtnGukg_)c0+V@y7@1^}3^Sq2f3NjqXH%>lK~&Xi&*a|ZqZKzS=ie(!uE00000NkvXXu0mjf DOGy)y literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basaltcracked.png b/resources/assets/illus/textures/blocks/basaltcracked.png new file mode 100644 index 0000000000000000000000000000000000000000..f9e24505dd6ddb92ddb415989fc4c212ef15c1fc GIT binary patch literal 561 zcmV-10?z%3P)^2O+$m0we$c0lrB@ zK~z}7&6mk;!axv2%f=vf1Q+-Q{{P3=cbp3kr7JecA<|4=MxLeBRlT}cuh+FCJsuB9 zQm50ABt4%`HSO>BdwrMTaHu9J%TkhbzuzTEMNvqS>beekN+p&Gq_^8GtOy8T0^xhR z-Aa=B{eCz{FH9gX@MbDG10VsZ3+EsjkH^8MFm}CO1HxXf7xY{%mvGLSo`KzN7kq`~ zAj47+v!2iApolC%U<4sXcz-+|Ghtvloi^qtGMP*ov!bf1kBVUc{k-#7NzZ^ssUyeY zHsoYSTmE~ja84|wX8?pSfaUlI5;r|8r9^_<4x7*D$3w&;Oq(rSV^2MGQWnn(Zu0!K+i zK~z}7%~xG-+b|3~ONtvK>58tyenkHNzZ!zv8RMIVZnQNzRQQ=76+#*@p)|p%g(FV*~(r z?97IkMgYLJe>Uqxwk(Sr6oPrrbIC;L%|E(<<3E5s8zwjJJ;&>S}L`yg@LMqXT}bL zK}6(ydiQ)s_%@_E)JCq%;z?>P$CWT}(R)+<*9|+%NGLb;-o~tPLG~xi4P&xCEAnv1A1?9385qa$|8{mZjCD57<`hfxvffqcc68dR z-ruU`@eI7YyZ`|Hp5JYPo`P1&caks1k>b>^m)^ zI+-_)MqT$_C!ghL9G1OcyBStC542u>nc+O|(9Q*Px`f8l+5fc*Zk+53eK2#u`ke4n zH*5Mob?nMuGN+yyQ}_3#W2#}+*^pg#Ju~4o<-ssPB{^q1~`94tRU9S)1n)QnP%{yiFLtm%)(jHC! gZ_m3TcI#r`9})F9hYq5EhX4Qo07*qoM6N<$g39(o=l}o! literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basaltslab.png b/resources/assets/illus/textures/blocks/basaltslab.png new file mode 100644 index 0000000000000000000000000000000000000000..ff5b74ce55231d676b0eccfe6b48cfaf694100cc GIT binary patch literal 465 zcmV;?0WSWDP)^1|v(gQb_;+0bWT& zK~z}7&6m5fgD?<7#k-^D|NjtZ2(J`(PG-=s*GYx9N$?A=R+3FI48ti&$8qStD9cik zR8`fbeOVSsQrC5oq05ct$2I160Q5i*Q(PM|VZ z+w%xeL*J>N@4jP6)eWL!i200000NkvXX Hu0mjfkPgv? literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/basaltslabside.png b/resources/assets/illus/textures/blocks/basaltslabside.png new file mode 100644 index 0000000000000000000000000000000000000000..7591227432333bc4ebf6303ce34cce114c93cb90 GIT binary patch literal 495 zcmV^2RlK+`(6M50eneB zK~z}7%~m_If#RIn^FDH1Nh{m)~pfda)JgJ)Z{{TRV$cM@tpEZa>_&qPI0%=jU0 zx0^G*TrL2B`~408NYixFIdxqF0Cw;khkrNPeZSNBe0IiVSvvDg(>Uv0*ZqCyaB$`y zk4In(48s5bh@!~ZFwgViJR^={06^dO0D%2|?|$HooXk$s)~jiZQDiFXIb`Bo!35LEvUKhYJsYh z^K>pN|4*mWCf{IIgx3!ckyQ&cpLLyxxlgl!S)$qHp8%0|aMG`Si~KJ-(`{ luXX--JZ@6^uYTa2ffpC=;hi^xGPVE!002ovPDHLkV1jSh;f(+Q literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/blocks.png b/resources/assets/illus/textures/blocks/blocks.png new file mode 100644 index 0000000000000000000000000000000000000000..15000c1ce35682eb65c540fd65248df5b93a5cc5 GIT binary patch literal 22244 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 literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/blocks/colorSand.png b/resources/assets/illus/textures/blocks/colorSand.png new file mode 100644 index 0000000000000000000000000000000000000000..8508fcbddbd52cc4cb81515831f1630301d018b1 GIT binary patch literal 651 zcmV;60(AX}P)^1TF_MOm+YO0vJg| zK~z}7&6mlJ0x=9ktD)H!aRL7S*AN1UrJ>pP%wgt@+SbfD$t7eZRkq9SY(Ad{N$PgH zsNm8rTk|f>lcjNuodN3H6bM&4;m^h!$X)uuE#UKS4 zW7cVY-0Ss>mxB}rV2pk=8kuo?25z^Tu`%PxWFkpguh&KgP(rVi{eIt^KOT>UQKAcG z@rC#dU<+P|E%9#FVThNr4=+ERPUfEJbZX{digVl-Uk5gujmZTdK*78o5C!y?%f+mN z6d&O}#y;xe`+!%#|MEQRG>{V&RKENdBuh*;nzvw~JF9HRs5gAtz_KnO$FnkXV$?shw~FP(b8XF2k<&jHxn z*N`;k$$C`5zS<^d#Al!^%TPs#ZTL=L9&h$FBaFZl40vTFihhy*jMJ%#@nT+x(!qp} zbE1MM@fz>HA3THUR7Cvn*$m`9J9>qKF_4yJ`R93j2^~r1+b{>2ui2O<%i;AX96ms0 l!+CrGeE>1@Fp-Q7d;#BEbwY3`cv}Df002ovPDHLkV1gZTCsP0b literal 0 HcmV?d00001 diff --git a/resources/assets/illus/textures/items/dust.png b/resources/assets/illus/textures/items/dust.png new file mode 100644 index 0000000000000000000000000000000000000000..6234a1a996ef3a87302fbf23b85a2926e1c7c23c GIT binary patch literal 290 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)n;;jf{EteRT%gc;PZ!4!i_>=}8S=Fl@UXB;sRZ2l z(D>y~xBJghk1b0)U82@;HF0x3^)!!F$=?$v{ZBg7HstGyt0tx!w~95SM$UNtbK^GM z&gGd*2deuG+a^t3cFpqP9A<@<36`1nk90~rUOai5%C~#W20Y9RwfC7*=BG%iEbL&| z@c#E%S5uegGD<~df7Nzsw5?dxZphY9D8m?W{i{e>?D1{6+ZE)uPe|J<= 0) + { + byte var8 = 32; + + if (!fallInstantly && par1World.checkChunksExist(par2 - var8, par3 - var8, par4 - var8, par2 + var8, par3 + var8, par4 + var8)) + { + if (!par1World.isRemote) + { + return; + } + } + else + { + par1World.setBlock(par2, par3, par4, 0); + + while (canFallBelow(par1World, par2, par3 - 1, par4) && par3 > 0) + { + --par3; + } + + if (par3 > 0) + { + par1World.setBlock(par2, par3, par4, this.blockID, meta, 3); + } + } + } + } + + public int tickRate() + { + return 3; + } + + public static boolean canFallBelow(World par0World, int par1, int par2, int par3) + { + int var4 = par0World.getBlockId(par1, par2, par3); + + if (var4 == 0) + { + return true; + } + else if (var4 == Block.fire.blockID) + { + return true; + } + else + { + Material var5 = Block.blocksList[var4].blockMaterial; + return var5 == Material.water ? true : var5 == Material.lava; + } + } + +} diff --git a/src/dark/illus/blocks/colored/BlockColored.java b/src/dark/illus/blocks/colored/BlockColored.java new file mode 100644 index 00000000..66c35f38 --- /dev/null +++ b/src/dark/illus/blocks/colored/BlockColored.java @@ -0,0 +1,96 @@ +package dark.illus.blocks.colored; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Icon; +import net.minecraft.world.IBlockAccess; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import dark.illus.IllustriousElements; + +public class BlockColored extends Block +{ + @SideOnly(Side.CLIENT) + private Icon[] icons; + private Icon singleIcon; + + /* IS THIS BLOCK ABLE TO BE COLORED */ + boolean colorized = true; + + public BlockColored(String name, int id, Material par2Material) + { + super(id, par2Material); + this.setUnlocalizedName(name); + } + + @SideOnly(Side.CLIENT) + @Override + public Icon getIcon(int side, int meta) + { + if (colorized) + { + return this.singleIcon; + } + return this.icons[~meta & 15]; + } + + @Override + public int damageDropped(int meta) + { + return meta; + } + + @SideOnly(Side.CLIENT) + @Override + public void getSubBlocks(int par1, CreativeTabs tab, List contentList) + { + for (int j = 0; j < 16; ++j) + { + contentList.add(new ItemStack(par1, 1, j)); + } + } + + @SideOnly(Side.CLIENT) + @Override + public void registerIcons(IconRegister iconReg) + { + if (colorized) + { + this.singleIcon = iconReg.registerIcon(IllustriousElements.TEXTURE_NAME_PREFIX + this.getUnlocalizedName().replace("tile.", "")); + } + else + { + this.icons = new Icon[16]; + + for (int i = 0; i < this.icons.length; ++i) + { + this.icons[i] = iconReg.registerIcon(IllustriousElements.TEXTURE_NAME_PREFIX + IllustriousElements.dyeColorNames[~i & 15] + this.getUnlocalizedName().replace("tile.", "")); + } + } + } + + @SideOnly(Side.CLIENT) + @Override + public int colorMultiplier(IBlockAccess world, int x, int y, int z) + { + return this.getRenderColor(world.getBlockMetadata(x, y, z)); + } + + @SideOnly(Side.CLIENT) + @Override + public int getRenderColor(int meta) + { + if (this.colorized) + { + + return IllustriousElements.dyeColors[meta & 15].getRGB(); + } + return super.getRenderColor(meta); + } + +} diff --git a/src/dark/illus/blocks/colored/ItemBlockBasalt.java b/src/dark/illus/blocks/colored/ItemBlockBasalt.java new file mode 100644 index 00000000..7a079188 --- /dev/null +++ b/src/dark/illus/blocks/colored/ItemBlockBasalt.java @@ -0,0 +1,41 @@ +package dark.illus.blocks.colored; + +import java.util.List; + +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; + +public class ItemBlockBasalt extends ItemBlock +{ + public ItemBlockBasalt(int par1) + { + super(par1); + this.setMaxDamage(0); + this.setHasSubtypes(true); + } + + @Override + public String getUnlocalizedName(ItemStack itemstack) + { + int meta = itemstack.getItemDamage(); + + return "tile." + BlockBasalt.blockNames[meta]; + } + + @Override + public int getMetadata(int par1) + { + return par1; + } + + @Override + public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List) + { + for (int i = 0; i < BlockBasalt.blockNames.length; i++) + { + par3List.add(new ItemStack(this, 1, i)); + } + + } +} diff --git a/src/dark/illus/blocks/colored/ItemBlockColored.java b/src/dark/illus/blocks/colored/ItemBlockColored.java new file mode 100644 index 00000000..44bb5b12 --- /dev/null +++ b/src/dark/illus/blocks/colored/ItemBlockColored.java @@ -0,0 +1,34 @@ +package dark.illus.blocks.colored; + +import net.minecraft.block.Block; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import dark.illus.IllustriousElements; + +public class ItemBlockColored extends ItemBlock +{ + public ItemBlockColored(int par1) + { + super(par1); + this.setMaxDamage(0); + this.setHasSubtypes(true); + } + + @Override + public int getMetadata(int par1) + { + return par1; + } + + @Override + public String getUnlocalizedName(ItemStack par1ItemStack) + { + return Block.blocksList[this.getBlockID()].getUnlocalizedName() + "." + IllustriousElements.dyeColorNames[par1ItemStack.getItemDamage()]; + } + + @Override + public String getUnlocalizedName() + { + return Block.blocksList[this.getBlockID()].getUnlocalizedName(); + } +} diff --git a/src/dark/illus/items/ItemColored.java b/src/dark/illus/items/ItemColored.java new file mode 100644 index 00000000..1e4afb01 --- /dev/null +++ b/src/dark/illus/items/ItemColored.java @@ -0,0 +1,75 @@ +package dark.illus.items; + +import java.util.List; + +import net.minecraft.client.renderer.texture.IconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.Icon; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import dark.illus.IllustriousElements; + +public class ItemColored extends Item +{ + private Icon theIcon; + + @SideOnly(Side.CLIENT) + public ItemColored(int par1, String name) + { + super(par1); + this.setMaxDamage(0); + this.setHasSubtypes(true); + this.setCreativeTab(CreativeTabs.tabMaterials); + this.setUnlocalizedName(name); + } + + @Override + @SideOnly(Side.CLIENT) + public int getColorFromItemStack(ItemStack par1ItemStack, int par2) + { + return IllustriousElements.dyeColors[par1ItemStack.getItemDamage() % 16].getRGB(); + } + + @Override + @SideOnly(Side.CLIENT) + public boolean requiresMultipleRenderPasses() + { + return true; + } + + /* + * @SideOnly(Side.CLIENT) public Icon getIconFromDamageForRenderPass(int par1, int par2) { + * return par2 > 0 ? this.theIcon : super.getIconFromDamageForRenderPass(par1, par2); } + */ + + @SideOnly(Side.CLIENT) + @Override + public void registerIcons(IconRegister par1IconRegister) + { + this.itemIcon = par1IconRegister.registerIcon(IllustriousElements.TEXTURE_NAME_PREFIX + "dust"); + this.theIcon = par1IconRegister.registerIcon("glowingPowder_overlay"); + } + + @Override + public int getMetadata(int par1) + { + return par1; + } + + @Override + public final String getUnlocalizedName(ItemStack par1ItemStack) + { + return this.getUnlocalizedName() + "." + IllustriousElements.dyeColorNames[par1ItemStack.getItemDamage()]; + } + + @Override + public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List) + { + for (int i = 0; i < IllustriousElements.dyeColorNames.length; i++) + { + par3List.add(new ItemStack(par1, 1, i)); + } + } +}