Well turn that sideways and it looks like something
Want to see my bats, being so close to Halloween and all? They come flying in lower right corner.
Want to see my bats, being so close to Halloween and all? They come flying in lower right corner.
Code: (Select All)
'this is bats flying in swirl twister but takes awhile to become visible in lower right corner
Screen _NewImage(800, 600, 32)
_ScreenMove 300, 50
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,0
Data 1,1,0,0,1,0,0,1,0,0,1,0,0,1,1,0
Data 0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0
Data 0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0
Data 0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0
Data 0,0,0,0,1,0,1,1,1,0,0,1,0,0,0,0
Data 0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0
Data 0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0
Data 0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0
Data 0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0
Data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Dim Shared sprt(15, 15)
For y = 0 To 15
For x = 0 To 15
Read sprt(x, y)
Next
Next
Dim Shared sprt2(15, 15)
For y = 0 To 15
For x = 0 To 15
Read sprt2(x, y)
Next
Next
Type btype
x As Single
y As Single
f As Integer
a As Single
End Type
Dim Shared bs(10000) As btype
bi = -1
While 1
Cls , _RGB32(0, 0, 128)
nloop = nloop + 1
If Rnd < .15 And (bi + 1) < 10000 Then
bi = bi + 1
newb bi
End If
For i = 0 To bi
drawb i
Next
_Display
_Limit 20
Wend
Sub newb (i)
bs(i).x = 800 + Rnd * 320
bs(i).y = 600 + Rnd * 80
bs(i).f = Int(Rnd * 2)
bs(i).a = 0
End Sub
Sub drawb (i)
If bs(i).a < _Pi(16) And bs(i).y < 580 And bs(i).y > -100 Then
bs(i).a = bs(i).a + _Pi(1 / 144)
bs(i).x = bs(i).x + bs(i).a * Cos(bs(i).a)
bs(i).y = bs(i).y + .2 * bs(i).a * Sin(bs(i).a)
bs(i).y = bs(i).y - .2
Else
bs(i).x = bs(i).x - (Rnd * 8 + 2)
bs(i).y = bs(i).y - (Rnd * 6 + 1)
End If
If bs(i).y < -160 Then newb i
bs(i).f = (bs(i).f + 1) Mod 10
sz = (600 - bs(i).y) * .006
If bs(i).f = 0 Or bs(i).f = 1 Then
For y = 0 To 15
For x = 0 To 15
If sprt2(x, y) Then Line (x * sz + bs(i).x, y * sz + bs(i).y)-Step(sz, sz), _RGB32(0, 0, 0), BF
Next
Next
Else
For y = 0 To 15
For x = 0 To 15
If sprt(x, y) Then Line (x * sz + bs(i).x, y * sz + bs(i).y)-Step(sz, sz), _RGB32(0, 0, 0), BF
Next
Next
End If
End Sub
b = b + ...