alias spiral_initialize initialize
def initialize(viewport, battler = nil)
spiral_initialize(viewport, battler)
@curr_mark = 0
@range = gen_range
end
def gen_range(max = MAXANG)
range = []
MINANG.upto(MAXANG) do |i|
split = i.to_f/0.6
inv = split ** -1
1.upto(split){|j| range.push(inv.to_f*j+i)}
end
range
end
alias test_update update
def update
test_update
draw_next_dot if self.visible
restart_spiral if @curr_mark >= @range.size
end
def draw_next_dot
v = @range[@curr_mark]
x = (v**1.414)*Math.cos(v) + Graphics.width/2
y = (v**1.414)*Math.sin(v) + Graphics.height/2
self.x = x
self.y = y
@curr_mark += 1
end