04-07-2005, 04:38 AM
heh....*sigh* well I couldn't see it, QB said that your expression was too complex....doh! :x :lol:
But anyways...Rattra, I got past my laziness and wipped up something....I had to use the FOR delay cause TIMER was too slow + WAITs were too fast.
Yes I know it breaks so many rules of this competittion but its just soo cool.
What you think?
[syntax="qbasic"]
'Wave Bar by Kevin(x.t.r.GRAPHICS)
'Redone by Mitth'raw'nuruodo
SCREEN 13
amp = 40 'Amplitude Ajust
sp = 300000 'speed adjust
Offset% = 0: angx = 0: angy = 0: angz = 0
rad = 3.141593 / 180
DO
Offset% = Offset% + 1
angx = (angx + 3) MOD 360: angy = (angy + 3) MOD 360
angz = (angz + 3) MOD 360
sx! = SIN(angx * rad): sy! = SIN(angy * rad)
sz! = SIN(angz * rad): cx! = COS(angx * rad)
cy! = COS(angy * rad): cz! = COS(angz * rad)
xx! = (cy! * cz!): xy! = ((sy! * cz! * sx!) - (cx! * sz!))
xz! = ((sy! * cz! * cx!) + (sx! * sz!))
yx! = (cy! * sz!): yy! = ((sx! * sy! * sz!) + (cx! * cz!))
yz! = ((cx! * sy! * sz!) - (sx! * cz!)): zx! = -sy!
zy! = (sx! * cy!): zz! = (cx! * cy!)
FOR j = 1 TO 3
FOR x = 1 TO 320
y! = amp * SIN(ang * 3.24 / 180)
x1 = x + Offset%
IF x1 > 319 THEN x1 = 0 + x
IF Offset% > 319 THEN
px! = x1
py! = y!
pz! = -20 - (j * 100)
fx1! = ((px! * xx!) + (py! * xy!) + (pz! * xz!))
fy1! = ((px! * yx!) + (py! * yy!) + (pz! * yz!))
fz1! = ((px! * zx!) + (py! * zy!) + (pz! * zz!)) - 500
distance% = 256 - fz1!
IF distance% > 0 THEN
fx = 160 + (256 * fx1! / distance%)
fy = 100 - (256 * fy1! / distance%)
PSET (fx, fy), 9
END IF
END IF
ang = ang + 1
NEXT x
NEXT j
IF Offset% > 319 THEN
WAIT &H3DA, 8
WAIT &H3DA, 8, 8
FOR i = 1 TO sp: NEXT i
CLS
END IF
LOOP
[/syntax]
Check! King me :king: :rotfl:
But anyways...Rattra, I got past my laziness and wipped up something....I had to use the FOR delay cause TIMER was too slow + WAITs were too fast.
Yes I know it breaks so many rules of this competittion but its just soo cool.
What you think?
[syntax="qbasic"]
'Wave Bar by Kevin(x.t.r.GRAPHICS)
'Redone by Mitth'raw'nuruodo
SCREEN 13
amp = 40 'Amplitude Ajust
sp = 300000 'speed adjust
Offset% = 0: angx = 0: angy = 0: angz = 0
rad = 3.141593 / 180
DO
Offset% = Offset% + 1
angx = (angx + 3) MOD 360: angy = (angy + 3) MOD 360
angz = (angz + 3) MOD 360
sx! = SIN(angx * rad): sy! = SIN(angy * rad)
sz! = SIN(angz * rad): cx! = COS(angx * rad)
cy! = COS(angy * rad): cz! = COS(angz * rad)
xx! = (cy! * cz!): xy! = ((sy! * cz! * sx!) - (cx! * sz!))
xz! = ((sy! * cz! * cx!) + (sx! * sz!))
yx! = (cy! * sz!): yy! = ((sx! * sy! * sz!) + (cx! * cz!))
yz! = ((cx! * sy! * sz!) - (sx! * cz!)): zx! = -sy!
zy! = (sx! * cy!): zz! = (cx! * cy!)
FOR j = 1 TO 3
FOR x = 1 TO 320
y! = amp * SIN(ang * 3.24 / 180)
x1 = x + Offset%
IF x1 > 319 THEN x1 = 0 + x
IF Offset% > 319 THEN
px! = x1
py! = y!
pz! = -20 - (j * 100)
fx1! = ((px! * xx!) + (py! * xy!) + (pz! * xz!))
fy1! = ((px! * yx!) + (py! * yy!) + (pz! * yz!))
fz1! = ((px! * zx!) + (py! * zy!) + (pz! * zz!)) - 500
distance% = 256 - fz1!
IF distance% > 0 THEN
fx = 160 + (256 * fx1! / distance%)
fy = 100 - (256 * fy1! / distance%)
PSET (fx, fy), 9
END IF
END IF
ang = ang + 1
NEXT x
NEXT j
IF Offset% > 319 THEN
WAIT &H3DA, 8
WAIT &H3DA, 8, 8
FOR i = 1 TO sp: NEXT i
CLS
END IF
LOOP
[/syntax]
Check! King me :king: :rotfl:
i]"But...it was so beautifully done"[/i]