mirror of
https://github.com/Rogiel/l2jserver2
synced 2025-12-09 17:02:53 +00:00
51 lines
1014 B
Java
51 lines
1014 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 {
|
|
/**
|
|
* The {@link ObjectID}
|
|
*/
|
|
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;
|
|
}
|
|
}
|