DataWatcherに登録されているフィールド
注意事項
このリファレンスは筆者が記述した時点での拙い知識で翻訳、解釈したもののメモです。
誤訳や理解不足の可能性を多分に含みます。ご覧になる際はご注意ください。
ソースは1.8.9 - 11.15.1.1722のものを使用しています。
1.9からDataWatcherに代わってEntityDataManagerが使用されています。
この表でもわかるようにクラスごとにIDが指しているオブジェクトの意味も型も違っているため、その混乱を避ける意味と、キャストが減り、実行速度の改善とメモリの適正な使用が期待できるという理由から変更されたのだと思われます。おそらくこの効果は追加するエンティティが多い大型のMODほど高いです。
DataWatcherに登録されているフィールド
主にベースクラスのものをソースコードから拾っています。
DataWatcher-id | 宣言クラス#プロパティ名 | 型 | 用途 |
0 | Entity#flag | boolean(byte) | 一つのオブジェクトに5つのflagを詰め込んでいる。0:isBurning,1:isSneaking,2:isRiding,3:isSprinting,4:isEating |
1 | Entity#air | Short | 呼吸量? |
2 | Entity#customNameTag | String | エンティティの固有名 |
3 | Entity#allwaysRenderNameTag | boolean(byte) | 名前を常時表示するかどうか |
4 | Entity#silent | boolean(byte) | 音を出すかどうか |
6 | EntityLivingBase#helth | float | 体力値 |
7 | EntityLivingBase#potionMetadata | Integer | ポーション効果の色 |
8 | EntityLivingBase#portionMetadata | boolean(byte) | ポーション効果があるかどうか |
9 | EntityLivingBase#arrowCountInEntity | byte | エンティティに刺さっている矢の数 |
10 | EntityPlayer | byte | 不明 |
12 | EntityAgeable#growingAge | byte | 成長までの年齢(時間) |
15 | EntityLivig#isAiDisabled | boolean(byte) | AIを使用するかどうか |
16 | EntityTameable#isSitting | boolean(bit1) | お座り状態か |
16 | EntityTameable#isTamed | boolean(bit4) | テイムされているかどうか |
16 | EntityVilager#profession | Integer | 村人の職業 |
17 | EntytyPlayer#absorptionAmount | float | 呼吸量 |
17 | EntityTameable#ownerId | String | 飼い主のID |
18 | EntityPlayer#score | Integer | スコア(経験値) |