public void update(int delta) {
		changed = (info.deltaX != 0 || info.deltaY != 0);
		if (changed) {
			float change = (info.speed * delta / 1000.0f) / (float)Math.sqrt(info.deltaX*info.deltaX + info.deltaY*info.deltaY);
			Rectangle rec = collisionBox();
			rec.y += info.deltaY*change;
			if (!MainGame.map.getCollision(rec)) {
				rec = collisionBox();
				info.y += info.deltaY * change;
			} else {
				rec = collisionBox();
				info.deltaY = 0;
			}
			rec.x += info.deltaX*change;
			if (!MainGame.map.getCollision(rec)) {
				info.x += info.deltaX * change;
			} else {
				info.deltaX = 0;
			}
		}
		changed = (info.deltaX != 0 || info.deltaY != 0);
	}