public void shoot() {
        // kornyezo mezook elkerese
        List<Field> fieldList = new ArrayList<Field>();
        fieldList = field.getNearByRoads(range);
        shootableCharacters.clear();
        // visitable objektumok vegigjarasa
        for (Field f : fieldList) {
            for (Visitable v : f.getVisitables()) {
                // shootablecharacters feltoltese visitorminta segitsegevel
                v.accept(this);
            }
        }
        boolean shot = false;
        // charakter kivalasztasa
        for (Character c : shootableCharacters) {
            // ha eddig nem lotunk egy karakterre se akkor lohetunk
            if (!shot) {
                shot = true;
                // specialis kettevalaszto lovedek sorsolasa
                double randNumber = Math.random();
                double d = randNumber * 100;
                int randomInt = (int) d + 1;
                if (randomInt > 5) {
                    // normal loves
                    c.hit(this.getColor());
                } else {
                    //specialis kettevalaszto lovedek lovese
                    Color coltmp = this.getColor();
                    this.setColor(Color.Black);
                    c.hit(this.getColor());
                    this.setColor(coltmp);
                }
            }
        }
    }