public static boolean attemptPlayerMove(Point dir) {
        HashMap<Integer, Tile> tiles = activemap.getTileMap();
        HashMap<Integer, Actor> actors = activemap.getActorHash();
        Point newloc = player.getPos().copy();
        newloc.push(dir);
        int newkey = activemap.genKey(newloc.getX(), newloc.getY());
        if (tiles.containsKey(newkey)) {
            if (tiles.get(newkey).isPassable()) {
                if (!actors.containsKey(newkey)) {
                    player.move(dir);
                    return true;
                }
            }
        }
        if (actors.containsKey(newkey)) {
            Log.print("player attacked!");
            damageSystem.playerAttack(actors.get(newkey));
            return true;
        }
        return false;
    }