Yarn: NORTH/S/W/E/U/D -> ZN/ZP/...

에 λ§Œλ“  2018λ…„ 12μ›” 11일  Β·  11μ½”λ©˜νŠΈ  Β·  좜처: FabricMC/yarn

κΈ°λ³Έ λ°©ν–₯(n/s/w/e)은 F3 μ™ΈλΆ€μ—μ„œ 거의 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€(/μ•„λ‹ˆμ˜€?). μ½”λ“œλŠ” 일반적으둜 κΈ°λ³Έ λ°©ν–₯("μ„œμͺ½ 5블둝 + 남μͺ½ 1")이 μ•„λ‹Œ μΆ•+λ°©ν–₯ λ˜λŠ” xyz μ’Œν‘œλ₯Ό 염두에 두고 μž‘μ„±λ©λ‹ˆλ‹€.

μΆ•+κΈ°ν˜Έμ™€ κΈ°λ³Έ λ°©ν–₯ κ°„μ˜ 맀핑은 Mojangμ—μ„œ μž„μ˜λ‘œ μ„ νƒν–ˆμœΌλ©° ν˜„μž¬ λͺ…λͺ… μ²΄κ³„μ—μ„œ λͺ¨λ“  νŠΉμ • μš©λ„μ— λŒ€ν•΄ κ°œλ°œμžκ°€ μ‘°νšŒν•˜κ±°λ‚˜ κΈ°μ–΅ν•΄μ•Ό ν•©λ‹ˆλ‹€.

λ˜ν•œ νšŒμ „λœ μ’Œν‘œκ³„μ—μ„œ axis+dir에 λŒ€ν•΄ λ§ν•˜λŠ” 것이 더 κΉ”λ”ν•©λ‹ˆλ‹€. Y좕이 90Β° νšŒμ „λ˜μ–΄ μ˜†μœΌλ‘œ ν–₯ν•˜λŠ” 것이 이제 "μ•„λž˜λ‘œ"κ°€ μ˜†μ„ κ°€λ¦¬ν‚€λŠ” 것보닀 더 ν•©λ¦¬μ μœΌλ‘œ λ“€λ¦½λ‹ˆλ‹€.

이 문제λ₯Ό ν•΄κ²°ν•˜λ €λ©΄ Facing의 ν•„λ“œ 이름을 XP/XN/YP/YN/ZP/ZN으둜 λ°”κΏ”μ•Ό ν•©λ‹ˆλ‹€. μ—¬κΈ°μ„œ 첫 κΈ€μžλŠ” 좕이고 두 번째 κΈ€μžλŠ” λ°©ν–₯μž…λ‹ˆλ‹€. λ‹€λ₯Έ ν΄λž˜μŠ€μ—λŠ” λ³€κ²½ν•΄μ•Ό ν•˜λŠ” κΈ°λ³Έ λ°©ν–₯ 이름을 계속 μ‚¬μš©ν•˜λŠ” ꡬ성원이 μžˆμ„ μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ‚˜μ—κ²Œμ„œ 큰 μ•„λ‹ˆ.

λͺ¨λ“  11 λŒ“κΈ€

μ£„μ†‘ν•˜μ§€λ§Œ λ™μ˜ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

  • μˆ˜ν•™μ— λŠ₯μˆ™ν•˜μ§€ μ•Šμ€ 경우 μ΄λŸ¬ν•œ 이름은 μ½”λ“œμ—μ„œ 더 ν˜Όλž€μŠ€λŸ½κ³  가독성이 λ–¨μ–΄μ§‘λ‹ˆλ‹€.
  • "μ½”λ“œλŠ” 일반적으둜 κΈ°λ³Έ λ°©ν–₯("μ„œμͺ½ 5블둝 + 남μͺ½ 1")이 μ•„λ‹ˆλΌ μΆ•+λ°©ν–₯ λ˜λŠ” xyz μ’Œν‘œλ₯Ό 염두에 두고 μž‘μ„±λ©λ‹ˆλ‹€." - ν•΄λ‹Ή μ½”λ“œλŠ” 일반적으둜 μ—΄κ±°ν˜•μ„ μ‚¬μš©ν•˜μ§€ μ•Šκ³  x/y/z μ’Œν‘œλ₯Ό 직접 μˆ˜μ •ν•©λ‹ˆλ‹€.
  • λ‚΄κ°€ μ•„λŠ” λͺ¨λ“  μ‚¬λžŒμ€ λͺ¨λ”κ°€ μ•„λ‹ˆλ”λΌλ„ 이 κΈ°λ³Έ λ°©ν–₯ 맀핑을 염두에 두고 λ‹¨μˆœνžˆ μƒλŒ€ 거리λ₯Ό μ°Έμ‘°ν•˜λŠ” 데 μ‚¬μš©ν•©λ‹ˆλ‹€.

