개인 자료란 (JE)

  서버 커뮤니티

Profile APSODE 대표칭호 없음
Profile

이해도 플러그인 


net.minecraft.server.v1_16_R3.ItemStack NMS_TARGET_ITEM = CraftItemStack.asNMSCopy(TARGET_ITEM);
net.minecraft.server.v1_16_R3.Item NMS_TARGET_ITEM_DATA = NMS_TARGET_ITEM.getItem();

Multimap<AttributeBase, net.minecraft.server.v1_16_R3.AttributeModifier> N = NMS_TARGET_ITEM_DATA.getAttributesForSlot(EnumItemSlot.MAINHAND);

구글링 하다보니 NMS의 ItemStack에서 getItem()메소드를 이용해서 AttributeModifier를 가져오는 방법이 있던데 제가 봤던 방법은 NMS  v1_12_R1에서 Multimap<String, AttributeModifier>이었는데 NMS 1_16_v3에서는 Multimap<AttributeBase, AttributeModifier>이더라구요.

v1_12_R1에서는 String타입으로 Attribute의 키값으로 이용해서 가져오면 된다고 봤는데 v1_16_R3 AttributeBase는 어떻게 사용해야하는지 모르겠네요.



혹시 전달이 잘 안됬을까봐 제가 봤던 코드 링크도 남깁니다.

https://www.spigotmc.org/threads/how-to-get-attack-damage-attributemodifier-from-an-itemstack-as-displayed-on-items-in-game.284455/


5개의 댓글

0reo
2022.08.06

.getName() 메소드만 없애면 될거같아요 안되시면 다시 말씀주세요 클래스파일 뜯어서 확인해볼게요

0reo
2022.08.06
net.minecraft.server.v1_16_R3.ItemStack craftItemStack = CraftItemStack.asNMSCopy(new org.bukkit.inventory.ItemStack(Material.GOLDEN_AXE));
net.minecraft.server.v1_16_R3.Item craftItem = craftItemStack.getItem();
Multimap<net.minecraft.server.v1_16_R3.AttributeBase, net.minecraft.server.v1_16_R3.AttributeModifier> map = craftItem.a(EnumItemSlot.MAINHAND);
Collection<net.minecraft.server.v1_16_R3.AttributeModifier> attributeModifiers = map.get(net.minecraft.server.v1_16_R3.GenericAttributes.ATTACK_DAMAGE);
APSODE
2022.08.06
@0reo

진짜진짜 존나 감사합니다 ㅠㅠㅠㅠㅠ

덕분에 며칠째 막혀있던 부분 구현할수 있을것 같아요 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

 

근데 nms는 직접 IDE에서 디컴파일된 코드 보면서 역할을 유추할수밖에 없는건가요..?

0reo
2022.08.06
@APSODE

님이 원하시는 부분을 찾으시려면 그거를 하셔야죠...?

일단 이거 맞으면 다행이구 spigot-1.16.5.jar 압축푸신다음에 net.minecraft.server.~ 들어가셔서 찾으신담에 뜯어보시면 어느 정도 유추는 되실거에요

APSODE
2022.08.06
@0reo

그렇군요 알려주셔서 감사해요!

뉴스 및 창작물
/files/thumbnails/308/815/003/262x150.crop.jpg?20240617084353

레드스톤

[피아노커버] 디스코드 - QWER

노트블럭전문가

2024-06-17

0

/files/thumbnails/932/812/003/262x150.crop.jpg?20240616121638

업데이트

마인크래프트 1.21 정식 업데이트

학교가기싫다

2024-06-14

1

/files/thumbnails/308/805/003/262x150.crop.jpg?20240605201646

레드스톤

[노트블럭 커버] 팬서비스/mona 【 HoneyWorks 】

노트블럭전문가

2024-06-05

0

/files/thumbnails/288/791/003/262x150.crop.jpg?20240602150002

아티클

《까다로운 시련》 업데이트 날짜 공개 및 정보

학교가기싫다

2024-06-02

0

/files/thumbnails/841/773/003/262x150.crop.jpg?20240526120908

레드스톤

마인크래프트 노트블록버전 『 봄을 고하다 (春を告げる) 』 [더블옥타브 버전]

노트블럭전문가

2024-05-26

0