From b60b769520e8e74c2f65696e0db16025fcbf2748 Mon Sep 17 00:00:00 2001 From: HbmMods Date: Tue, 30 Jul 2019 19:16:22 +0200 Subject: [PATCH] doors! --- assets/hbm/lang/de_DE.lang | 4 + assets/hbm/lang/en_US.lang | 4 + assets/hbm/sounds.json | 2 + assets/hbm/sounds/block/door_close_1.ogg | Bin 0 -> 7976 bytes assets/hbm/sounds/block/door_close_2.ogg | Bin 0 -> 7423 bytes assets/hbm/sounds/block/door_open_1.ogg | Bin 0 -> 6408 bytes assets/hbm/sounds/block/door_open_2.ogg | Bin 0 -> 5932 bytes assets/hbm/textures/blocks/brick_asbestos.png | Bin 0 -> 726 bytes .../hbm/textures/blocks/door_bunker_lower.png | Bin 0 -> 702 bytes .../hbm/textures/blocks/door_bunker_upper.png | Bin 0 -> 816 bytes .../hbm/textures/blocks/door_metal_lower.png | Bin 0 -> 693 bytes .../hbm/textures/blocks/door_metal_upper.png | Bin 0 -> 688 bytes .../hbm/textures/blocks/door_office_lower.png | Bin 0 -> 730 bytes .../hbm/textures/blocks/door_office_upper.png | Bin 0 -> 676 bytes assets/hbm/textures/blocks/pink_log.png | Bin 0 -> 518 bytes assets/hbm/textures/blocks/pink_planks.png | Bin 0 -> 341 bytes assets/hbm/textures/blocks/tile_lab | Bin 0 -> 491 bytes .../hbm/textures/blocks/tile_lab_broken.png | Bin 0 -> 686 bytes assets/hbm/textures/items/door_bunker.png | Bin 0 -> 1459 bytes assets/hbm/textures/items/door_metal.png | Bin 0 -> 1376 bytes assets/hbm/textures/items/door_office.png | Bin 0 -> 1366 bytes .../textures/items/wire_advanced_alloy.png | Bin 234 -> 372 bytes assets/hbm/textures/items/wire_aluminium.png | Bin 228 -> 397 bytes assets/hbm/textures/items/wire_copper.png | Bin 233 -> 387 bytes assets/hbm/textures/items/wire_gold.png | Bin 230 -> 332 bytes .../items/wire_magnetized_tungsten.png | Bin 245 -> 410 bytes assets/hbm/textures/items/wire_red_copper.png | Bin 250 -> 414 bytes .../hbm/textures/items/wire_schrabidium.png | Bin 228 -> 377 bytes assets/hbm/textures/items/wire_tungsten.png | Bin 228 -> 368 bytes .../hbm/textures/items/wiring_red_copper.png | Bin 273 -> 414 bytes com/hbm/blocks/ModBlocks.java | 20 +- com/hbm/blocks/generic/BlockModDoor.java | 398 ++++++++++++++++++ com/hbm/items/ModItems.java | 13 + com/hbm/items/tool/ItemModDoor.java | 114 +++++ com/hbm/lib/Library.java | 8 +- com/hbm/world/Radio01.java | 59 +-- 36 files changed, 588 insertions(+), 34 deletions(-) create mode 100644 assets/hbm/sounds/block/door_close_1.ogg create mode 100644 assets/hbm/sounds/block/door_close_2.ogg create mode 100644 assets/hbm/sounds/block/door_open_1.ogg create mode 100644 assets/hbm/sounds/block/door_open_2.ogg create mode 100644 assets/hbm/textures/blocks/brick_asbestos.png create mode 100644 assets/hbm/textures/blocks/door_bunker_lower.png create mode 100644 assets/hbm/textures/blocks/door_bunker_upper.png create mode 100644 assets/hbm/textures/blocks/door_metal_lower.png create mode 100644 assets/hbm/textures/blocks/door_metal_upper.png create mode 100644 assets/hbm/textures/blocks/door_office_lower.png create mode 100644 assets/hbm/textures/blocks/door_office_upper.png create mode 100644 assets/hbm/textures/blocks/pink_log.png create mode 100644 assets/hbm/textures/blocks/pink_planks.png create mode 100644 assets/hbm/textures/blocks/tile_lab create mode 100644 assets/hbm/textures/blocks/tile_lab_broken.png create mode 100644 assets/hbm/textures/items/door_bunker.png create mode 100644 assets/hbm/textures/items/door_metal.png create mode 100644 assets/hbm/textures/items/door_office.png create mode 100644 com/hbm/blocks/generic/BlockModDoor.java create mode 100644 com/hbm/items/tool/ItemModDoor.java diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index d43af7e7f..79a59ce78 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -857,6 +857,10 @@ tile.seal_hatch.name=Siloluke (Deckel) tile.vault_door.name=Vault-Tec Sprengtür tile.blast_door.name=Abschluss-Sprengtür +item.door_metal.name=Metalltür +item.door_office.name=Bürotür +item.door_bunker.name=Bunkertür + item.nugget_uranium.name=Urannugget item.nugget_plutonium.name=Plutoniumnugget item.nugget_neptunium.name=Neptuniumnugget diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index d49c40eb1..3618f415d 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -857,6 +857,10 @@ tile.seal_hatch.name=Silo Hatch tile.vault_door.name=Vault-Tec Blast Door tile.blast_door.name=Sliding Blast Door +item.door_metal.name=Metal Door +item.door_office.name=Office Door +item.door_bunker.name=Bunker Door + item.nugget_uranium.name=Uranium Nugget item.nugget_plutonium.name=Plutonium Nugget item.nugget_neptunium.name=Neptunium Nugget diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index 9908d4659..42f36b35b 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -30,6 +30,8 @@ "block.pipePlaced": {"category": "block", "sounds": [{"name": "block/pipePlaced", "stream": false}]}, "block.missileAssembly": {"category": "block", "sounds": [{"name": "block/missileAssembly", "stream": false}]}, "block.missileAssembly2": {"category": "block", "sounds": [{"name": "block/missileAssembly2", "stream": false}]}, + "block.openDoor": {"category": "block", "sounds": ["block/door_open_1", "block/door_open_2"]}, + "block.closeDoor": {"category": "block", "sounds": ["block/door_close_1", "block/door_close_2"]}, "item.techBleep": {"category": "player", "sounds": [{"name": "tool/techBleep", "stream": false}]}, "item.techBoop": {"category": "player", "sounds": [{"name": "tool/techBoop", "stream": false}]}, diff --git a/assets/hbm/sounds/block/door_close_1.ogg b/assets/hbm/sounds/block/door_close_1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..52303ba3a121eeacc4d2f3f602c8aa6e44582ebd GIT binary patch literal 7976 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⪤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 Hc*6b literal 0 HcmV?d00001 diff --git a/assets/hbm/sounds/block/door_open_2.ogg b/assets/hbm/sounds/block/door_open_2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..793cf0e1b1598ab527e71351de0ee52e0279152c GIT binary patch literal 5932 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 kxxBn&x4XvsmcHNfKTh*?2?B( literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/door_bunker_upper.png b/assets/hbm/textures/blocks/door_bunker_upper.png new file mode 100644 index 0000000000000000000000000000000000000000..53058dbe032dc622de5712b686cec2284223c2e3 GIT binary patch literal 816 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 literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/door_office_upper.png b/assets/hbm/textures/blocks/door_office_upper.png new file mode 100644 index 0000000000000000000000000000000000000000..f55a9d12f5176ed6486c51c8c5e983634ed66fa9 GIT binary patch literal 676 zcmV;V0$crwP)Sip*0O0{~g_kd(CUFzpWxd2!Y-^%d%jtWf%r( zt<+jE#xTz_s>-%)hzRSt5@W$(6CLO{f#Dp+f%wc={6lu|hy4h+M9 za}Hw+&IzD=^W6`$)*hacQsVPZ-Uq-rhco7Cn&%s8t+dvd=b8KadsG#G-+%kr@SHc_ zdPhSTK^0>Rw$@4rBjY$AV(DGUIdgaS651Q36#mUTO?dBVt>HfV@I6Yo{`N2oII*11 zE2^E85+Q^~$KyC+4T#ulf**hSm2n&}#&9~F*zI;q)5PuVo|GcSm`8$ID}M0AxFdvs z{pAl&DFqR^_Uau@1n=BKBQLUT8wSXi3pr=(@p!~qd$pHBzFY_)pxW8*Z~h}tRaBMR z+dTkQL};xsO^L7zI47J=N1XEyOZ-1dDX1#WTKiC+_ns+5TC4O{AJ+LIF-H908Ha)1 zJ5E)JF(OuI{W_Luni#yN^@fN%5-iI?-0k@D>C#(uxY8X=`fE}4H0zWwS8YOR!75Nj!=(0k`_I8bZF ze)_??#JD40E*Jx?Rn}!eoFF0`j|XzTP;$l?OG=4t+ej&)s{9R;f;fh&MEi;W0000< KMNUMnLSTXro;0rj literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/pink_log.png b/assets/hbm/textures/blocks/pink_log.png new file mode 100644 index 0000000000000000000000000000000000000000..96c7b952864c17a53d9482c8471609ed4a3a0bc1 GIT binary patch literal 518 zcmV+h0{Q)kP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02p*dSaefwW^{L9 za%BK;VQFr3E^cLXAT%y9E;jv63FrU-0e4A6K~y+TU6RL6!$1^8{UNMb5ER?7aft!( z0Z6nU%7zUsh_c~ZDWXOW#x_C(5=dbIXL#0Nkgi8}=FNTOdW?frx7l!}%`sN6w`{`& zY>7gSHv;(Kns>DB8?bk`-F0KuGT!W#J{*MUFi0WW3sr*zeJ@ESFVpH3c$hd-YvtnE zxt9|`ZryzN3E7JZ?EAsvD9p+j`09l8qbNtiHL@G?GvmFfHWi3Tbyfi>)X9%b1gZie zm=;L&C;L`9k$YsJ$v*-Dj3vWBhV|^Tp6kRE5u#e+V;c5fa~)AiDS#|9uU~5|tvubD zEr#xRv2IBm1o|F?%G4=bVmO(B>FE_BpsPX<X#o}Rk(Vdi7wb-kK;hEKW{8y63ui32ym<{y1kHx?4H3A#jAF6VmjD0&07*qo IM6N<$f*}glP5=M^ literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/pink_planks.png b/assets/hbm/textures/blocks/pink_planks.png new file mode 100644 index 0000000000000000000000000000000000000000..e4aac5725a312da31fec28b5a5a3b1d18760920b GIT binary patch literal 341 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sBugD~Uq{1qucL5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt3( zJ+r@loG*ZCj(NH`hFJLLPTa_Q$U%T*Jx7+plJF>n1q|sEte0>*sW_z{*mEpu-tkK> zO80NC-#+biZH3IYow|0NVsA9xI^GlL% z{A1%5^?6qkn!8G4XOmpye#R|cw|KfVQa9OUKjPbUs=Qgj@P^gIOSuy_#Xjmj#Ig30 z8PDWP&0Ch(8m#!)wqxP-KC>pl<_=Os+!2qYHY}Kz0`ThzeZPkxoiI!w(pX< iqGa`TW#6`Ev+S&G?ig`~nN|RO#Ng@b=d#Wzp$Py4e1sPO literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/tile_lab b/assets/hbm/textures/blocks/tile_lab new file mode 100644 index 0000000000000000000000000000000000000000..8c715630a24ef1d476f114f875453ab34b07b177 GIT binary patch literal 491 zcmVN2bZe?^J zG%hhNHvLWs=l}o#X-PyuR5(vfl8a8lKoCXu|Nlktfr$cb7f_=V3I&Av1X`&27oPDh z4asD3JCA#3X6yF5)uCKtyRXIf{&n+_SKF6tln^O5%eq`sAOmNqcO+($0SKRG!|AvW zjyf&k!jn-lpWZ`(CA~`r9|;*fM-#{egQ?ngtXovxHg5&PR&*4q< zQYMbK1`uhq8XF{S5|lDAfQXN-WMJC?W8%6hI6OB1qlUM4sEY09oC8n;VB2t3DWa|; zLZ)ZZZkjWUq~+AZ)#(9~fF8ga+D&g78n~KWHucSxOi#RFQ4d+p?d(O5$I*k}IRgqJ zCPfeyFmcCPlqvy$Mmy*i1WQ5L-rafFLEo6JZcA51`V?99zYavCOo39;Y{U6EGeFNm hoQe4)D+5QJ)*np_Ur!Izq!$1H002ovPDHLkV1mF5$0q;) literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/blocks/tile_lab_broken.png b/assets/hbm/textures/blocks/tile_lab_broken.png new file mode 100644 index 0000000000000000000000000000000000000000..caf7892019bc4981de7971bc753a13e5ffd77176 GIT binary patch literal 686 zcmV;f0#W^mP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02p*dSaefwW^{L9 za%BK;VQFr3E^cLXAT%y9E;jv63FrU-0v}04K~y+TJ(77(8etH|`JlZN|FM=MDOCcf zc!jjFMG=7rgcXzubi2~!P!N_wYAcGOwzlb^qNVA#=x_59lgVago_Xe(nRg9$H(&qs zF0q^6=YQ|MU;XTM+BHIxdDP>Xn_FFhx8ESZgfKHR6$q@vVv%@4lB6iK)m5LxYSwo+KW&L>m{dcCAW7k> zwks>CcDt1?W)BYPg@R(UJvaR8|2R9@XBY^2HEQizvz8Bq{OQcb`bKoWrB$_^Mx(s7 z6(66l>4f{nI56?6DS(u(b!rdDW%eh^>}!BdGX<+2L>vD8R^~{T29-`8jV9E zBg13QMy*z}-9B!yn2g5ZCqs|*9mG>Ooc0CJtZ(Iwdv?-feoCfyb-|q1zs|TMeR0@! za8_a}$~&?wCvj{qto`1lnDF>e<10>rvaTR@pjydhR8>~hcT;W$?MZTFb^{V884xbI zAJKvauoeyqDe^*DRD(k1+y;IjAuU8or5ps#fC71b7Ltf?dVKQwl~{v7aHvMDR{21Z zQhXo?0^Qqvua5*EVvJ5ShQJu@PZelFhk1Yo3czf``FR8!@hs$-m=IJLex;=R2k0*? U)OiyUsQ>@~07*qoM6N<$f@#z;fB*mh literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/door_bunker.png b/assets/hbm/textures/items/door_bunker.png new file mode 100644 index 0000000000000000000000000000000000000000..aa0a31b9d1b6e5425a55cdf978d3379778cffa7f GIT binary patch literal 1459 zcmV;k1x)&hP)Y%ZprT8ODF#?OZD9)0gTFv^_%`2n2N#)P*2O7;xo(AgDWW zVU{*HS!a=+ESkhcmW{X9DFGCiG4+OBj}S9jGpbyd=&1iIrQi^9E zJ;NA-cfPB9H$VuH)zv=h>sJUNFq_Q)N1kUm=g6`QYc<4({TNY=e!!R_NA{QguppRRaNA9j+Bz>;2p-NXWY2)O`bkIp>FEM0hAPk;L%z$ z_~;NH1BG)q=g9M%BuP+8A*EzI8WKVvgg}geBuN$rSYBCWI2=+{6|dj=23l)`5QGq@ zs*0;uuQHp>5JIr^l{fI-W3462do=YcP~dgm<$bH!*jVH0`7@MKSm(%=MzE* z^w-uvYX1Gt_u1b59@FWBUhhgLfb4qUum3n?R@cNBu{QGKhx_7RrRL2?`{FoV=dGXp zLQIR-c=IPe700rmYAjMpmY0`155E+^%FS<)r72C*5QF2jLs=FXiv;=zLl@$TKbVsCFR?(Xi2 z+qZAW-Q8Vr|Ni}0&uYB)2q7+UJbY$K0et7X-;YN}M_k)jqIY`0`J~2&K$;n{Jfo>f zgw7FooUPH?@W!`)z%PIGJC2W!_`~miyI2weWND7~p5-rmjdf$@p`(;yGMNBijG?M3 zilU&dYkIvNNs@Ke?rcH7->0stmR7gCLbR8v>zXu80r1|FrYU7vBBi8h8bWZL0G$d9 zheJY)c<+fZwi)j|N-2ynSlhb3K75a(!7(~Iwzs!gUS8(;^Jkp^oeC61fzbx%++2EV zE%imnBuUa5Rd_Pfs#FvOCnqOlS#NQG*WweTl=ON%>bk~S3w+#;m%p7|+2q>lI>ELR zFu%m%mjd|P2S+&H_A<|N>bfR`fDnQ-P3It6TU$f{Sude1OJekw@<1nmUH&rO+j-xM zqL?2VLZE3Hy!UwTS?{k=&TKm=y@S|Uz8fG$NK7_2Tv?X5i)lC>k8#e;RXG_BAw;y+ z^w&0U?iDD|?_UD}P168v@3X80GR82SPLZ-LQxvP1M4^LOlnqi$I#`uYKE0Sdy)9DngHA#~E zPfAKDc`+CuWaq5wR^apc?`WlHnr3dcG)?i|&sAxf25as7tF>lx^K(F09N@i!=ctQ) zKq*C;Ue=cNjeR6Lnpql|k!n6LtcuuC5Ye ztL1b&B5L)i`@ncIrMmD+YryUvbiM^;Sz?`Kd;2EWuiu_K{*%4;-jnA!&5auXR8@tw zADea|0Ph^VUXQ_G!r{}mDT*b^X~|l@&*|wYP2I3@Z3BR_vols!RxYMt#F%t(fYE47 z@PWgphbW~O3eH9yCEx%6 N002ovPDHLkV1mim#ZCYK literal 0 HcmV?d00001 diff --git a/assets/hbm/textures/items/door_metal.png b/assets/hbm/textures/items/door_metal.png new file mode 100644 index 0000000000000000000000000000000000000000..4edc523b790082fa7bfcc6e877db8984e6cfbb02 GIT binary patch literal 1376 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 TgHMy;00000NkvXXu0mjf?OT&- delta 182 zcmeyu^ontUP5nUz2EK!gJ0@noWnf^CC~=J_3C>R|DNig)Whh9@%q!8$OD$0_(KFDq z%rUO>1FFgJba4!^@LziFAa8?$2uq;UM)v3pT(>tc^Oq$j8HR0PVr$yPt}Y`tf%A`m zO6kUl8=&ySX({upPC4c+y_f9nU;6oUj#DX5o`e494SVl+@pqqZ_@ujt??s|A6h5x! Z5*I(b=f#eW+aQNAc)I$ztaD0e0ssq$M~46a diff --git a/assets/hbm/textures/items/wire_aluminium.png b/assets/hbm/textures/items/wire_aluminium.png index 84d0656678371e4dc8053f1864bdf171b41c7da3..e4c210ec1c941721a6c03056aa321efbe0c709f6 100644 GIT binary patch delta 346 zcmV-g0j2)r0gVHYJb%Cd01m(bYSxJf0000ObVXQnQ*UN;cVTj60B~VxZgehgWpp4k zE-@}P{Z0w!0003CNkl-Y1+*& zhk(k=$Stz8AJYB>);Z5JP18hO*U`3ZGzSx|)lxUMTiv@DDEeHT;VDs^28KUR?W sO7a!Bf?*hx=Q$Nc!LE06{0*A+3ra7wsa3iZB>(^b07*qoM6N<$g4SS>q5uE@ delta 176 zcmV;h08jso1LOgaJb%If01m3d(tC?8<0000n1JmdXRO|@EiJZ8- z1H*6zNV7XIq+?jHYeIGvvN)W9E`f|ea)JE(|4U>9{+G!KqeLZK5h&pxOW?!EmZ3^= zKvEpcxhQf#3`rB$LJCk61t1Ix^&~Ea|8Z=Pd;rq~qHTd1Q+aWO0X7^iC9nMqRs0000e#tn&rv4BE1K%M=Q4OyK1_lO+64!{5;QX|b^2DN4hJwV*yb`^<)Di^~Jp(1X_%RhN?-dM-b6mu{9rjh=+Q`_shFk{9;5#xPgG)Smb;|2Aiz X*Fv+{t;SwJI~hD({an^LB{Ts5!B|Pv diff --git a/assets/hbm/textures/items/wire_gold.png b/assets/hbm/textures/items/wire_gold.png index a95231266b9973b02d4abf6a29a2c2e2655ba605..8adcdb5e0f7f1ce513e69012ca11cf441133fc48 100644 GIT binary patch delta 281 zcmV+!0p|YZ0n7rBJb%Fe01m+cxRGn^0000ObVXQnQ*UN;cVTj60B~VxZgehgWpp4k zE-@}P{Z0w!0002WNklulXjH;LP%1#vVJo~I=~T-KhHD0E*rWXCR+AW^?#ccS4cUK+>dkEjf=u0 zuSDnoq2w&=6eL3Kc+yulb3Xmj_h>z>eDXhULoHr&P%nd{izN fX&mtzQu+YKLlVzq{5(~?00000NkvXXu0mjfplfzG delta 178 zcmX@Z^o((WP5mJT2EId#q8eTe3=9ksC9V-A!TD(=<%vb93~dIoxC ze|nPd1J$H>x;Tbd_%A*8kh4KS#P#8J=hr4Jm$$fRx2?WYF)^v4t|ah>3*RpT72Sg` z4nSeWwjifv0h$AlJb%Cd01m(bYSxJf0000ObVXQnQ*UN;cVTj60B~VxZgehgWpp4k zE-@}P{Z0w!0003PNklniB1sa&hl9O6tMktY@eB5!(p=*rxF7%k002ovPDHLk FV1hz6qCo%v delta 193 zcmV;y06zbk1N8xrJb%Fe01m+cxRGn^0000PbVXQnQ*UN;cVTj60B~VxZgehgWpp4k zE-)@JFs%v-zyJUMa!Eu%R5(wijJXZKAP@v8!4UyDbaVVvPMg`#J~#*4l2mU>~o+X@-c)fcnA}M$ijnoAa23JkQjm= zb`W&Q!iA?Os(NO+`}K?((zUCUGv5P_!k;U92daDH8AZJfAO|YxHhvbC?rRz=WE1q9N zlT@4)5Ig#yHGY<;YIZ;NQRAn@LO3)*tGnZW@x;ltJyCT{jrbejPQQ}Ota`QoYXATM M07*qoM6N<$f{4PRhX4Qo delta 199 zcmbQo{EKmd3KwH>kh>GZx^prwCn`$UA7)_SJIr`Ie?^Z(wA|(CO#SILgTe~DWM4fIiXEz diff --git a/assets/hbm/textures/items/wire_schrabidium.png b/assets/hbm/textures/items/wire_schrabidium.png index 69c0f0603791194ed8a2ec625a32c065936f45f9..44def6c53a30ca9e9b9ada14974f44c960edfa5c 100644 GIT binary patch delta 326 zcmV-M0lEI<0r>)uJb%Fe01m+cxRGn^0000ObVXQnQ*UN;cVTj60B~VxZgehgWpp4k zE-@}P{Z0w!0002@NklBC2wKQsR~dIoxC ze|nPd1JxvXx;Tbd_%A(ok+(sC$Mxd5CuV9n2V8g#=ZG%KIQsn|uYCIi>01f!_PMw@ zLE$5tqB5POW>R7~Z#TvNs!iK!=k-&sqj~-DKzU7>XRME-kL*oo?P-C+|2t*2=qOxvnc1}fEcZB_$e zQ53qH*g*9>&+pqkflh=^7$??sy(Pe%Dj*C4JUhCBCMrfbP8`P(lCXg^O@p8i)`}Gd zuZ}nHO^*OR?E4;6#@a-{3*$Ia-}j_6;)7B*0+K*pmSun-;R9O!L=r>1h4=zhARLIS z=Zg{erM~@f05$;OAR^Rg6`jxa6&8U8`rw$yc~dIox? zsjWt-Ks8C8E{-7<{!7nY)u-T>bI`aGO2$$E1dholQjjzd+rCFVYP;-HTXCEE!#%d^}My^ SiqC-7F?hQAxvXzLmQ+#eWd^2&XxBa2W8Xmh-{o zz~MVT_i~lP8UX(~vyD=|)_hqWSNdW|g0P?qJk!Nax05BD52 zCeQj5PhNq;G%oS}6!*w?_*2Yb8kgR$PVv2|-y{D8c{VW&W7>ej$FwYKutZK()p;>z g?Cb8ILmNf;1z%D!_@7qsZU6uP07*qoM6N<$g0K#-rT_o{ delta 244 zcmVK!-%7eF9Uqy|k>y}C(7lc_)#Mbh*KN)YhmWafKscLx4W#+cF= zQ}(Sp^(GMkKvjw3*m+e47__Ab(}>$@$YnxV?!1O;Rjq)cfNk7bisIF14e*Q^rV+u` zBS|uXt;g(qM?_FnR231S`WKA^eO%u@A-DEBz%xl7Q0p4QG-A2&I32Fc=VN^9^3fXm ux_1Kh(*?eDS!Xz-W9GE=bn4Sn{=FX0Y+EohKWJM30000= p_149742_1_.getHeight() - 1 ? false + : World.doesBlockHaveSolidTopSurface(p_149742_1_, p_149742_2_, p_149742_3_ - 1, p_149742_4_) + && super.canPlaceBlockAt(p_149742_1_, p_149742_2_, p_149742_3_, p_149742_4_) + && super.canPlaceBlockAt(p_149742_1_, p_149742_2_, p_149742_3_ + 1, p_149742_4_); + } + + /** + * Returns the mobility information of the block, 0 = free, 1 = can't push + * but can move over, 2 = total immobility and stop pistons + */ + public int getMobilityFlag() { + return 1; + } + + public int func_150012_g(IBlockAccess p_150012_1_, int p_150012_2_, int p_150012_3_, int p_150012_4_) { + int l = p_150012_1_.getBlockMetadata(p_150012_2_, p_150012_3_, p_150012_4_); + boolean flag = (l & 8) != 0; + int i1; + int j1; + + if (flag) { + i1 = p_150012_1_.getBlockMetadata(p_150012_2_, p_150012_3_ - 1, p_150012_4_); + j1 = l; + } else { + i1 = l; + j1 = p_150012_1_.getBlockMetadata(p_150012_2_, p_150012_3_ + 1, p_150012_4_); + } + + boolean flag1 = (j1 & 1) != 0; + return i1 & 7 | (flag ? 8 : 0) | (flag1 ? 16 : 0); + } + + /** + * Gets an item for the block being called on. Args: world, x, y, z + */ + @SideOnly(Side.CLIENT) + public Item getItem(World p_149694_1_, int p_149694_2_, int p_149694_3_, int p_149694_4_) { + if (this == ModBlocks.door_metal) + return ModItems.door_metal; + else if (this == ModBlocks.door_office) + return ModItems.door_office; + else + return ModItems.door_bunker; + } + + /** + * Called when the block is attempted to be harvested + */ + public void onBlockHarvested(World p_149681_1_, int p_149681_2_, int p_149681_3_, int p_149681_4_, int p_149681_5_, EntityPlayer p_149681_6_) { + if (p_149681_6_.capabilities.isCreativeMode && (p_149681_5_ & 8) != 0 + && p_149681_1_.getBlock(p_149681_2_, p_149681_3_ - 1, p_149681_4_) == this) { + p_149681_1_.setBlockToAir(p_149681_2_, p_149681_3_ - 1, p_149681_4_); + } + } +} diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index 8c1b2bcf8..a28682928 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -1655,6 +1655,10 @@ public class ModItems { public static Item bucket_mud; public static Item bucket_acid; public static Item bucket_toxic; + + public static Item door_metal; + public static Item door_office; + public static Item door_bunker; public static Item record_lc; public static Item record_ss; @@ -3369,6 +3373,10 @@ public class ModItems { bucket_acid = new ItemModBucket(ModBlocks.acid_block).setUnlocalizedName("bucket_acid").setContainerItem(Items.bucket).setCreativeTab(MainRegistry.blockTab).setTextureName(RefStrings.MODID + ":bucket_acid"); bucket_toxic = new ItemModBucket(ModBlocks.toxic_block).setUnlocalizedName("bucket_toxic").setContainerItem(Items.bucket).setCreativeTab(MainRegistry.blockTab).setTextureName(RefStrings.MODID + ":bucket_toxic"); + door_metal = new ItemModDoor().setUnlocalizedName("door_metal").setCreativeTab(MainRegistry.blockTab).setTextureName(RefStrings.MODID + ":door_metal"); + door_office = new ItemModDoor().setUnlocalizedName("door_office").setCreativeTab(MainRegistry.blockTab).setTextureName(RefStrings.MODID + ":door_office"); + door_bunker = new ItemModDoor().setUnlocalizedName("door_bunker").setCreativeTab(MainRegistry.blockTab).setTextureName(RefStrings.MODID + ":door_bunker"); + record_lc = new ItemModRecord("lc").setUnlocalizedName("record_lc").setCreativeTab(CreativeTabs.tabMisc).setTextureName(RefStrings.MODID + ":record_lc"); record_ss = new ItemModRecord("ss").setUnlocalizedName("record_ss").setCreativeTab(CreativeTabs.tabMisc).setTextureName(RefStrings.MODID + ":record_ss"); record_vc = new ItemModRecord("vc").setUnlocalizedName("record_vc").setCreativeTab(CreativeTabs.tabMisc).setTextureName(RefStrings.MODID + ":record_vc"); @@ -5187,6 +5195,11 @@ public class ModItems { GameRegistry.registerItem(bucket_acid, bucket_acid.getUnlocalizedName()); GameRegistry.registerItem(bucket_toxic, bucket_toxic.getUnlocalizedName()); + //Door Items + GameRegistry.registerItem(door_metal, door_metal.getUnlocalizedName()); + GameRegistry.registerItem(door_office, door_office.getUnlocalizedName()); + GameRegistry.registerItem(door_bunker, door_bunker.getUnlocalizedName()); + //Records GameRegistry.registerItem(record_lc, record_lc.getUnlocalizedName()); GameRegistry.registerItem(record_ss, record_ss.getUnlocalizedName()); diff --git a/com/hbm/items/tool/ItemModDoor.java b/com/hbm/items/tool/ItemModDoor.java new file mode 100644 index 000000000..e87f98c8d --- /dev/null +++ b/com/hbm/items/tool/ItemModDoor.java @@ -0,0 +1,114 @@ +package com.hbm.items.tool; + +import com.hbm.blocks.ModBlocks; +import com.hbm.items.ModItems; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.MathHelper; +import net.minecraft.world.World; + +public class ItemModDoor extends Item +{ + private static final String __OBFID = "CL_00000020"; + + public ItemModDoor() + { + this.maxStackSize = 1; + this.setCreativeTab(CreativeTabs.tabRedstone); + } + + /** + * Callback for item usage. If the item does something special on right clicking, he will have one of those. Return + * True if something happen and false if it don't. This is for ITEMS, not BLOCKS + */ + public boolean onItemUse(ItemStack p_77648_1_, EntityPlayer p_77648_2_, World p_77648_3_, int p_77648_4_, int p_77648_5_, int p_77648_6_, int p_77648_7_, float p_77648_8_, float p_77648_9_, float p_77648_10_) + { + if (p_77648_7_ != 1) + { + return false; + } + else + { + ++p_77648_5_; + Block block; + + if(this == ModItems.door_metal) + block = ModBlocks.door_metal; + else if(this == ModItems.door_office) + block = ModBlocks.door_office; + else + block = ModBlocks.door_bunker; + + if (p_77648_2_.canPlayerEdit(p_77648_4_, p_77648_5_, p_77648_6_, p_77648_7_, p_77648_1_) && p_77648_2_.canPlayerEdit(p_77648_4_, p_77648_5_ + 1, p_77648_6_, p_77648_7_, p_77648_1_)) + { + if (!block.canPlaceBlockAt(p_77648_3_, p_77648_4_, p_77648_5_, p_77648_6_)) + { + return false; + } + else + { + int i1 = MathHelper.floor_double((double)((p_77648_2_.rotationYaw + 180.0F) * 4.0F / 360.0F) - 0.5D) & 3; + placeDoorBlock(p_77648_3_, p_77648_4_, p_77648_5_, p_77648_6_, i1, block); + --p_77648_1_.stackSize; + return true; + } + } + else + { + return false; + } + } + } + + public static void placeDoorBlock(World p_150924_0_, int p_150924_1_, int p_150924_2_, int p_150924_3_, int p_150924_4_, Block p_150924_5_) + { + byte b0 = 0; + byte b1 = 0; + + if (p_150924_4_ == 0) + { + b1 = 1; + } + + if (p_150924_4_ == 1) + { + b0 = -1; + } + + if (p_150924_4_ == 2) + { + b1 = -1; + } + + if (p_150924_4_ == 3) + { + b0 = 1; + } + + int i1 = (p_150924_0_.getBlock(p_150924_1_ - b0, p_150924_2_, p_150924_3_ - b1).isNormalCube() ? 1 : 0) + (p_150924_0_.getBlock(p_150924_1_ - b0, p_150924_2_ + 1, p_150924_3_ - b1).isNormalCube() ? 1 : 0); + int j1 = (p_150924_0_.getBlock(p_150924_1_ + b0, p_150924_2_, p_150924_3_ + b1).isNormalCube() ? 1 : 0) + (p_150924_0_.getBlock(p_150924_1_ + b0, p_150924_2_ + 1, p_150924_3_ + b1).isNormalCube() ? 1 : 0); + boolean flag = p_150924_0_.getBlock(p_150924_1_ - b0, p_150924_2_, p_150924_3_ - b1) == p_150924_5_ || p_150924_0_.getBlock(p_150924_1_ - b0, p_150924_2_ + 1, p_150924_3_ - b1) == p_150924_5_; + boolean flag1 = p_150924_0_.getBlock(p_150924_1_ + b0, p_150924_2_, p_150924_3_ + b1) == p_150924_5_ || p_150924_0_.getBlock(p_150924_1_ + b0, p_150924_2_ + 1, p_150924_3_ + b1) == p_150924_5_; + boolean flag2 = false; + + if (flag && !flag1) + { + flag2 = true; + } + else if (j1 > i1) + { + flag2 = true; + } + + p_150924_0_.setBlock(p_150924_1_, p_150924_2_, p_150924_3_, p_150924_5_, p_150924_4_, 2); + p_150924_0_.setBlock(p_150924_1_, p_150924_2_ + 1, p_150924_3_, p_150924_5_, 8 | (flag2 ? 1 : 0), 2); + p_150924_0_.notifyBlocksOfNeighborChange(p_150924_1_, p_150924_2_, p_150924_3_, p_150924_5_); + p_150924_0_.notifyBlocksOfNeighborChange(p_150924_1_, p_150924_2_ + 1, p_150924_3_, p_150924_5_); + } +} diff --git a/com/hbm/lib/Library.java b/com/hbm/lib/Library.java index e45f2154c..df7a3aa25 100644 --- a/com/hbm/lib/Library.java +++ b/com/hbm/lib/Library.java @@ -1379,13 +1379,13 @@ public class Library { } public static Block getRandomConcrete() { - int i = rand.nextInt(100); + int i = rand.nextInt(20); - if(i < 5) + if(i <= 1) return ModBlocks.brick_concrete_broken; - if(i < 20) + if(i <= 4) return ModBlocks.brick_concrete_cracked; - if(i < 50) + if(i <= 10) return ModBlocks.brick_concrete_mossy; return ModBlocks.brick_concrete; diff --git a/com/hbm/world/Radio01.java b/com/hbm/world/Radio01.java index ae1a300fc..736c2f9b5 100644 --- a/com/hbm/world/Radio01.java +++ b/com/hbm/world/Radio01.java @@ -5,6 +5,7 @@ package com.hbm.world; import java.util.Random; import com.hbm.blocks.ModBlocks; +import com.hbm.items.tool.ItemModDoor; import com.hbm.lib.HbmChestContents; import com.hbm.lib.Library; import com.hbm.tileentity.machine.TileEntityCrateSteel; @@ -420,8 +421,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 5, y + 0, z + 4, Blocks.air, 0, 3); world.setBlock(x + 6, y + 0, z + 4, Blocks.air, 0, 3); world.setBlock(x + 7, y + 0, z + 4, Library.getRandomConcrete(), 0, 3); - world.setBlock(x + 8, y + 0, z + 4, Blocks.wooden_door, 3, 3); - ItemDoor.placeDoorBlock(world, x + 8, y + 0, z + 4, 3, Blocks.wooden_door); + world.setBlock(x + 8, y + 0, z + 4, ModBlocks.door_office, 3, 3); + ItemDoor.placeDoorBlock(world, x + 8, y + 0, z + 4, 3, ModBlocks.door_office); world.setBlock(x + 9, y + 0, z + 4, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 10, y + 0, z + 4, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 0, z + 5, Library.getRandomConcrete(), 0, 3); @@ -464,8 +465,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 4, y + 0, z + 8, Blocks.air, 0, 3); world.setBlock(x + 5, y + 0, z + 8, Blocks.air, 0, 3); world.setBlock(x + 6, y + 0, z + 8, Blocks.air, 0, 3); - world.setBlock(x + 7, y + 0, z + 8, Blocks.wooden_door, 2, 3); - ItemDoor.placeDoorBlock(world, x + 7, y + 0, z + 8, 2, Blocks.wooden_door); + world.setBlock(x + 7, y + 0, z + 8, ModBlocks.door_office, 2, 3); + ItemDoor.placeDoorBlock(world, x + 7, y + 0, z + 8, 2, ModBlocks.door_office); world.setBlock(x + 8, y + 0, z + 8, Blocks.air, 0, 3); world.setBlock(x + 9, y + 0, z + 8, Blocks.air, 0, 3); world.setBlock(x + 10, y + 0, z + 8, Library.getRandomConcrete(), 0, 3); @@ -522,8 +523,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 4, y + 0, z + 13, Blocks.air, 0, 3); world.setBlock(x + 5, y + 0, z + 13, Blocks.air, 0, 3); world.setBlock(x + 6, y + 0, z + 13, Blocks.air, 0, 3); - world.setBlock(x + 7, y + 0, z + 13, Blocks.iron_door, 2, 3); - ItemDoor.placeDoorBlock(world, x + 7, y + 0, z + 13, 2, Blocks.iron_door); + world.setBlock(x + 7, y + 0, z + 13, ModBlocks.door_metal, 2, 3); + ItemDoor.placeDoorBlock(world, x + 7, y + 0, z + 13, 2, ModBlocks.door_office); world.setBlock(x + 8, y + 0, z + 13, Blocks.air, 0, 3); world.setBlock(x + 9, y + 0, z + 13, Blocks.air, 0, 3); world.setBlock(x + 10, y + 0, z + 13, Library.getRandomConcrete(), 0, 3); @@ -560,8 +561,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 8, y + 0, z + 16, Blocks.air, 0, 3); world.setBlock(x + 9, y + 0, z + 16, Blocks.air, 0, 3); world.setBlock(x + 10, y + 0, z + 16, Library.getRandomConcrete(), 0, 3); - world.setBlock(x + 0, y + 0, z + 17, Blocks.iron_door, 0, 3); - ItemDoor.placeDoorBlock(world, x + 0, y + 0, z + 17, 0, Blocks.iron_door); + world.setBlock(x + 0, y + 0, z + 17, ModBlocks.door_metal, 0, 3); + ItemDoor.placeDoorBlock(world, x + 0, y + 0, z + 17, 0, ModBlocks.door_metal); world.setBlock(x - 1, y + 1, z + 17, Blocks.wall_sign, 4, 3); world.setBlock(x + 1, y + 0, z + 17, Blocks.air, 0, 3); world.setBlock(x + 2, y + 0, z + 17, Blocks.air, 0, 3); @@ -573,8 +574,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 8, y + 0, z + 17, Blocks.air, 0, 3); world.setBlock(x + 9, y + 0, z + 17, Blocks.air, 0, 3); world.setBlock(x + 10, y + 0, z + 17, Library.getRandomConcrete(), 0, 3); - world.setBlock(x + 0, y + 0, z + 18, Blocks.iron_door, 0, 3); - ItemDoor.placeDoorBlock(world, x + 0, y + 0, z + 18, 0, Blocks.iron_door); + world.setBlock(x + 0, y + 0, z + 18, ModBlocks.door_metal, 0, 3); + ItemDoor.placeDoorBlock(world, x + 0, y + 0, z + 18, 0, ModBlocks.door_metal); world.setBlock(x - 1, y + 1, z + 18, Blocks.wall_sign, 4, 3); world.setBlock(x + 1, y + 0, z + 18, Blocks.air, 0, 3); world.setBlock(x + 2, y + 0, z + 18, Blocks.air, 0, 3); @@ -632,8 +633,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 10, y + 0, z + 22, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 0, z + 23, Blocks.air, 0, 3); world.setBlock(x + 1, y + 0, z + 23, Blocks.air, 0, 3); - world.setBlock(x + 2, y + 0, z + 23, Blocks.wooden_door, 0, 3); - ItemDoor.placeDoorBlock(world, x + 2, y + 0, z + 23, 0, Blocks.wooden_door); + world.setBlock(x + 2, y + 0, z + 23, ModBlocks.door_metal, 0, 3); + ItemDoor.placeDoorBlock(world, x + 2, y + 0, z + 23, 0, ModBlocks.door_metal); world.setBlock(x + 3, y + 0, z + 23, Blocks.air, 0, 3); world.setBlock(x + 4, y + 0, z + 23, Blocks.air, 0, 3); world.setBlock(x + 5, y + 0, z + 23, ModBlocks.deco_steel, 0, 3); @@ -718,7 +719,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 5, y + 1, z + 4, Blocks.stone_stairs, 5, 3); world.setBlock(x + 6, y + 1, z + 4, Blocks.air, 0, 3); world.setBlock(x + 7, y + 1, z + 4, Library.getRandomConcrete(), 0, 3); - //world.setBlock(x + 8, y + 1, z + 4, Blocks.wooden_door, 8, 3); + //world.setBlock(x + 8, y + 1, z + 4, ModBlocks.door_office, 8, 3); world.setBlock(x + 9, y + 1, z + 4, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 10, y + 1, z + 4, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 1, z + 5, Library.getRandomConcrete(), 0, 3); @@ -761,7 +762,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 4, y + 1, z + 8, Blocks.air, 0, 3); world.setBlock(x + 5, y + 1, z + 8, Blocks.air, 0, 3); world.setBlock(x + 6, y + 1, z + 8, Blocks.air, 0, 3); - //world.setBlock(x + 7, y + 1, z + 8, Blocks.wooden_door, 8, 3); + //world.setBlock(x + 7, y + 1, z + 8, ModBlocks.door_office, 8, 3); world.setBlock(x + 8, y + 1, z + 8, Blocks.air, 0, 3); world.setBlock(x + 9, y + 1, z + 8, Blocks.air, 0, 3); world.setBlock(x + 10, y + 1, z + 8, Library.getRandomConcrete(), 0, 3); @@ -816,7 +817,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 4, y + 1, z + 13, ModBlocks.deco_tungsten, 0, 3); world.setBlock(x + 5, y + 1, z + 13, Blocks.air, 0, 3); world.setBlock(x + 6, y + 1, z + 13, Blocks.air, 0, 3); - //world.setBlock(x + 7, y + 1, z + 13, Blocks.iron_door, 8, 3); + //world.setBlock(x + 7, y + 1, z + 13, ModBlocks.door_metal, 8, 3); world.setBlock(x + 8, y + 1, z + 13, Blocks.air, 0, 3); world.setBlock(x + 9, y + 1, z + 13, Blocks.air, 0, 3); world.setBlock(x + 10, y + 1, z + 13, Library.getRandomConcrete(), 0, 3); @@ -853,7 +854,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 8, y + 1, z + 16, Blocks.air, 0, 3); world.setBlock(x + 9, y + 1, z + 16, Blocks.air, 0, 3); world.setBlock(x + 10, y + 1, z + 16, Library.getRandomConcrete(), 0, 3); - //world.setBlock(x + 0, y + 1, z + 17, Blocks.iron_door, 8, 3); + //world.setBlock(x + 0, y + 1, z + 17, ModBlocks.door_metal, 8, 3); world.setBlock(x + 1, y + 1, z + 17, Blocks.air, 0, 3); world.setBlock(x + 2, y + 1, z + 17, Blocks.air, 0, 3); world.setBlock(x + 3, y + 1, z + 17, Blocks.air, 0, 3); @@ -864,7 +865,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 8, y + 1, z + 17, Blocks.air, 0, 3); world.setBlock(x + 9, y + 1, z + 17, Blocks.air, 0, 3); world.setBlock(x + 10, y + 1, z + 17, Library.getRandomConcrete(), 0, 3); - //world.setBlock(x + 0, y + 1, z + 18, Blocks.iron_door, 9, 3); + //world.setBlock(x + 0, y + 1, z + 18, ModBlocks.door_metal, 9, 3); world.setBlock(x + 1, y + 1, z + 18, Blocks.air, 0, 3); world.setBlock(x + 2, y + 1, z + 18, Blocks.air, 0, 3); world.setBlock(x + 3, y + 1, z + 18, Blocks.air, 0, 3); @@ -921,7 +922,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 10, y + 1, z + 22, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 1, z + 23, Blocks.air, 0, 3); world.setBlock(x + 1, y + 1, z + 23, Blocks.air, 0, 3); - //world.setBlock(x + 2, y + 1, z + 23, Blocks.wooden_door, 8, 3); + //world.setBlock(x + 2, y + 1, z + 23, ModBlocks.door_office, 8, 3); world.setBlock(x + 3, y + 1, z + 23, Blocks.air, 0, 3); world.setBlock(x + 4, y + 1, z + 23, Blocks.air, 0, 3); world.setBlock(x + 5, y + 1, z + 23, ModBlocks.deco_steel, 0, 3); @@ -1614,8 +1615,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 0, y + 4, z + 7, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 1, y + 4, z + 7, Blocks.air, 0, 3); world.setBlock(x + 2, y + 4, z + 7, Blocks.air, 0, 3); - world.setBlock(x + 3, y + 4, z + 7, Blocks.iron_door, 0, 3); - ItemDoor.placeDoorBlock(world, x + 3, y + 4, z + 7, 0, Blocks.iron_door); + world.setBlock(x + 3, y + 4, z + 7, ModBlocks.door_metal, 0, 3); + ItemDoor.placeDoorBlock(world, x + 3, y + 4, z + 7, 0, ModBlocks.door_office); world.setBlock(x + 4, y + 4, z + 7, Blocks.air, 0, 3); world.setBlock(x + 5, y + 4, z + 7, Blocks.air, 0, 3); world.setBlock(x + 6, y + 4, z + 7, Blocks.air, 0, 3); @@ -1671,7 +1672,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 1, y + 4, z + 12, Blocks.air, 0, 3); world.setBlock(x + 2, y + 4, z + 12, Blocks.air, 0, 3); //world.setBlock(x + 3, y + 4, z + 12, Blocks.air, 0, 3); - ItemDoor.placeDoorBlock(world, x + 3, y + 4, z + 12, 0, Blocks.iron_door); + ItemDoor.placeDoorBlock(world, x + 3, y + 4, z + 12, 0, ModBlocks.door_office); world.setBlock(x + 4, y + 4, z + 12, Blocks.air, 0, 3); world.setBlock(x + 5, y + 4, z + 12, Blocks.air, 0, 3); world.setBlock(x + 6, y + 4, z + 12, Blocks.air, 0, 3); @@ -1684,7 +1685,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 2, y + 4, z + 13, Blocks.air, 0, 3); world.setBlock(x + 3, y + 4, z + 13, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 4, y + 4, z + 13, Blocks.air, 0, 3); - //ItemDoor.placeDoorBlock(world, x + 4, y + 4, z + 13, 2, Blocks.iron_door); + //ItemDoor.placeDoorBlock(world, x + 4, y + 4, z + 13, 2, ModBlocks.door_metal); world.setBlock(x + 5, y + 4, z + 13, Blocks.air, 0, 3); world.setBlock(x + 6, y + 4, z + 13, Blocks.air, 0, 3); world.setBlock(x + 7, y + 4, z + 13, Blocks.air, 0, 3); @@ -1717,8 +1718,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 10, y + 4, z + 15, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 4, z + 16, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 1, y + 4, z + 16, Library.getRandomConcrete(), 0, 3); - world.setBlock(x + 2, y + 4, z + 16, Blocks.wooden_door, 5, 3); - ItemDoor.placeDoorBlock(world, x + 2, y + 4, z + 16, 5, Blocks.wooden_door); + world.setBlock(x + 2, y + 4, z + 16, ModBlocks.door_office, 5, 3); + ItemDoor.placeDoorBlock(world, x + 2, y + 4, z + 16, 5, ModBlocks.door_office); world.setBlock(x + 3, y + 4, z + 16, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 4, y + 4, z + 16, Blocks.air, 0, 3); world.setBlock(x + 5, y + 4, z + 16, Blocks.air, 0, 3); @@ -1765,8 +1766,8 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 2, y + 4, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 3, y + 4, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 4, y + 4, z + 20, Library.getRandomConcrete(), 0, 3); - world.setBlock(x + 5, y + 4, z + 20, Blocks.iron_door, 3, 3); - ItemDoor.placeDoorBlock(world, x + 5, y + 4, z + 20, 3, Blocks.iron_door); + world.setBlock(x + 5, y + 4, z + 20, ModBlocks.door_metal, 3, 3); + ItemDoor.placeDoorBlock(world, x + 5, y + 4, z + 20, 3, ModBlocks.door_metal); world.setBlock(x + 6, y + 4, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 7, y + 4, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 8, y + 4, z + 20, Library.getRandomConcrete(), 0, 3); @@ -1907,7 +1908,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 0, y + 5, z + 7, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 1, y + 5, z + 7, Blocks.air, 0, 3); world.setBlock(x + 2, y + 5, z + 7, Blocks.air, 0, 3); - //world.setBlock(x + 3, y + 5, z + 7, Blocks.iron_door, 8, 3); + //world.setBlock(x + 3, y + 5, z + 7, ModBlocks.door_metal, 8, 3); world.setBlock(x + 4, y + 5, z + 7, Blocks.air, 0, 3); world.setBlock(x + 5, y + 5, z + 7, Blocks.air, 0, 3); world.setBlock(x + 6, y + 5, z + 7, Blocks.air, 0, 3); @@ -2005,7 +2006,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 10, y + 5, z + 15, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 5, z + 16, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 1, y + 5, z + 16, Library.getRandomConcrete(), 0, 3); - //world.setBlock(x + 2, y + 5, z + 16, Blocks.wooden_door, 8, 3); + //world.setBlock(x + 2, y + 5, z + 16, ModBlocks.door_office, 8, 3); world.setBlock(x + 3, y + 5, z + 16, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 4, y + 5, z + 16, Blocks.air, 0, 3); world.setBlock(x + 5, y + 5, z + 16, Blocks.air, 0, 3); @@ -2052,7 +2053,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 2, y + 5, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 3, y + 5, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 4, y + 5, z + 20, Library.getRandomConcrete(), 0, 3); - //world.setBlock(x + 5, y + 5, z + 20, Blocks.iron_door, 8, 3); + //world.setBlock(x + 5, y + 5, z + 20, ModBlocks.door_metal, 8, 3); world.setBlock(x + 6, y + 5, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 7, y + 5, z + 20, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 8, y + 5, z + 20, Library.getRandomConcrete(), 0, 3);