Example:
# Produces line projection
# ....................
# ....................
# .@*******#..........
# ....................
# ....................
rlfl.project_beam(map_number, p, p1)
# Produces line to ball projection
# Note: ball spells are usually a combination
# of beam and ball.
# ........***...........
# .......*****..........
# .@....*******.........
# .......*****..........
# ........***...........
rlfl.project_ball(map_number, p, p1, 3)
# Adding the rlfl.PROJECT_SHEL flag
# ........***...........
# .......*...*..........
# .@....*.....*.........
# .......*...*..........
# ........***...........
rlfl.project_ball(map_number, p, p1, 3, rlfl.PROJECT_SHEL)
# Adding the rlfl.PROJECT_SQUARE flag
# ......*******.........
# ......*******.........
# .@....*******.........
# ......*******.........
# ......*******.........
rlfl.project_ball(map_number, p, p1, 3, rlfl.PROJECT_SQUARE)
# Adding the rlfl.PROJECT_SQUARE|rlfl.PROJECT_SHEL flag
# ......*******.........
# ......*.....*.........
# .@....*.....*.........
# ......*.....*.........
# ......*******.........
rlfl.project_ball(map_number, p, p1, 3, rlfl.PROJECT_SQUARE|rlfl.PROJECT_SHEL)
# Adding the rlfl.PROJECT_DIAMOND flag
# .........*............
# ........***...........
# .@.....*****..........
# ........***...........
# .........*............
rlfl.project_ball(map_number, p, p1, 2, rlfl.PROJECT_DIAMOND)
# Adding the rlfl.PROJECT_DIAMOND|rlfl.PROJECT_SHEL flag
# .........*............
# ........*.*...........
# .@.....*...*..........
# ........*.*...........
# .........*............
rlfl.project_ball(map_number, p, p1, 2, rlfl.PROJECT_DIAMOND|rlfl.PROJECT_SHEL)
# Produces breath projection
# .........***.......
# .....********......
# .D********@**......
# .....********......
# .........***.......
rlfl.project_cone(map_number, p, p1, 3)
# 3 Enemys (or walls) marked with rlfl.CELL_REFL
#.....R.....#........
#....*.*...*.........
#...*...*.*..........
#..R.....R...........
#...*................
#....@...............
#....................
rlfl.project_beam(map_number, p, p1, rlfl.MAX_RANGE, rlfl.PROJECT_REFL)
Causes the projection to ignore walls
Causes projection to stop on first cell marked rlfl.CELL_OCUP
Causes projection not to stop at target
Causes empty ball projection.
Causes a square shaped projection.
Causes a diamond shaped projection.
Causes projection to bounce of cells marked CELL_REFL.
Return a beam projection as a set on tuples (x, y).
range defaults to max range.
Return a ball shaped projection as a set on tuples (x, y).
range defaults to max range.
Return a cone shaped projection as a set on tuples (x, y).
range defaults to max range.