Okay, here you go:
Set this up early in the code:
dim ss(12)
dim colr(23)
dkpurple=1 : medpurple=2 : ltpurple=3 : medbrown=4
dkbrown=5 : ltbrown=6 : rskin=7 : skin=8 :paleyel=9
turq=10 : aqua=11 : cerulean=12 : royal=13 : red=14
clay=15 : ltgrey=16 : medgrey=17 : yellow=18 : white=19
dkred=20 : ltgreen=21 : medgreen=22 : deepblue=23
Here is the code to store the color info:
for i=1 to 23
read r,g,b
colr(i)=rgb(r,g,b)
next i
Here are the subroutines to make the images. I included the player's ship (blaster). You can simply delte it if you want.
GET_BLASTER_IMAGE:
cls
ink colr(ltgrey),0
line 0,43,0,46 : line 1,41,1,47 : line 2,40,2,47 : line 3,38,3,47
line 4,35,4,48 : line 5,32,5,48 : line 6,29,6,48 : line 7,25,7,49
line 8,22,8,49 : line 9,19,9,49 : line 10,15,10,51 : line 11,10,11,53
line 12,0,12,53 : box 13,36,18,53 : line 19,0,19,53 : line 20,10,20,53
line 21,15,21,51 : line 22,19,22,49 : line 23,22,23,49 : line 24,25,24,49
line 25,29,25,48 : line 26,32,26,48 : line 27,35,27,48 : line 28,38,28,47
line 29,40,29,47 : line 30,41,30,47 : line 31,43,31,46
ink colr(yellow),0
line 4,43,9,32 : line 5,47,9,37 : line 22,37,26,46 : line 22,32,27,43
ink colr(medgrey),0
box 13,16,18,36
line 12,41,12,48 : line 19,41,19,48 : box 15,50,16,53
ink colr(ltgrey),0
dot 13,36
dot 18,36
ink colr(dkred),0
line 13,0,13,17 : line 18,0,18,17
ink colr(red),0
line 14,0,14,17 : line 17,0,17,17
ink colr(white),0
box 14,24,17,29
box 15,22,16,31
blaster_img=1 : ` the image of the sprite also happens to be 1.
blaster_extra=799 : ` the image # of the extra ship
get image blaster_img,0,0,38,54
` here a smaller image of the blaster is made
` it will be used to display extra ships available to the player
cls
sprite 1,0,0,blaster_img : ` call the sprite using the image just made
scale sprite 1,50 : ` scale it down to half the size
paste sprite 1,0,0 : ` paste the resulting sprite on the screen
delete sprite 1 : ` we no longer need the sprite, as we have the image, so we delete it
get image blaster_extra,0,0,20,27 : ` we grab the image for the extra ship
cls
return
GET_BULLET_IMAGES:
` this code makes the player's bullet as well as the alien's bullets
` the alien's bullets require two images, as they are animated
cls
ink colr(red),0
box 0,0,3,13
player_bullet=2
get image player_bullet,0,0,4,14
cls
ink colr(yellow),0
line 4,0,7,0 : line 3,1,6,1: line 2,2,5,2
line 1,3,4,3 : line 0,4,3,4 : line 1,5,4,5
line 2,6,5,6 : line 3,7,6,7 : line 4,8,7,8
line 3,9,6,9 : line 2,10,5,10 : line 1,11,4,11
line 0,12,3,12 : line 1,13,4,13 : line 2,14,5,14
line 3,15,6,15 : line 4,16,7,16
alien_bullet(1)=3
get image alien_bullet(1),0,0,8,17
cls
` color is still inked as yellow
line 0,0,3,0 : line 1,1,4,1 : line 2,2,5,2
line 3,3,6,3 : line 4,4,7,4 : line 3,5,6,5
line 2,6,5,6 : line 1,7,4,7 : line 0,8,3,8
line 1,9,4,9 : line 2,10,5,10 : line 3,11,6,11
line 4,12,7,12 : line 3,13,6,13 : line 2,14,5,14
line 1,15,4,15 : line 0,16,3,16
alien_bullet(2)=4
get image alien_bullet(2),0,0,6,14
cls
return
GET_SPACESHIP_IMAGES:
` this code also uses primitive DBP drawing commands to draw three spaceship images
ss(8)=10 : ss(9)=11 : ss(10)=12 : ` image numbers for the spaceship
cls
ink colr(aqua),0
line 13,1,42,1 : box 12,2,43,3 : box 11,4,44,5
ink colr(cerulean),0
line 10,4,10,5 : line 11,2,11,3 : dot 12,1 : line 13,0,42,0
dot 43,1 : line 44,2,44,3 : line 45,4,45,5 : line 15,15,40,15
line 18,16,37,16 : line 19,17,35,17
ink colr(royal),0
box 7,6,48,14 : dot 6,14 : dot 49,14 : box 4,7,6,13
line 2,8,3,8 : box 1,9,3,12 : line 0,10,0,11
box 49,7,51,13 : box 52,8,53,12 : line 54,9,54,12
line 55,10,55,11
ink colr(red),0
box 19,15,21,17
ink colr(ltgrey),0
box 11,8,17,12 : box 22,8,28,12 : box 33,8,39,12
box 44,8,50,12
ink colr(medgrey),0
box 12,9,16,11 : box 23,9,27,11 : box 34,9,38,11
box 45,9,49,11
get image ss(8),0,0,56,18
cls
ink colr(aqua),0
line 13,1,42,1 : box 12,2,43,3 : box 11,4,44,5
ink colr(cerulean),0
line 10,4,10,5 : line 11,2,11,3 : dot 12,1 : line 13,0,42,0
dot 43,1 : line 44,2,44,3 : line 45,4,45,5 : line 15,15,40,15
line 18,16,37,16 : line 19,17,35,17
ink colr(royal),0
box 7,6,48,14 : dot 6,14 : dot 49,14 : box 4,7,6,13
line 2,8,3,8 : box 1,9,3,12 : line 0,10,0,11
box 49,7,51,13 : box 52,8,53,12 : line 54,9,54,12
line 55,10,55,11
ink colr(red),0
box 25,15,27,17
ink colr(ltgrey),0
box 7,8,13,12 : box 18,8,24,12 : box 29,8,35,12
box 40,8,46,12
ink colr(medgrey),0
box 8,9,12,11 : box 19,9,23,11 : box 30,9,34,11
box 41,9,45,11
get image ss(9),0,0,56,18
cls
ink colr(aqua),0
line 13,1,42,1 : box 12,2,43,3 : box 11,4,44,5
ink colr(cerulean),0
line 10,4,10,5 : line 11,2,11,3 : dot 12,1 : line 13,0,42,0
dot 43,1 : line 44,2,44,3 : line 45,4,45,5 : line 15,15,40,15
line 18,16,37,16 : line 19,17,35,17
ink colr(royal),0
box 7,6,48,14 : dot 6,14 : dot 49,14 : box 4,7,6,13
line 2,8,3,8 : box 1,9,3,12 : line 0,10,0,11
box 49,7,51,13 : box 52,8,53,12 : line 54,9,54,12
line 55,10,55,11
ink colr(red),0
box 33,15,35,17
ink colr(ltgrey),0
box 4,8,10,12 : box 15,8,21,12 : box 26,8,32,12
box 37,9,43,12
ink colr(medgrey),0
box 5,9,9,11 : box 16,9,20,11 : box 27,9,31,11
box 38,9,42,11
get image ss(10),0,0,56,18
return
Hope it helps,
LB