Skip to content
Merged
Show file tree
Hide file tree
Changes from 46 commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
8e25528
Merge remote-tracking branch 'upstream/dev/patch' into dev/feature
Absolutionism Sep 28, 2025
4190cf1
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Oct 1, 2025
018f2ef
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Oct 2, 2025
ae0e74a
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Oct 15, 2025
acd6b90
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Oct 15, 2025
c511c86
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Oct 18, 2025
7dea880
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Nov 2, 2025
827e4ae
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Nov 11, 2025
6c1f214
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Dec 4, 2025
6225fcf
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Jan 1, 2026
b7f914e
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Jan 10, 2026
7adb18e
Merge branch 'dev/feature' of https://github.com/SkriptLang/Skript in…
Absolutionism Jan 11, 2026
c7adf9e
Initial
Absolutionism Jan 16, 2026
c7cbaec
Second
Absolutionism Jan 23, 2026
2f7d4a2
Third
Absolutionism Jan 25, 2026
5d0f749
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism Jan 26, 2026
77e93f8
Fourth
Absolutionism Jan 27, 2026
7be20a8
Sovdes Requested Changes - 1
Absolutionism Jan 27, 2026
bd91ae5
Efy's Requested Changes - 1
Absolutionism Jan 27, 2026
7a3d320
Readd Old Files
Absolutionism Jan 28, 2026
add0445
Hotfix
Absolutionism Jan 28, 2026
8b67bc9
Update EntityData.java
Absolutionism Feb 1, 2026
bdd72d5
BackCompat Fix
Absolutionism Feb 1, 2026
7100ab4
Pickle's Requested Changes - Part 1 (Will Fail)
Absolutionism Feb 8, 2026
bc1872b
Pickle's Requested Changes - 2 (Fails Tests)
Absolutionism Feb 9, 2026
0148e0a
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism Feb 10, 2026
e2b045c
Partial Update - Need to Resolve Conflicts
Absolutionism Apr 17, 2026
85b3986
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism Apr 17, 2026
d315ba8
Update - ?
Absolutionism Apr 17, 2026
46d2fd3
Update - Show Sovde
Absolutionism Apr 18, 2026
81e8ebe
Working Condition
Absolutionism Apr 18, 2026
6e67e4d
Javadocs
Absolutionism Apr 24, 2026
4471705
ItemTypeComparable
Absolutionism Apr 30, 2026
b59a906
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism May 5, 2026
7d478c4
Changed Files Reduction
Absolutionism May 23, 2026
49e401d
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism May 23, 2026
9fa9adb
Re:Update elements
Absolutionism May 23, 2026
d4d1a31
Test path reverts
Absolutionism May 24, 2026
4e593c2
Update ClassesTest.java
Absolutionism May 24, 2026
0d03f48
Requested Changes
Absolutionism May 30, 2026
38139e6
Merge branch 'dev/feature' into dev/EntityDataInfoMove
Absolutionism May 30, 2026
c1c956d
Helper Methods Updated + GeneralNoun
Absolutionism Jun 6, 2026
ae0471a
Merge branch 'dev/feature' into dev/EntityDataInfoMove
Absolutionism Jun 6, 2026
5f7edcd
Partial Changes
Absolutionism Jun 22, 2026
3c27f60
Additional Changes
Absolutionism Jun 26, 2026
7ce3019
Merge branch 'dev/feature' into dev/EntityDataInfoMove
Absolutionism Jun 26, 2026
1adef42
Update gradlew.bat
Absolutionism Jun 28, 2026
6abc41e
Final Changes?
Absolutionism Jun 30, 2026
0488eb1
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism Jun 30, 2026
930297c
Merge Update
Absolutionism Jun 30, 2026
ce9a941
Fix Null EDs
Absolutionism Jul 1, 2026
6eecba4
Merge branch 'dev/feature' into dev/EntityDataInfoMove
Absolutionism Jul 1, 2026
2075abb
EntityUtils
Absolutionism Jul 1, 2026
fa62e65
Merge branch 'dev/feature' into dev/EntityDataInfoMove
Absolutionism Jul 1, 2026
23a1760
Merge branch 'dev/feature' into dev/EntityDataInfoMove
Absolutionism Jul 1, 2026
23d1fb5
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism Sep 14, 2026
85de312
Update
Absolutionism Sep 14, 2026
4897219
Merge remote-tracking branch 'upstream/dev/feature' into dev/EntityDa…
Absolutionism Oct 1, 2026
1376dce
Merge Update
Absolutionism Oct 1, 2026
d4b65e1
Update CushionData.java
Absolutionism Oct 1, 2026
147d63f
Merge branch 'dev/feature' into dev/EntityDataInfoMove
APickledWalrus Oct 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/main/java/ch/njol/skript/aliases/Aliases.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import ch.njol.skript.config.Config;
import ch.njol.skript.config.Node;
import ch.njol.skript.config.SectionNode;
import ch.njol.skript.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityData;
import ch.njol.skript.lang.parser.ParserInstance;
import ch.njol.skript.localization.*;
import ch.njol.skript.log.BlockingLogHandler;
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/ch/njol/skript/aliases/AliasesMap.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import org.bukkit.Material;
import org.jetbrains.annotations.Nullable;

