ASTERO1K
About
Controls
g=99-f*20d=e[f+1]srand(l)?"\aszi7v7e0x1v4ev2ev0e"
t=0p={t=0,c=7,x=64,y=64,r=3,a=.25,s=0,n=100}m={p}
for n=-1,l\#e*2do
add(m,{t=1,c=k[l%#k+1],x=r(99)-50,y=r(99)-50,a=r(),s=r(.2)+.1,r=r(9)+4})end
end
function _update60()a=circfill
p.a-=(b()\2%2-b()%2)*.01if(b(4)and t%3<1and p.n>5)add(m,{t=2,c=10,x=x,y=y,r=1,a=p.a,s=2,d=30*d})p.s-=.2p.n-=1?"\ax5i0g"
p.s*=.99-d*.01cls(k[(l-1)%#k+1])for v=#m,1,-1do
n=m[v]for w=#m,v+1,-1do
o=m[w]ts=n.t+o.t
if n.r+o.r>=sqrt((n.x-o.x)^2+(n.y-o.y)^2)then
if(ts==1)p.n-=1a=circ?"\ai2c0"
if ts==3then
n.r*=.7?"\as9i3x5e1e0"
if n.r<3.5then
del(m,n)else
o.r,o.t,o.s,o.c=n.r*.5,1,n.s,n.c
end
end
end
end
n.x+=n.s*cos(n.a)n.y+=n.s*sin(n.a)n.x%=128n.y%=128a(n.x,n.y,n.r,n.c)if n.t==2then
n.d-=1
if(n.d<0)del(m,n)
end
end
x,y,p.n=p.x+cos(p.a)*p.r*1.5,p.y+sin(p.a)*p.r*1.5,mid(0,p.n,g)a(x,y,2,10)rect(13+g-p.n,11,13+g,15)?"astero1k\n\nl𝘷𝘭 "..1+l\#e .."."..f+1,13,5
if(#m<2)l+=1i()
if(p.n<=0)i()?"\ascv7x3i3c3c2c1"
p.n+=.1
t+=1
end
k={12,4,1,3,9,8,14,13,2}l=0r=rnd
e={2,1,.7,.4}i()b=btn How 'bout the source code?
- Left & right keys to rotate the ship
- C to activate engine, ie shoot & move at once
g=99-f*20d=e[f+1]srand(l)?"\aszi7v7e0x1v4ev2ev0e"
t=0p={t=0,c=7,x=64,y=64,r=3,a=.25,s=0,n=100}m={p}
for n=-1,l\#e*2do
add(m,{t=1,c=k[l%#k+1],x=r(99)-50,y=r(99)-50,a=r(),s=r(.2)+.1,r=r(9)+4})end
end
function _update60()a=circfill
p.a-=(b()\2%2-b()%2)*.01if(b(4)and t%3<1and p.n>5)add(m,{t=2,c=10,x=x,y=y,r=1,a=p.a,s=2,d=30*d})p.s-=.2p.n-=1?"\ax5i0g"
p.s*=.99-d*.01cls(k[(l-1)%#k+1])for v=#m,1,-1do
n=m[v]for w=#m,v+1,-1do
o=m[w]ts=n.t+o.t
if n.r+o.r>=sqrt((n.x-o.x)^2+(n.y-o.y)^2)then
if(ts==1)p.n-=1a=circ?"\ai2c0"
if ts==3then
n.r*=.7?"\as9i3x5e1e0"
if n.r<3.5then
del(m,n)else
o.r,o.t,o.s,o.c=n.r*.5,1,n.s,n.c
end
end
end
end
n.x+=n.s*cos(n.a)n.y+=n.s*sin(n.a)n.x%=128n.y%=128a(n.x,n.y,n.r,n.c)if n.t==2then
n.d-=1
if(n.d<0)del(m,n)
end
end
x,y,p.n=p.x+cos(p.a)*p.r*1.5,p.y+sin(p.a)*p.r*1.5,mid(0,p.n,g)a(x,y,2,10)rect(13+g-p.n,11,13+g,15)?"astero1k\n\nl𝘷𝘭 "..1+l\#e .."."..f+1,13,5
if(#m<2)l+=1i()
if(p.n<=0)i()?"\ascv7x3i3c3c2c1"
p.n+=.1
t+=1
end
k={12,4,1,3,9,8,14,13,2}l=0r=rnd
e={2,1,.7,.4}i()b=btn How 'bout the source code?
The code above IS the source code, I directly made the game this way to keep a precise control over its size. But I kept a doc to track my 1 char variables:
- a() = circfill()
- b() = btn()
- c = collision
- e = difficulties
- f = l%#e
- g = 99-f*16
- i() = init()
- k = colors
- l = level
- m = mobs
- a = angle
- c = color
- n = nrg
- r = radius
- s = speed
- t = type (0 = plyr, 1 = foe, 2 = bullet)
- x, y = position
- n = current mob
- o = mob checked for collision with n
- p = player
- r() = rnd()
- v = # of n (current mob)
- w = # of o (checked mob)
- x, y = x, y weapon/engine