-
Notifications
You must be signed in to change notification settings - Fork 17
/
EntityBlock.java
215 lines (205 loc) · 4.76 KB
/
EntityBlock.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
package com.griefcraft.bukkit;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.World;
import org.bukkit.block.Biome;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.block.BlockState;
import org.bukkit.block.PistonMoveReaction;
import org.bukkit.block.data.BlockData;
import org.bukkit.entity.Entity;
import org.bukkit.inventory.ItemStack;
import org.bukkit.metadata.MetadataValue;
import org.bukkit.plugin.Plugin;
public class EntityBlock implements Block {
public static final int ENTITY_BLOCK_ID = 5000;
public static final int POSITION_OFFSET = 50000;
private Entity entity;
public String version;
public EntityBlock(Entity entity) {
this.entity = entity;
}
@Override
public int getX() {
return POSITION_OFFSET + this.entity.getUniqueId().hashCode();
}
@Override
public int getY() {
return POSITION_OFFSET + this.entity.getUniqueId().hashCode();
}
@Override
public int getZ() {
return POSITION_OFFSET + this.entity.getUniqueId().hashCode();
}
@Override
public World getWorld() {
return this.entity.getWorld();
}
public Entity getEntity() {
return this.entity;
}
public static Block getEntityBlock(Entity entity) {
return new EntityBlock(entity);
}
@Override
public void setMetadata(String metadataKey, MetadataValue newMetadataValue) {
}
@Override
public List<MetadataValue> getMetadata(String metadataKey) {
return null;
}
@Override
public boolean hasMetadata(String metadataKey) {
return false;
}
@Override
public void removeMetadata(String metadataKey, Plugin owningPlugin) {
}
@Override
public byte getData() {
return 0;
}
@Override
public Block getRelative(int modX, int modY, int modZ) {
return null;
}
@Override
public Block getRelative(BlockFace face) {
return null;
}
@Override
public Block getRelative(BlockFace face, int distance) {
return null;
}
@Override
public Material getType() {
return Material.AIR;
}
@Override
public byte getLightLevel() {
return 0;
}
@Override
public byte getLightFromSky() {
return 0;
}
@Override
public byte getLightFromBlocks() {
return 0;
}
@Override
public Location getLocation() {
return entity.getLocation();
}
@Override
public Location getLocation(Location loc) {
return entity.getLocation(loc);
}
@Override
public Chunk getChunk() {
return getLocation().getChunk();
}
@Override
public void setType(Material type) {
}
@Override
public void setType(Material type, boolean applyPhysics) {
}
@Override
public BlockData getBlockData() {
return null;
}
@Override
public void setBlockData(BlockData data) {
}
@Override
public void setBlockData(BlockData data, boolean applyPhysics) {
}
@Override
public BlockFace getFace(Block block) {
return null;
}
@Override
public BlockState getState() {
return null;
}
public BlockState getState(boolean create) {
return null;
}
@Override
public Biome getBiome() {
return null;
}
@Override
public void setBiome(Biome bio) {
}
@Override
public boolean isBlockPowered() {
return false;
}
@Override
public boolean isBlockIndirectlyPowered() {
return false;
}
@Override
public boolean isBlockFacePowered(BlockFace face) {
return false;
}
@Override
public boolean isBlockFaceIndirectlyPowered(BlockFace face) {
return false;
}
@Override
public int getBlockPower(BlockFace face) {
return 0;
}
@Override
public int getBlockPower() {
return 0;
}
@Override
public boolean isEmpty() {
return false;
}
@Override
public boolean isLiquid() {
return false;
}
@Override
public double getTemperature() {
return 0;
}
@Override
public double getHumidity() {
return 0;
}
@Override
public PistonMoveReaction getPistonMoveReaction() {
return null;
}
@Override
public boolean breakNaturally() {
return false;
}
@Override
public boolean breakNaturally(ItemStack tool) {
return false;
}
@Override
public Collection<ItemStack> getDrops() {
return Collections.emptyList();
}
@Override
public Collection<ItemStack> getDrops(ItemStack tool) {
return Collections.emptyList();
}
@Override
public boolean isPassable() {
return true;
}
}