Move some classes into the new org.apollo.game.model.entity package, and update plugins and classes that reference these.

This commit is contained in:
Major-
2014-07-03 01:02:02 +01:00
parent 5b173fc7ae
commit 9d8e7cda0a
116 changed files with 274 additions and 190 deletions
+1 -1
View File
@@ -18,8 +18,8 @@ java_import 'org.apollo.game.command.CommandListener'
java_import 'org.apollo.game.event.handler.EventHandler'
java_import 'org.apollo.game.login.LoginListener'
java_import 'org.apollo.game.login.LogoutListener'
java_import 'org.apollo.game.model.Player'
java_import 'org.apollo.game.model.World'
java_import 'org.apollo.game.model.entity.Player'
java_import 'org.apollo.game.model.settings.PrivilegeLevel'
java_import 'org.apollo.game.scheduling.ScheduledTask'
+1
View File
@@ -22,5 +22,6 @@ on :command, :graphic, RIGHTS_MOD do |player, command|
return
end
player.send(DisplayCrossbonesEvent.new(true ))
player.play_graphic(Graphic.new(args[0].to_i))
end
+2 -2
View File
@@ -1,11 +1,11 @@
require 'java'
java_import 'org.apollo.game.model.Entity'
java_import 'org.apollo.game.model.Player'
java_import 'org.apollo.game.model.World'
java_import 'org.apollo.game.model.def.ItemDefinition'
java_import 'org.apollo.game.model.def.NpcDefinition'
java_import 'org.apollo.game.model.def.ObjectDefinition'
java_import 'org.apollo.game.model.entity.Entity'
java_import 'org.apollo.game.model.entity.Player'
on :command, :lookup, RIGHTS_ADMIN do |player, command|
args = command.arguments.to_a
+1 -1
View File
@@ -1,8 +1,8 @@
require 'java'
java_import 'org.apollo.game.model.Npc'
java_import 'org.apollo.game.model.World'
java_import 'org.apollo.game.model.Position'
java_import 'org.apollo.game.model.entity.Npc'
# An array of npcs that cannot be spawned.
blacklist = []
+2 -2
View File
@@ -1,6 +1,6 @@
require 'java'
java_import 'org.apollo.game.model.SkillSet'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.SkillSet'
java_import 'org.apollo.game.model.entity.Skill'
# Maximises the player's skill set.
on :command, :max, RIGHTS_ADMIN do |player, command|
+2 -2
View File
@@ -1,8 +1,8 @@
require 'java'
java_import 'org.apollo.game.model.Animation'
java_import 'org.apollo.game.model.Player'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.Skill'
java_import 'org.apollo.game.model.entity.Player'
EAT_FOOD_SOUND = 317
+1 -1
View File
@@ -1,6 +1,6 @@
require 'java'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.Skill'
DRINK_POTION_SOUND = 334
+1 -1
View File
@@ -1,7 +1,7 @@
require 'java'
java_import 'org.apollo.game.action.DistancedAction'
java_import 'org.apollo.game.model.Animation'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.Skill'
# TODO: this shouldn't use the punch animation/delay, but should use the one
# from the active weapon/attack style (according to Scu11 anyway).
+6 -9
View File
@@ -1,16 +1,11 @@
require 'java'
java_import 'org.apollo.game.model.Entity'
java_import 'org.apollo.game.model.entity.Entity'
# Maps attribute names (i.e. symbols) to attribute definitions.
ATTRIBUTE_DEFINITIONS = {}
class Entity
# The map of strings to attributes.
def attributes
@attributes ||= {}
end
# Overridies method_missing
def method_missing(symbol, *args)
@@ -20,11 +15,13 @@ class Entity
raise "Error - expected argument count of 1, received #{args.length}" unless args.length == 1
name = name[0...-1].strip # Drop the equals and preceeding whitespace
attributes[name] = args[0]
attributes[name] = args[0].is_a?(Symbol) ? args[0].to_s : args[0]
elsif ATTRIBUTE_DEFINITIONS[name] == nil
super(symbol, *args)
else
return attributes[name] || ATTRIBUTE_DEFINITIONS[name].default
if attributes[name] == nil then return ATTRIBUTE_DEFINITIONS[name].default end
return ATTRIBUTE_DEFINITIONS[name].type == :symbol ? attributes[name].to_sym : attributes[name]
end
end
@@ -36,7 +33,7 @@ end
# An attribute belonging to an entity.
class AttributeDefinition
attr_reader :default, :persistence
attr_reader :default, :type, :persistence
def initialize(default, persistence=:transient)
@default = default
+20 -27
View File
@@ -3,10 +3,10 @@ require 'java'
java_import 'org.apollo.game.action.Action'
java_import 'org.apollo.game.model.Animation'
java_import 'org.apollo.game.model.Graphic'
java_import 'org.apollo.game.model.Npc'
java_import 'org.apollo.game.model.Position'
java_import 'org.apollo.game.model.World'
java_import 'org.apollo.game.model.def.NpcDefinition'
java_import 'org.apollo.game.model.entity.Npc'
# Information about npc spawning
#
@@ -61,16 +61,12 @@ end
# Applies a decoded hash (one aquired using parse_hash) to the specified npc.
def apply_decoded_hash(npc, hash)
hash.each do |key, value|
if key == :face
npc.turn_to(value)
elsif key == :boundary
npc.boundary = value
elsif key == :spawn_animation
npc.play_animation(Animation.new(value))
elsif key == :spawn_graphic
npc.play_graphic(Graphic.new(value))
else
raise "Unrecognised key #{key} - value #{value}."
case key
when :face then npc.turn_to(value)
when :boundary then npc.boundary = value
when :spawn_animation then npc.play_animation(Animation.new(value))
when :spawn_graphic then npc.play_graphic(Graphic.new(value))
else raise "Unrecognised key #{key} - value #{value}."
end
end
end
@@ -78,23 +74,20 @@ end
# Parses the remaining key-value pairs in the hash.
def decode_hash(position, hash)
decoded = {}
hash.each do |key, value|
if key == :face
facing_position = direction_to_position(value, position)
decoded[:face] = facing_position
elsif key == :bounds
decoded[:boundary] = value
elsif key == :delta_bounds
dx, dy, x, y, z = value[0], value[1], position.x, position.y, position.height
raise 'Delta values cannot be < 0.' if dx < 0 || dy < 0
hash.each do |key, value|
case key
when :face
facing_position = direction_to_position(value, position)
decoded[:face] = facing_position
when :delta_bounds
dx, dy, x, y, z = value[0], value[1], position.x, position.y, position.height
raise 'Delta values cannot be less than 0.' if dx < 0 || dy < 0
decoded[:boundary] = [ Position.new(x + dx, y, z), Position.new(x, y + dy, z), Position.new(x - dx, y, z), Position.new(x, y - dy, z) ]
elsif key == :spawn_animation
decoded[:spawn_animation] = Animation.new(value)
elsif key == :spawn_graphic
decoded[:spawn_graphic] = Graphic.new(value)
else
raise "Unrecognised key #{key} - value #{value}."
decoded[:boundary] = [ Position.new(x + dx, y, z), Position.new(x, y + dy, z), Position.new(x - dx, y, z), Position.new(x, y - dy, z) ]
when :bounds then decoded[:boundary] = value
when :spawn_animation then decoded[:spawn_animation] = Animation.new(value)
when :spawn_graphic then decoded[:spawn_graphic] = Graphic.new(value)
else raise "Unrecognised key #{key} - value #{value}."
end
end
return decoded
+1
View File
@@ -9,6 +9,7 @@
</authors>
<scripts>
<script>npc-spawn.rb</script>
<script>item-spawn.rb</script>
</scripts>
<dependencies />
</plugin>
+1 -1
View File
@@ -2,10 +2,10 @@ require 'java'
java_import 'org.apollo.game.event.impl.FriendServerStatusEvent'
java_import 'org.apollo.game.event.impl.SendFriendEvent'
java_import 'org.apollo.game.model.Player'
java_import 'org.apollo.game.model.World'
java_import 'org.apollo.game.model.settings.ServerStatus'
java_import 'org.apollo.game.model.settings.PrivacyState'
java_import 'org.apollo.game.model.entity.Player'
# Processes an add friend event, updating the logged-in status of the player (and the person they added) if necessary.
+3 -1
View File
@@ -10,5 +10,7 @@
<scripts>
<script>run.rb</script>
</scripts>
<dependencies />
<dependencies>
<dependency>attributes</dependency>
</dependencies>
</plugin>
+1 -1
View File
@@ -4,7 +4,7 @@
require 'java'
java_import 'org.apollo.game.event.impl.SetWidgetItemModelEvent'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.Skill'
HERBLORE_DIALOGUE = 4429
+1 -1
View File
@@ -1,6 +1,6 @@
require 'java'
java_import 'org.apollo.game.model.EquipmentConstants'
java_import 'org.apollo.game.model.entity.EquipmentConstants'
AIR_ELEMENTS = {}
WATER_ELEMENTS = {}
+2 -2
View File
@@ -2,8 +2,8 @@ require 'java'
java_import 'org.apollo.game.action.Action'
java_import 'org.apollo.game.event.impl.DisplayTabInterfaceEvent'
java_import 'org.apollo.game.model.EquipmentConstants'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.EquipmentConstants'
java_import 'org.apollo.game.model.entity.Skill'
DISPLAY_SPELLBOOK = DisplayTabInterfaceEvent.new(6)
+1 -1
View File
@@ -1,8 +1,8 @@
require 'java'
java_import 'org.apollo.game.action.DistancedAction'
java_import 'org.apollo.game.model.EquipmentConstants'
java_import 'org.apollo.game.model.def.ItemDefinition'
java_import 'org.apollo.game.model.entity.EquipmentConstants'
PROSPECT_PULSES = 3
ORE_SIZE = 1
+2 -2
View File
@@ -2,12 +2,12 @@ require 'java'
java_import 'org.apollo.game.action.Action'
java_import 'org.apollo.game.model.Animation'
java_import 'org.apollo.game.model.Skill'
java_import 'org.apollo.game.model.entity.Skill'
BURY_BONE_ANIMATION = 827
BONES = {}
# Represents a bone with a name, id, and experience.
# Represents a bone with an id and experience value.
class Bone
attr_reader :id, :exp
+1 -1
View File
@@ -11,9 +11,9 @@ import java.util.concurrent.TimeUnit;
import org.apollo.Service;
import org.apollo.game.event.handler.chain.EventHandlerChainGroup;
import org.apollo.game.model.Player;
import org.apollo.game.model.World;
import org.apollo.game.model.World.RegistrationStatus;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.ClientSynchronizer;
import org.apollo.io.EventHandlerChainParser;
import org.apollo.io.RsaKeyParser;
+1 -1
View File
@@ -1,6 +1,6 @@
package org.apollo.game.action;
import org.apollo.game.model.Mob;
import org.apollo.game.model.entity.Mob;
import org.apollo.game.scheduling.ScheduledTask;
/**
@@ -1,7 +1,7 @@
package org.apollo.game.action;
import org.apollo.game.model.Mob;
import org.apollo.game.model.Position;
import org.apollo.game.model.entity.Mob;
/**
* An @{link Action} which fires when a distance requirement is met.
@@ -3,7 +3,7 @@ package org.apollo.game.command;
import java.util.HashMap;
import java.util.Map;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A class that dispatches {@link Command}s to {@link CommandListener}s.
@@ -1,6 +1,6 @@
package org.apollo.game.command;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.settings.PrivilegeLevel;
/**
@@ -4,8 +4,8 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import org.apollo.game.model.Player;
import org.apollo.game.model.World;
import org.apollo.game.model.entity.Player;
import org.apollo.util.plugin.PluginManager;
/**
@@ -1,7 +1,7 @@
package org.apollo.game.event.handler;
import org.apollo.game.event.Event;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A class which handles events.
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.chain;
import org.apollo.game.event.Event;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A chain of event handlers.
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ButtonEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} that responds to {@link ButtonEvent}s for withdrawing items as notes.
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ItemActionEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.bank.BankConstants;
import org.apollo.game.model.inter.bank.BankDepositEnterAmountListener;
import org.apollo.game.model.inter.bank.BankUtils;
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ChatEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.block.SynchronizationBlock;
/**
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ChatEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} that verifies {@link ChatEvent}s.
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ClosedInterfaceEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} for the {@link ClosedInterfaceEvent}.
@@ -14,6 +14,7 @@ public final class ClosedInterfaceEventHandler extends EventHandler<ClosedInterf
@Override
public void handle(EventHandlerContext ctx, Player player, ClosedInterfaceEvent event) {
System.out.println("closing interface");
player.getInterfaceSet().interfaceClosed();
}
@@ -4,8 +4,8 @@ import org.apollo.game.command.Command;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.CommandEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.World;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} that dispatches {@link CommandEvent}s.
@@ -3,8 +3,8 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ButtonEvent;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.InterfaceType;
import org.apollo.game.model.Player;
/**
* An {@link EventHandler} which intercepts button clicks on dialogues, and forwards the event to the current listener.
@@ -3,8 +3,8 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.DialogueContinueEvent;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.InterfaceType;
import org.apollo.game.model.Player;
/**
* An {@link EventHandler} for the {@link DialogueContinueEvent}.
@@ -3,7 +3,7 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.EnteredAmountEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} for the {@link EnteredAmountEvent}.
@@ -3,12 +3,12 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ItemOptionEvent;
import org.apollo.game.model.EquipmentConstants;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.Skill;
import org.apollo.game.model.def.EquipmentDefinition;
import org.apollo.game.model.entity.EquipmentConstants;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.entity.Skill;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
import org.apollo.util.LanguageUtil;
@@ -3,10 +3,10 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ItemOnItemEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.bank.BankConstants;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
/**
@@ -3,10 +3,10 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ItemOnObjectEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.bank.BankConstants;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
/**
@@ -3,10 +3,10 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.InventoryItemEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.bank.BankConstants;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
/**
@@ -3,10 +3,10 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.NpcActionEvent;
import org.apollo.game.model.Npc;
import org.apollo.game.model.Player;
import org.apollo.game.model.World;
import org.apollo.game.model.WorldConstants;
import org.apollo.game.model.entity.Npc;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} that verifies {@link org.apollo.game.event.impl.NpcActionEvent}
@@ -4,7 +4,7 @@ import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.CloseInterfaceEvent;
import org.apollo.game.event.impl.PlayerDesignEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An {@link EventHandler} that handles {@link PlayerDesignEvent}s.
@@ -4,7 +4,7 @@ import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.PlayerDesignEvent;
import org.apollo.game.model.Appearance;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.settings.Gender;
/**
@@ -3,9 +3,9 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.ItemActionEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
/**
@@ -3,9 +3,9 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.SwitchItemEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.bank.BankConstants;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
/**
@@ -3,9 +3,9 @@ package org.apollo.game.event.handler.impl;
import org.apollo.game.event.handler.EventHandler;
import org.apollo.game.event.handler.EventHandlerContext;
import org.apollo.game.event.impl.WalkEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.Position;
import org.apollo.game.model.WalkingQueue;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.entity.WalkingQueue;
/**
* A{@link EventHandler} that handles {@link WalkEvent}s.
@@ -3,8 +3,8 @@ package org.apollo.game.event.impl;
import java.util.List;
import org.apollo.game.event.Event;
import org.apollo.game.model.Npc;
import org.apollo.game.model.Position;
import org.apollo.game.model.entity.Npc;
import org.apollo.game.sync.seg.SynchronizationSegment;
/**
@@ -1,7 +1,7 @@
package org.apollo.game.event.impl;
import org.apollo.game.event.Event;
import org.apollo.game.model.Skill;
import org.apollo.game.model.entity.Skill;
/**
* An {@link Event} sent to the client to update a player's skill level.
@@ -1,7 +1,7 @@
package org.apollo.game.event.impl;
import org.apollo.game.event.Event;
import org.apollo.game.model.SlottedItem;
import org.apollo.game.model.inv.SlottedItem;
/**
* An {@link Event} sent to the client that updates a single item in an interface.
@@ -3,7 +3,7 @@ package org.apollo.game.login;
import java.util.ArrayList;
import java.util.List;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A class that dispatches {@link Player}s to {@link LoginListener}s.
+1 -1
View File
@@ -1,6 +1,6 @@
package org.apollo.game.login;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A class that should be extended for actions that should be executed when the player logs in.
@@ -3,7 +3,7 @@ package org.apollo.game.login;
import java.util.ArrayList;
import java.util.List;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A class that dispatches {@link Player}s to {@link LogoutListener}s.
@@ -1,6 +1,6 @@
package org.apollo.game.login;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An interface that should be implemented for actions that should be executed when the player logs out.
+3
View File
@@ -21,6 +21,9 @@ import org.apollo.game.model.def.EquipmentDefinition;
import org.apollo.game.model.def.ItemDefinition;
import org.apollo.game.model.def.NpcDefinition;
import org.apollo.game.model.def.ObjectDefinition;
import org.apollo.game.model.entity.Entity;
import org.apollo.game.model.entity.Npc;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.obj.GameObject;
import org.apollo.game.model.sector.Sector;
import org.apollo.game.model.sector.SectorCoordinates;
+2 -2
View File
@@ -5,8 +5,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apollo.game.model.Entity;
import org.apollo.game.model.Entity.EntityType;
import org.apollo.game.model.entity.Entity;
import org.apollo.game.model.entity.Entity.EntityType;
import org.apollo.game.model.Position;
/**
@@ -1,6 +1,6 @@
package org.apollo.game.model.area;
import org.apollo.game.model.Entity;
import org.apollo.game.model.entity.Entity;
/**
* A class that should be extended by listeners that execute actions when an entity is added or removed from the sector.
@@ -4,7 +4,7 @@ import java.util.HashMap;
import java.util.Map;
import org.apollo.game.model.Item;
import org.apollo.game.model.Skill;
import org.apollo.game.model.entity.Skill;
/**
* Represents a type of {@link Item} which may be equipped.
@@ -1,6 +1,6 @@
package org.apollo.game.model.def;
import org.apollo.game.model.Npc;
import org.apollo.game.model.entity.Npc;
/**
* Represents a type of {@link Npc}.
@@ -1,4 +1,11 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import org.apollo.game.model.Position;
/**
* Represents an in-game entity, such as a mob, object, projectile etc.
@@ -41,6 +48,11 @@ public abstract class Entity {
}
/**
* A map of attribute names to attributes.
*/
protected final Map<String, Object> attributes = new HashMap<>(5);
/**
* The position of this entity.
*/
@@ -55,6 +67,25 @@ public abstract class Entity {
this.position = position;
}
/**
* Gets the value of the attribute with the specified name.
*
* @param name The name of the attribute.
* @return The value of the attribute.
*/
public final Object getAttribute(String name) {
return attributes.get(name);
}
/**
* Gets all of the attributes of this entity, as a {@link Set} of {@link Entry} objects.
*
* @return The set of attributes.
*/
public final Set<Entry<String, Object>> getAttributes() {
return attributes.entrySet();
}
/**
* Gets the {@link EntityType} of this entity.
*
@@ -71,4 +102,14 @@ public abstract class Entity {
return position;
}
/**
* Sets the value of the attribute with the specified name.
*
* @param name The name of the attribute.
* @param value The value of the attribute.
*/
public final void setAttribute(String name, Object value) {
attributes.put(name, value);
}
}
@@ -1,4 +1,4 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
/**
* Contains equipment-related constants.
@@ -1,11 +1,18 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
import java.util.ArrayList;
import java.util.List;
import org.apollo.game.action.Action;
import org.apollo.game.model.Inventory.StackMode;
import org.apollo.game.model.Animation;
import org.apollo.game.model.Direction;
import org.apollo.game.model.Graphic;
import org.apollo.game.model.Position;
import org.apollo.game.model.World;
import org.apollo.game.model.def.NpcDefinition;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.InventoryConstants;
import org.apollo.game.model.inv.Inventory.StackMode;
import org.apollo.game.scheduling.impl.SkillNormalizationTask;
import org.apollo.game.sync.block.SynchronizationBlock;
import org.apollo.game.sync.block.SynchronizationBlockSet;
@@ -1,5 +1,6 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
import org.apollo.game.model.Position;
import org.apollo.game.model.def.NpcDefinition;
import org.apollo.game.sync.block.SynchronizationBlock;
@@ -1,4 +1,4 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
import java.util.ArrayDeque;
import java.util.ArrayList;
@@ -15,7 +15,9 @@ import org.apollo.game.event.impl.ServerMessageEvent;
import org.apollo.game.event.impl.SetWidgetTextEvent;
import org.apollo.game.event.impl.SwitchTabInterfaceEvent;
import org.apollo.game.event.impl.UpdateRunEnergyEvent;
import org.apollo.game.model.Inventory.StackMode;
import org.apollo.game.model.Appearance;
import org.apollo.game.model.Position;
import org.apollo.game.model.World;
import org.apollo.game.model.inter.InterfaceConstants;
import org.apollo.game.model.inter.InterfaceListener;
import org.apollo.game.model.inter.InterfaceSet;
@@ -23,8 +25,11 @@ import org.apollo.game.model.inter.bank.BankConstants;
import org.apollo.game.model.inter.bank.BankInterfaceListener;
import org.apollo.game.model.inv.AppearanceInventoryListener;
import org.apollo.game.model.inv.FullInventoryListener;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.InventoryConstants;
import org.apollo.game.model.inv.InventoryListener;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
import org.apollo.game.model.inv.Inventory.StackMode;
import org.apollo.game.model.settings.PrivacyState;
import org.apollo.game.model.settings.PrivilegeLevel;
import org.apollo.game.model.settings.ScreenBrightness;
@@ -1,4 +1,4 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
/**
* Represents a single skill.
@@ -1,4 +1,4 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
import java.util.ArrayList;
import java.util.List;
@@ -1,9 +1,12 @@
package org.apollo.game.model;
package org.apollo.game.model.entity;
import java.util.ArrayDeque;
import java.util.Deque;
import java.util.Queue;
import org.apollo.game.model.Direction;
import org.apollo.game.model.Position;
/**
* A queue of {@link Direction}s which a {@link Mob} will follow.
*
@@ -0,0 +1,4 @@
/**
* Contains entity related classes.
*/
package org.apollo.game.model.entity;
@@ -8,7 +8,7 @@ import org.apollo.game.event.impl.EnterAmountEvent;
import org.apollo.game.event.impl.OpenDialogueInterfaceEvent;
import org.apollo.game.event.impl.OpenInterfaceEvent;
import org.apollo.game.event.impl.OpenInterfaceSidebarEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.dialogue.DialogueListener;
/**
@@ -1,6 +1,6 @@
package org.apollo.game.model.inter.bank;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.EnterAmountListener;
/**
@@ -1,6 +1,6 @@
package org.apollo.game.model.inter.bank;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.InterfaceListener;
import org.apollo.game.model.inv.InventoryListener;
@@ -1,10 +1,10 @@
package org.apollo.game.model.inter.bank;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.def.ItemDefinition;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.InterfaceListener;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.inv.InventoryListener;
import org.apollo.game.model.inv.SynchronizationInventoryListener;
@@ -1,6 +1,6 @@
package org.apollo.game.model.inter.bank;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.inter.EnterAmountListener;
/**
@@ -1,8 +1,7 @@
package org.apollo.game.model.inv;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.block.SynchronizationBlock;
/**
@@ -2,8 +2,7 @@ package org.apollo.game.model.inv;
import org.apollo.game.event.Event;
import org.apollo.game.event.impl.ServerMessageEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An {@link InventoryListener} which sends a message to a player when an inventory has run out of space.
@@ -1,10 +1,10 @@
package org.apollo.game.model;
package org.apollo.game.model.inv;
import java.util.ArrayList;
import java.util.List;
import org.apollo.game.model.Item;
import org.apollo.game.model.def.ItemDefinition;
import org.apollo.game.model.inv.InventoryListener;
/**
* Represents an inventory - a collection of {@link Item}s.
@@ -1,6 +1,5 @@
package org.apollo.game.model.inv;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
/**
@@ -1,4 +1,4 @@
package org.apollo.game.model;
package org.apollo.game.model.inv;
/**
* Holds {@link Inventory}-related constants.
@@ -1,6 +1,5 @@
package org.apollo.game.model.inv;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
/**
@@ -1,4 +1,6 @@
package org.apollo.game.model;
package org.apollo.game.model.inv;
import org.apollo.game.model.Item;
/**
* A class which contains an {@link Item} and its corresponding slot.
@@ -2,10 +2,8 @@ package org.apollo.game.model.inv;
import org.apollo.game.event.impl.UpdateItemsEvent;
import org.apollo.game.event.impl.UpdateSlottedItemsEvent;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.SlottedItem;
import org.apollo.game.model.entity.Player;
/**
* An {@link InventoryListener} which synchronizes the state of the server's inventory with the client's.
@@ -1,8 +1,8 @@
package org.apollo.game.model.obj;
import org.apollo.game.model.Entity;
import org.apollo.game.model.Position;
import org.apollo.game.model.def.ObjectDefinition;
import org.apollo.game.model.entity.Entity;
/**
* Represents an object in the game world.
+3 -3
View File
@@ -5,8 +5,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apollo.game.model.Entity;
import org.apollo.game.model.Entity.EntityType;
import org.apollo.game.model.entity.Entity;
import org.apollo.game.model.entity.Entity.EntityType;
import org.apollo.game.model.Position;
/**
@@ -146,7 +146,7 @@ public final class Sector {
public boolean removeEntity(Entity entity) {
List<Entity> entities = this.entities.get(entity.getPosition());
if (entities == null) {
this.entities.put(entity.getPosition(), new ArrayList<Entity>());
this.entities.put(entity.getPosition(), new ArrayList<>());
return false;
}
@@ -1,6 +1,6 @@
package org.apollo.game.model.sector;
import org.apollo.game.model.Entity;
import org.apollo.game.model.entity.Entity;
/**
* A class that should be extended by listeners that execute actions when an entity is added or removed from the sector.
@@ -1,8 +1,8 @@
package org.apollo.game.model.skill;
import org.apollo.game.model.Player;
import org.apollo.game.model.Skill;
import org.apollo.game.model.SkillSet;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.entity.Skill;
import org.apollo.game.model.entity.SkillSet;
import org.apollo.util.LanguageUtil;
/**
@@ -1,7 +1,7 @@
package org.apollo.game.model.skill;
import org.apollo.game.model.Skill;
import org.apollo.game.model.SkillSet;
import org.apollo.game.model.entity.Skill;
import org.apollo.game.model.entity.SkillSet;
/**
* An adapter for the {@link SkillListener}.
@@ -1,7 +1,7 @@
package org.apollo.game.model.skill;
import org.apollo.game.model.Skill;
import org.apollo.game.model.SkillSet;
import org.apollo.game.model.entity.Skill;
import org.apollo.game.model.entity.SkillSet;
/**
* An interface which listens to events from a {@link SkillSet}.
@@ -1,9 +1,9 @@
package org.apollo.game.model.skill;
import org.apollo.game.event.impl.UpdateSkillEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.Skill;
import org.apollo.game.model.SkillSet;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.entity.Skill;
import org.apollo.game.model.entity.SkillSet;
import org.apollo.game.sync.block.SynchronizationBlock;
/**
@@ -1,6 +1,6 @@
package org.apollo.game.scheduling.impl;
import org.apollo.game.model.Mob;
import org.apollo.game.model.entity.Mob;
import org.apollo.game.scheduling.ScheduledTask;
/**
@@ -6,9 +6,9 @@ import java.util.concurrent.Phaser;
import java.util.concurrent.ThreadFactory;
import org.apollo.game.GameService;
import org.apollo.game.model.Npc;
import org.apollo.game.model.Player;
import org.apollo.game.model.World;
import org.apollo.game.model.entity.Npc;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.task.NpcSynchronizationTask;
import org.apollo.game.sync.task.PhasedSynchronizationTask;
import org.apollo.game.sync.task.PlayerSynchronizationTask;
@@ -1,9 +1,9 @@
package org.apollo.game.sync;
import org.apollo.game.GameService;
import org.apollo.game.model.Npc;
import org.apollo.game.model.Player;
import org.apollo.game.model.World;
import org.apollo.game.model.entity.Npc;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.task.NpcSynchronizationTask;
import org.apollo.game.sync.task.PlayerSynchronizationTask;
import org.apollo.game.sync.task.PostNpcSynchronizationTask;
@@ -1,7 +1,7 @@
package org.apollo.game.sync.block;
import org.apollo.game.model.Appearance;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.inv.Inventory;
/**
* The appearance {@link SynchronizationBlock}. Only players can utilise this block.
@@ -4,8 +4,8 @@ import org.apollo.game.event.impl.ChatEvent;
import org.apollo.game.model.Animation;
import org.apollo.game.model.Direction;
import org.apollo.game.model.Graphic;
import org.apollo.game.model.Player;
import org.apollo.game.model.Position;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.seg.SynchronizationSegment;
/**
@@ -5,10 +5,10 @@ import java.util.Iterator;
import java.util.List;
import org.apollo.game.event.impl.NpcSynchronizationEvent;
import org.apollo.game.model.Npc;
import org.apollo.game.model.Player;
import org.apollo.game.model.Position;
import org.apollo.game.model.World;
import org.apollo.game.model.entity.Npc;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.seg.AddNpcSegment;
import org.apollo.game.sync.seg.MovementSegment;
import org.apollo.game.sync.seg.RemoveMobSegment;
@@ -5,9 +5,9 @@ import java.util.Iterator;
import java.util.List;
import org.apollo.game.event.impl.PlayerSynchronizationEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.Position;
import org.apollo.game.model.World;
import org.apollo.game.model.entity.Player;
import org.apollo.game.sync.block.AppearanceBlock;
import org.apollo.game.sync.block.ChatBlock;
import org.apollo.game.sync.block.SynchronizationBlock;
@@ -1,6 +1,6 @@
package org.apollo.game.sync.task;
import org.apollo.game.model.Npc;
import org.apollo.game.model.entity.Npc;
/**
* A {@link SynchronizationTask} which does post-synchronization work for the specified {@link Npc}.
@@ -1,6 +1,6 @@
package org.apollo.game.sync.task;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* A {@link SynchronizationTask} which does post-synchronization work for the specified {@link Player}.
@@ -1,6 +1,6 @@
package org.apollo.game.sync.task;
import org.apollo.game.model.Npc;
import org.apollo.game.model.entity.Npc;
/**
* A {@link SynchronizationTask} which does pre-synchronization work for the specified npc.
@@ -1,8 +1,8 @@
package org.apollo.game.sync.task;
import org.apollo.game.event.impl.RegionChangeEvent;
import org.apollo.game.model.Player;
import org.apollo.game.model.Position;
import org.apollo.game.model.entity.Player;
/**
* A {@link SynchronizationTask} which does pre-synchronization work for the specified {@link Player}.
@@ -1,6 +1,6 @@
package org.apollo.io.player;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
import org.apollo.net.codec.login.LoginConstants;
/**
+1 -1
View File
@@ -1,6 +1,6 @@
package org.apollo.io.player;
import org.apollo.game.model.Player;
import org.apollo.game.model.entity.Player;
/**
* An interface which may be implemented by others which are capable of saving players. For example, implementations
@@ -8,12 +8,12 @@ import java.util.ArrayList;
import java.util.List;
import org.apollo.game.model.Appearance;
import org.apollo.game.model.Inventory;
import org.apollo.game.model.Item;
import org.apollo.game.model.Player;
import org.apollo.game.model.Position;
import org.apollo.game.model.Skill;
import org.apollo.game.model.SkillSet;
import org.apollo.game.model.entity.Player;
import org.apollo.game.model.entity.Skill;
import org.apollo.game.model.entity.SkillSet;
import org.apollo.game.model.inv.Inventory;
import org.apollo.game.model.settings.Gender;
import org.apollo.game.model.settings.PrivacyState;
import org.apollo.game.model.settings.PrivilegeLevel;

Some files were not shown because too many files have changed in this diff Show More