1
0
mirror of https://github.com/Rogiel/l2jserver2 synced 2025-12-09 17:02:53 +00:00
Files
l2jserver2/src/main/java/com/l2jserver/model/world/AbstractObject.java

48 lines
979 B
Java

package com.l2jserver.model.world;
import com.l2jserver.model.id.ObjectID;
/**
* This is an abstract object representing all the world objects in Lineage II.
*
* @author Rogiel
*/
public abstract class AbstractObject implements WorldObject {
protected ObjectID<?> id;
public ObjectID<?> getID() {
return id;
}
public void setID(ObjectID<?> id) {
if (this.id != null)
throw new IllegalStateException("ID is already set!");
this.id = id;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
AbstractObject other = (AbstractObject) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
return true;
}
}