import ch.njol.skript.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityData;

/**
* Stores the aliases.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import ch.njol.skript.bukkitutil.ItemUtils;
import ch.njol.skript.bukkitutil.block.BlockCompat;
import ch.njol.skript.bukkitutil.block.BlockValues;
import ch.njol.skript.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityData;
import com.google.gson.Gson;
import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet;
import java.util.ArrayList;
Expand Down
3 changes: 1 addition & 2 deletions src/main/java/ch/njol/skript/bukkitutil/EntityUtils.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
package ch.njol.skript.bukkitutil;

import ch.njol.skript.Skript;
import ch.njol.skript.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityData;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
import org.bukkit.Location;
import org.bukkit.entity.*;
import org.jetbrains.annotations.ApiStatus.ScheduledForRemoval;
import org.jetbrains.annotations.Nullable;

import java.util.HashMap;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import ch.njol.skript.bukkitutil.InventoryUtils;
import ch.njol.skript.classes.Changer.ChangeMode;
import ch.njol.skript.command.CommandEvent;
import ch.njol.skript.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityData;
import ch.njol.skript.events.bukkit.ScriptEvent;
import ch.njol.skript.events.bukkit.SkriptStartEvent;
import ch.njol.skript.events.bukkit.SkriptStopEvent;
Expand Down
34 changes: 15 additions & 19 deletions src/main/java/ch/njol/skript/classes/data/DefaultComparators.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,11 @@
import ch.njol.skript.aliases.ItemData;
import ch.njol.skript.aliases.ItemType;
import ch.njol.skript.classes.ClassInfo;
import ch.njol.skript.entity.BoatChestData;
import ch.njol.skript.entity.BoatData;
import ch.njol.skript.entity.EntityData;
import ch.njol.skript.entity.RabbitData;
import ch.njol.skript.util.*;
import ch.njol.skript.util.slot.EquipmentSlot;
import ch.njol.skript.util.slot.Slot;
import ch.njol.skript.util.slot.SlotWithIndex;
import ch.njol.util.StringUtils;
import ch.njol.util.coll.CollectionUtils;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.OfflinePlayer;
Expand All @@ -25,11 +20,18 @@
import org.bukkit.command.CommandSender;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.enchantments.EnchantmentOffer;
import org.bukkit.entity.*;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntitySnapshot;
import org.bukkit.entity.FallingBlock;
import org.bukkit.entity.Item;
import org.bukkit.entity.Projectile;
import org.bukkit.entity.Wither;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.inventory.InventoryType;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.skriptlang.skript.bukkit.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityItemTypeComparable;
import org.skriptlang.skript.lang.comparator.Comparator;
import org.skriptlang.skript.lang.comparator.Comparators;
import org.skriptlang.skript.lang.comparator.Relation;
Expand Down Expand Up @@ -270,23 +272,17 @@ public boolean supportsOrdering() {
// EntityData - ItemType
public final static Comparator<EntityData, ItemType> entityItemComparator = new Comparator<EntityData, ItemType>() {
@Override
public Relation compare(EntityData e, ItemType i) {
public Relation compare(EntityData entityData, ItemType itemType) {
// TODO fix broken comparisions - will probably require updating potion API of Skript

if (e instanceof Item)
return Relation.get(i.isOfType(((Item) e).getItemStack()));
// if (Skript.classExists("org.bukkit.entity.WitherSkull") && e instanceof WitherSkull)
// return Relation.get(i.isOfType(Material.SKULL_ITEM.getId(), (short) 1));
if (e instanceof BoatData)
return Relation.get(((BoatData)e).isOfItemType(i));
if (e instanceof BoatChestData)
return Relation.get(((BoatChestData) e).isOfItemType(i));
if (e instanceof RabbitData)
return Relation.get(i.isOfType(Material.RABBIT));
for (ItemData data : i.getTypes()) {
if (entityData instanceof Item item)
return Relation.get(itemType.isOfType(item.getItemStack()));
if (entityData instanceof EntityItemTypeComparable entityItemTypeComparable)
return Relation.get(entityItemTypeComparable.isOfItemType(itemType));
for (ItemData data : itemType.getTypes()) {
assert data != null;
EntityData<?> entity = Aliases.getRelatedEntity(data);
if (entity != null && entity.getType().isAssignableFrom(e.getType()))
if (entity != null && entity.getType().isAssignableFrom(entityData.getType()))
return Relation.EQUAL;
}
return Relation.NOT_EQUAL;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
import ch.njol.skript.command.Commands;
import ch.njol.skript.config.Config;
import ch.njol.skript.config.Node;
import ch.njol.skript.entity.EntityData;
import ch.njol.skript.entity.EntityType;
import ch.njol.skript.entity.XpOrbData;
import org.skriptlang.skript.bukkit.entity.EntityData;
import org.skriptlang.skript.bukkit.entity.EntityType;
import org.skriptlang.skript.bukkit.entity.data.XpOrbData;
import ch.njol.skript.lang.util.common.AnyAmount;
import ch.njol.skript.lang.util.common.AnyNamed;
import ch.njol.skript.util.*;
Expand Down
10 changes: 5 additions & 5 deletions src/main/java/ch/njol/skript/conditions/CondIsOfType.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import ch.njol.skript.doc.Example;
import ch.njol.skript.doc.Name;
import ch.njol.skript.doc.Since;
import ch.njol.skript.entity.EntityData;
import ch.njol.skript.lang.Condition;
import ch.njol.skript.lang.Expression;
import ch.njol.skript.lang.SkriptParser.ParseResult;
Expand All @@ -17,6 +16,7 @@
import org.bukkit.event.Event;
import org.bukkit.inventory.ItemStack;
import org.jetbrains.annotations.Nullable;
import org.skriptlang.skript.bukkit.entity.EntityData;
import org.skriptlang.skript.lang.comparator.Relation;

import java.util.function.Predicate;
Expand Down Expand Up @@ -54,10 +54,10 @@ public boolean check(Event event) {
(Predicate<Object>) o2 -> {
if (o2 instanceof ItemType && o1 instanceof ItemStack) {
return ((ItemType) o2).isSupertypeOf(new ItemType((ItemStack) o1));
} else if (o2 instanceof EntityData && o1 instanceof Entity) {
return ((EntityData<?>) o2).isInstance((Entity) o1);
} else if (o2 instanceof ItemType && o1 instanceof Entity) {
return Relation.EQUAL.isImpliedBy(DefaultComparators.entityItemComparator.compare(EntityData.fromEntity((Entity) o1), (ItemType) o2));
} else if (o2 instanceof EntityData<?> entityData && o1 instanceof Entity entity) {
return entityData.isInstance(entity);
} else if (o2 instanceof ItemType itemType && o1 instanceof Entity entity) {
return Relation.EQUAL.isImpliedBy(DefaultComparators.entityItemComparator.compare(EntityData.fromEntity(entity), itemType));
} else {
return false;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package ch.njol.skript.conditions;

import ch.njol.skript.entity.EntityData;
import ch.njol.skript.lang.util.SimpleExpression;
import org.bukkit.entity.Entity;
import org.bukkit.event.Event;
Expand All @@ -16,6 +15,7 @@
import ch.njol.skript.lang.Expression;
import ch.njol.skript.lang.SkriptParser.ParseResult;
import ch.njol.util.Kleenean;
import org.skriptlang.skript.bukkit.entity.EntityData;

@Name("Is Riding")
@Description("Tests whether an entity is riding any entity, a specific entity type, or a specific entity.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import ch.njol.skript.doc.Example;
import ch.njol.skript.doc.Name;
import ch.njol.skript.doc.Since;
import ch.njol.skript.entity.EntityData;
import ch.njol.skript.lang.Condition;
import ch.njol.skript.lang.Expression;
import ch.njol.skript.lang.SkriptParser.ParseResult;
Expand All @@ -14,6 +13,7 @@
import org.bukkit.World;
import org.bukkit.event.Event;
import org.jetbrains.annotations.Nullable;
import org.skriptlang.skript.bukkit.entity.EntityData;

@Name("Is Spawnable")
@Description("""
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/ch/njol/skript/effects/EffVehicle.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
import ch.njol.skript.doc.Example;
import ch.njol.skript.doc.Name;
import ch.njol.skript.doc.Since;
import ch.njol.skript.entity.EntityData;
import ch.njol.skript.lang.Effect;
import ch.njol.skript.lang.Expression;
import ch.njol.skript.lang.SkriptParser.ParseResult;
import ch.njol.util.Kleenean;
import org.bukkit.entity.Entity;
import org.bukkit.event.Event;
import org.jetbrains.annotations.Nullable;
import org.skriptlang.skript.bukkit.entity.EntityData;

@Name("Vehicle")
@Description("Makes an entity ride another entity, e.g. a minecart, a saddled pig, an arrow, etc.")
Expand Down
140 changes: 0 additions & 140 deletions src/main/java/ch/njol/skript/entity/BoatChestData.java

This file was deleted.

Loading
Loading