κΈ°λ³Έ λ°©ν₯(n/s/w/e)μ F3 μΈλΆμμ κ±°μ μ¬μ©λμ§ μμ΅λλ€(/μλμ€?). μ½λλ μΌλ°μ μΌλ‘ κΈ°λ³Έ λ°©ν₯("μμͺ½ 5λΈλ‘ + λ¨μͺ½ 1")μ΄ μλ μΆ+λ°©ν₯ λλ xyz μ’νλ₯Ό μΌλμ λκ³ μμ±λ©λλ€.
μΆ+κΈ°νΈμ κΈ°λ³Έ λ°©ν₯ κ°μ 맀νμ Mojangμμ μμλ‘ μ ννμΌλ©° νμ¬ λͺ λͺ 체κ³μμ λͺ¨λ νΉμ μ©λμ λν΄ κ°λ°μκ° μ‘°ννκ±°λ κΈ°μ΅ν΄μΌ ν©λλ€.
λν νμ λ μ’νκ³μμ axis+dirμ λν΄ λ§νλ κ²μ΄ λ κΉλν©λλ€. YμΆμ΄ 90Β° νμ λμ΄ μμΌλ‘ ν₯νλ κ²μ΄ μ΄μ "μλλ‘"κ° μμ κ°λ¦¬ν€λ κ²λ³΄λ€ λ ν©λ¦¬μ μΌλ‘ λ€λ¦½λλ€.
μ΄ λ¬Έμ λ₯Ό ν΄κ²°νλ €λ©΄ Facingμ νλ μ΄λ¦μ XP/XN/YP/YN/ZP/ZNμΌλ‘ λ°κΏμΌ ν©λλ€. μ¬κΈ°μ 첫 κΈμλ μΆμ΄κ³ λ λ²μ§Έ κΈμλ λ°©ν₯μ λλ€. λ€λ₯Έ ν΄λμ€μλ λ³κ²½ν΄μΌ νλ κΈ°λ³Έ λ°©ν₯ μ΄λ¦μ κ³μ μ¬μ©νλ ꡬμ±μμ΄ μμ μλ μμ΅λλ€.
μ£μ‘νμ§λ§ λμνμ§ μμ΅λλ€.
μ΄κ²μ μ§λμΉκ² μ격νλ€κ³ μκ°ν©λλ€.
μ/μλλ₯Ό μ μΈνκ³ λ λ€λ₯Έ λ°©ν₯μ λͺ μμ μΌλ‘ μ°Έμ‘°ν νμκ° μμμΌλ―λ‘ λ¬Έμ κ° λμ§ μλλ€κ³ μκ°ν©λλ€. νλμ½λ©λ λ°©ν₯κ³Ό ν¨κ» λ€λ₯Έ μν λ°©ν₯μμ λ€λ₯΄κ² μλνλ κ²μ 보λ κ²μ λλ λλ€. κΈ°μ‘΄μ λͺ¨λ λ°©ν₯μ λν μΌλΆ μ€μμΉ...μΌμ΄μ€λ₯Ό μ μΈνκ³ λ μμ§λ§ λ κ²½μ° λͺ¨λ ν΄λΉ λ°©ν₯μ΄ μ’νμ 맀νλλ λ°©λ²μ μ νμκ° μμ΅λλ€. μλνλ©΄ κ±°κΈ°μ μ μ©ν λ°©λ²μ΄ μΆ©λΆνκΈ° λλ¬Έμ λλ€.
λν νλͺ©μ μ΄λ¦μ λ°κΎΈλ κ²μ μ’μ μκ°μ΄ μλ μ΄κ±°νμ΄κΈ°λ ν©λλ€. λ°μ΄νΈμ½λμ λ¬Έμμ΄ μ΄λ¦μ νλ μ΄λ¦μ΄ 무μμ΄μ΄μΌ νλμ§ μ§μ μ μΌλ‘ λμνλ―λ‘ λμ»΄νμΌλ¬μ IDEλ₯Ό νΌλν κ°λ₯μ±μ΄ λμ΅λλ€.
λ€, κ·Έκ²λ μ€μν μμμ λλ€. λ°©ν₯μ λν valueOf()λ μΉ΄λλμ λ°ννλ―λ‘ Mojangμ μ€μ λ‘ λ΄λΆμ μΌλ‘ μΉ΄λλμ μ°Έμ‘°ν©λλ€.
μνλ©΄μλ μΌλ°μ μΌλ‘ 4κ°μ§ μν©/μ©λκ° μμ΅λλ€.
λμΌν μ λμ¬λ‘ μΈν΄ μΆ νκΈ°λ²μΌλ‘ λ°λκ° μ½κ° λ λͺ νν©λλ€. μ’ν λΈνλ μΆ νκΈ°λ²μ κ°λ ₯νκ² μ νΈν©λλ€. a.getX() - b.getX()λ λΆλͺ ν XN/XPμ κ΄λ ¨λμ§λ§ μμͺ½/λμͺ½μλ κ·Έλ€μ§ κ΄λ ¨μ΄ μμ΅λλ€. μΆμ λν λ¨λΆ/μ-λ/μνκ° μλ X/Y/Zμ λλ€.
"μνμμ μμ£Ό μ’μ μ€ν¬μ " -> κΈ°λ³Έ μ’ν μ€νμ /λ°©ν₯ μΆμ΄λ©°, μ΄λ ΅κ±°λ μ½μ μ μμ΅λλ€. λ°λλ‘ "μμͺ½"μ μ£Όλ³ μ½λκ° μ’νμ ν¨κ» μλνκ³ λ¨Όμ μ’ν κ΄κ³λ₯Ό νμΈν΄μΌ νλ κ²½μ° μ½μ μ μμ΅λλ€.
"κ·Έ μ½λλ μΌλ°μ μΌλ‘ x/y/z μ’νλ₯Ό μ§μ μμ ν©λλ€." -> BlockPosμ μ€νμ /μ΄λ λ°©λ²μ λμνμ§ μμ΅λλ€. νμ¬ μ΄λ¦κ³Όμ κ΄κ³κ° μΌλ§λ λΆλΆλͺ νκΈ° λλ¬Έμ μ€μ λ‘ μ§μ μμ μ μνν©λλ€.
μ΄κ±°ν νλμ μ΄λ¦μ λ°κΎΈλ κ²μ κΈ°μ μ μΈ λ¬Έμ κ° μλλ©° mojang μ΄λ¦μμλ afλΌκ³ ν©λλ€. Mojangμ μ΄λ¦ μ§μ μ νμ μμ©νμ§ μλ κ²μ΄ μ€μν κ³³μμλ κ·Έκ²λ€μ΄ μΆ©λΆν λμλ€κ³ μκ°ν©λλ€.
λλ λ¨μν μ½κ° λ μνμ μΌλ‘ 보μ΄λ κ² μΈμλ λΆμͺ½/λ¨μͺ½/μμͺ½/λμͺ½μ΄ μλ―Έκ° μλ λ¨μΌ μ¬λ‘λ₯Ό μ°Ύμ§ λͺ»νμ΅λλ€.
μ΄κ±°ν νλμ μ΄λ¦μ λ°κΎΈλ κ²μ κΈ°μ μ μΈ λ¬Έμ κ° μλλ©° mojang μ΄λ¦μμλ afλΌκ³ ν©λλ€.
μλͺ»λ. μ΄κ±°ν μ΄λ¦μ Mojangμ Proguard ꡬμ±μμλ valueOf νΈμΆμ΄ μλνλλ‘ λλ νμλ λΆκ΅¬νκ³ λ³΄μ‘΄λ©λλ€. κ·Έκ²λ€μ μ°λ¦¬κ° μκ³ μλ μ΄λ¦μ λλ€.
νλ μ΄λ¦μ λ°κΎΈλ νλλ₯Ό afλΌκ³ ν©λλ€. μ΄λ¦ λ°κΎΈκΈ°λ Mojangμμ μλνλ―λ‘ μ°λ¦¬μκ²λ ν¨κ³Όμ μ λλ€.
λμκ²μ ν° μλ.
λλ λμνμ§ μλλ€. λλ μ΄κ²μ΄ κ°μΉλ³΄λ€ λ λ§μ νΌλμ μΌκΈ°ν κ²μ΄λΌκ³ μκ°νλ€.
무μμ΄λ NORTH_XP, SOUTH_XN λ±μ΄λΌκ³ λ§νκ³ μΆμ΅λλ€.
κ·Έλ¬λ λλ μ΄κ²μ΄ μ λ§λ‘ νμνλ€κ³ μκ°νμ§ μμ΅λλ€. λλ κ·Έλ₯ νμ¬μ κ²λ€μ μΆ©μ€ν κ²μ΄λ€
NORTH_XP
NORTH_ZNμ λλ€.
λλ λΉμ μ΄ λ°©κΈ Playerμ μμ μ μ¦λͺ νλ€κ³ μκ°ν©λλ€.
κ·Έλ¬λ λλ modmussμ kashikeμ λμν©λλ€. λΉλ‘ μ§κΈ λΉμ μ μμ μ΄ μ’ λ λͺ ννκ² λ³Ό μ μκ³ κ·Έκ²μ΄ μ΄λ μ λ νλΉνλ€κ³ μκ°ν©λλ€.
λλ λμνμ§ μμΌλ©° μ΄κ²μ λ§μ νΌλμ μΌμΌν¬ κ²μ λλ€
κ°μ₯ μ μ©ν λκΈ
λμκ²μ ν° μλ.