//private itemAction iAction; bool use(GamePosition itemPos, GamePosition strikePos) { if (Vect2D.getDistance(itemPos.pos, strikePos.pos) < range) { action(itemPos, strikePos); return(true); } return(false); }
public WorldObject getCollidedObject(BasePhysics p, Vect2D destination) { Vect2D normalizedDirection = destination.normalize(); Vect2D currentPosCursor = p.pos.pos.Copy(); for (int i = 0; i < Vect2D.getDistance(destination, new Vect2D(0, 0)); i++) { currentPosCursor += normalizedDirection; //Si oui on regarde si là ou on veut aller, il y a déjà un objet (détection de collision très basique) WorldObject collidedObject = getObjectAt(currentPosCursor.x, currentPosCursor.y); if (collidedObject != null && collidedObject.pos.layer == p.pos.layer) { return(collidedObject); } } return(null); }
public Vect2D normalize() { int size = (int)Vect2D.getDistance(this, new Vect2D(0, 0)); return(new Vect2D(this.x / size, this.y / size)); }