이것은 μ§€λ‚˜μΉ˜κ²Œ μ—„κ²©ν•˜λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

μœ„/μ•„λž˜λ₯Ό μ œμ™Έν•˜κ³ λŠ” λ‹€λ₯Έ λ°©ν–₯을 λͺ…μ‹œμ μœΌλ‘œ μ°Έμ‘°ν•  ν•„μš”κ°€ μ—†μ—ˆμœΌλ―€λ‘œ λ¬Έμ œκ°€ λ˜μ§€ μ•ŠλŠ”λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. ν•˜λ“œμ½”λ”©λœ λ°©ν–₯κ³Ό ν•¨κ»˜ λ‹€λ₯Έ μˆ˜ν‰ λ°©ν–₯μ—μ„œ λ‹€λ₯΄κ²Œ μž‘λ™ν•˜λŠ” 것을 λ³΄λŠ” 것은 λ“œλ­…λ‹ˆλ‹€. 기쑴의 λͺ¨λ“  λ°©ν–₯에 λŒ€ν•œ 일뢀 μŠ€μœ„μΉ˜...μΌ€μ΄μŠ€λ₯Ό μ œμ™Έν•˜κ³ λŠ” μžˆμ§€λ§Œ 두 경우 λͺ¨λ‘ ν•΄λ‹Ή λ°©ν–₯이 μ’Œν‘œμ— λ§€ν•‘λ˜λŠ” 방법을 μ•Œ ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ 거기에 μœ μš©ν•œ 방법이 μΆ©λΆ„ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.

λ˜ν•œ ν•­λͺ©μ˜ 이름을 λ°”κΎΈλŠ” 것은 쒋은 생각이 μ•„λ‹Œ μ—΄κ±°ν˜•μ΄κΈ°λ„ ν•©λ‹ˆλ‹€. λ°”μ΄νŠΈμ½”λ“œμ˜ λ¬Έμžμ—΄ 이름은 ν•„λ“œ 이름이 무엇이어야 ν•˜λŠ”μ§€ μ§μ ‘μ μœΌλ‘œ λŒ€μ‘ν•˜λ―€λ‘œ λ””μ»΄νŒŒμΌλŸ¬μ™€ IDEλ₯Ό ν˜Όλ™ν•  κ°€λŠ₯성이 λ†’μŠ΅λ‹ˆλ‹€.

λ„€, 그것도 μ€‘μš”ν•œ μš”μ†Œμž…λ‹ˆλ‹€. λ°©ν–₯에 λŒ€ν•œ valueOf()λŠ” 카디널을 λ°˜ν™˜ν•˜λ―€λ‘œ Mojang은 μ‹€μ œλ‘œ λ‚΄λΆ€μ μœΌλ‘œ 카디널을 μ°Έμ‘°ν•©λ‹ˆλ‹€.

μˆ˜ν‰λ©΄μ—λŠ” 일반적으둜 4가지 상황/μš©λ„κ°€ μžˆμŠ΅λ‹ˆλ‹€.

  • λͺ¨λ‘ 반볡
  • λ°˜λŒ€ (이웃 μƒν˜Έ μž‘μš©, worldgen)
  • μ’Œν‘œ 델타(예: μ—”ν‹°ν‹° 이동 μ½”λ“œ)
  • μΆ•(μΆ• 쀑첩 클래슀 μ‚¬μš© μ°Έμ‘°)

λ™μΌν•œ μ ‘λ‘μ‚¬λ‘œ 인해 μΆ• ν‘œκΈ°λ²•μœΌλ‘œ λ°˜λŒ€κ°€ μ•½κ°„ 더 λͺ…ν™•ν•©λ‹ˆλ‹€. μ’Œν‘œ λΈνƒ€λŠ” μΆ• ν‘œκΈ°λ²•μ„ κ°•λ ₯ν•˜κ²Œ μ„ ν˜Έν•©λ‹ˆλ‹€. 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에 λ™μ˜ν•©λ‹ˆλ‹€. 비둝 μ§€κΈˆ λ‹Ήμ‹ μ˜ μš”μ μ΄ μ’€ 더 λͺ…ν™•ν•˜κ²Œ λ³Ό 수 있고 그것이 μ–΄λŠ 정도 νƒ€λ‹Ήν•˜λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

λ‚˜λŠ” λ™μ˜ν•˜μ§€ μ•ŠμœΌλ©° 이것은 λ§Žμ€ ν˜Όλž€μ„ μΌμœΌν‚¬ κ²ƒμž…λ‹ˆλ‹€

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