From 7216426567a4a15eaf37e73e8699570f7704c719 Mon Sep 17 00:00:00 2001 From: Clisprail Date: Tue, 5 Aug 2014 20:31:58 +0200 Subject: [PATCH] Reflection support for accessors (wrappers) --- src/org/rev317/min/api/wrappers/Character.java | 9 +++++++++ src/org/rev317/min/api/wrappers/GroundItem.java | 9 +++++++++ src/org/rev317/min/api/wrappers/Npc.java | 10 ++++++++++ src/org/rev317/min/api/wrappers/NpcDef.java | 10 ++++++++++ src/org/rev317/min/api/wrappers/SceneObject.java | 9 +++++++++ 5 files changed, 47 insertions(+) diff --git a/src/org/rev317/min/api/wrappers/Character.java b/src/org/rev317/min/api/wrappers/Character.java index bff063a..b1f93c8 100644 --- a/src/org/rev317/min/api/wrappers/Character.java +++ b/src/org/rev317/min/api/wrappers/Character.java @@ -1,5 +1,6 @@ package org.rev317.min.api.wrappers; +import org.parabot.core.reflect.RefClass; import org.rev317.min.Loader; import org.rev317.min.api.interfaces.Locatable; import org.rev317.min.api.methods.Calculations; @@ -144,6 +145,14 @@ public class Character implements Locatable { } return null; } + + /** + * Gets the accessor class + * @return RefClass of accessor + */ + public RefClass getRefClass() { + return new RefClass(this.accessor); + } @Override public int hashCode() { diff --git a/src/org/rev317/min/api/wrappers/GroundItem.java b/src/org/rev317/min/api/wrappers/GroundItem.java index dc6dafa..5db0740 100644 --- a/src/org/rev317/min/api/wrappers/GroundItem.java +++ b/src/org/rev317/min/api/wrappers/GroundItem.java @@ -1,5 +1,6 @@ package org.rev317.min.api.wrappers; +import org.parabot.core.reflect.RefClass; import org.rev317.min.api.interfaces.Locatable; import org.rev317.min.api.methods.Calculations; import org.rev317.min.api.methods.Game; @@ -75,5 +76,13 @@ public class GroundItem implements Locatable { public int getId() { return accessor.getId(); } + + /** + * Gets the accessor class + * @return RefClass of accessor + */ + public RefClass getRefClass() { + return new RefClass(this.accessor); + } } diff --git a/src/org/rev317/min/api/wrappers/Npc.java b/src/org/rev317/min/api/wrappers/Npc.java index ecff3dc..7e41643 100644 --- a/src/org/rev317/min/api/wrappers/Npc.java +++ b/src/org/rev317/min/api/wrappers/Npc.java @@ -1,5 +1,7 @@ package org.rev317.min.api.wrappers; +import org.parabot.core.reflect.RefClass; + /** * * @author Everel @@ -21,5 +23,13 @@ public final class Npc extends Character { public final NpcDef getDef() { return new NpcDef(this.accessor.getDef()); } + + /** + * Gets the accessor class + * @return RefClass of accessor + */ + public RefClass getRefClass() { + return new RefClass(this.accessor); + } } diff --git a/src/org/rev317/min/api/wrappers/NpcDef.java b/src/org/rev317/min/api/wrappers/NpcDef.java index 5524e23..642e6d4 100644 --- a/src/org/rev317/min/api/wrappers/NpcDef.java +++ b/src/org/rev317/min/api/wrappers/NpcDef.java @@ -1,5 +1,7 @@ package org.rev317.min.api.wrappers; +import org.parabot.core.reflect.RefClass; + /** * * @author Everel @@ -19,6 +21,14 @@ public class NpcDef { public int getId() { return accessor.getId(); } + + /** + * Gets the accessor class + * @return RefClass of accessor + */ + public RefClass getRefClass() { + return new RefClass(this.accessor); + } } diff --git a/src/org/rev317/min/api/wrappers/SceneObject.java b/src/org/rev317/min/api/wrappers/SceneObject.java index 6222618..004c3e3 100644 --- a/src/org/rev317/min/api/wrappers/SceneObject.java +++ b/src/org/rev317/min/api/wrappers/SceneObject.java @@ -1,5 +1,6 @@ package org.rev317.min.api.wrappers; +import org.parabot.core.reflect.RefClass; import org.rev317.min.accessors.SceneObjectTile; import org.rev317.min.api.interfaces.Locatable; import org.rev317.min.api.methods.Calculations; @@ -93,6 +94,14 @@ public class SceneObject implements Locatable { Menu.interact(this, actionIndex); } + /** + * Gets the accessor class + * @return RefClass of accessor + */ + public RefClass getRefClass() { + return new RefClass(this.accessor); + } + @Override public String toString() { return String.format("[ID: %d, X: %d, Y: %d]", getId(), getLocalRegionX(), getLocalRegionY());