fixed null properties when adding, fixes tab complete

This commit is contained in:
D3v1s0m 2023-07-10 18:56:57 +05:30
parent 3411a504e0
commit 29c3c4b22b
No known key found for this signature in database
GPG Key ID: 3B6EC35367B8D82E

@ -67,7 +67,10 @@ public class NpcTypeImpl implements NpcType {
} }
public Builder addProperties(String... names) { public Builder addProperties(String... names) {
for (String name : names) allowedProperties.add(propertyRegistry.getByName(name)); for (String name : names) {
if (propertyRegistry.getByName(name) != null) continue;
allowedProperties.add(propertyRegistry.getByName(name));
}
return this; return this;
} }
@ -77,21 +80,14 @@ public class NpcTypeImpl implements NpcType {
} }
public NpcTypeImpl build() { public NpcTypeImpl build() {
allowedProperties.add(propertyRegistry.getByName("fire")); addProperties("fire", "invisible", "silent", "look", "skin_cape",
allowedProperties.add(propertyRegistry.getByName("invisible")); "using_item", "potion_color", "potion_ambient", "dinnerbone");
allowedProperties.add(propertyRegistry.getByName("silent"));
allowedProperties.add(propertyRegistry.getByName("look"));
allowedProperties.add(propertyRegistry.getByName("skin_cape"));
allowedProperties.add(propertyRegistry.getByName("using_item"));
allowedProperties.add(propertyRegistry.getByName("potion_color"));
allowedProperties.add(propertyRegistry.getByName("potion_ambient"));
allowedProperties.add(propertyRegistry.getByName("dinnerbone"));
if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_9)) if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_9))
allowedProperties.add(propertyRegistry.getByName("glow")); addProperties("glow");
if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_14)) if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_14))
allowedProperties.add(propertyRegistry.getByName("pose")); addProperties("pose");
if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_17)) if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_17))
allowedProperties.add(propertyRegistry.getByName("shaking")); addProperties("shaking");
return new NpcTypeImpl(name, type, hologramOffset, new HashSet<>(allowedProperties)); return new NpcTypeImpl(name, type, hologramOffset, new HashSet<>(allowedProperties));
} }
} }