jchase1970 Posted March 10, 2010 Share Posted March 10, 2010 Ok first this is a port of a atari 2600 game that I had as a child and really like. I thought it would make a good game but after finishing it it is less fun then I remember it. The program is a good example of interacting sprites with char characters on the screen. It suffers from the lack for framerate. it is right on the line of being fast enough but to get the boost I needed I had to remove the score system. I compensated for it by giving some stats after the game. I could have kept the score in if I would slow down the speed of the bomb but anything slower is just no fun to play. I could have eliminated the computer player but I feel it is needed to give a bit of competition. 100 CALL CLEAR :: PRINT "Caynon Bomber by John Chase" :: PRINT :: PRINT "A 30 line game contestant" :: PRINT :: PRINT "Controls" 110 PRINT "S-slow down" :: PRINT "D-speed up" :: PRINT "X drop a bomb" :: PRINT :: PRINT "Press any key" 120 CALL KEY(0,K,S) :: IF S=1 THEN 130 ELSE GOTO 120 130 call clear::CALL MAGNIFY(3) :: RANDOMIZE :: XS=10 :: T=184 :: BDX=256 :: BD=0 :: PS=0 :: CS=0 :: B=0 :: CB=0 :: ST=0 140 FOR I=0 TO 4 :: READ C$ :: CALL CHAR(64+I*4,C$) :: NEXT I 150 A$="FFFFFFFFFFFFFFFF" :: FOR I=0 TO 4 :: CALL CHAR(104+(I*,"FFFFFFFFFFFFFF") :: CALL CHAR(105+(I*,A$) :: NEXT I 160 CALL COLOR(10,6,2,11,11,2,12,14,2,13,7,2,14,13,2,3,2,6,4,2,6,1,2,6) :: CALL SCREEN(6) 170 CALL HCHAR(1,1,105,480) :: CALL HCHAR(23,1,113,64) :: FOR I=1 TO 8 :: CALL VCHAR(14+I,I,113,9-I) :: CALL VCHAR(14+I,33-I,113,9-I) :: NEXT I 180 FOR I=1 TO 8 :: CALL HCHAR(14+I,I+1,INT(RND*3)*8+120,32-2*I) :: NEXT I 190 CALL SPRITE(#1,64,2,48,1,0,10,#2,68,2,48,17,0,10,#3,72,15,48,226,0,-8,#4,76,15,48,240,0,- 200 CALL KEY(1,K,S) 210 IF S=0 THEN 250 220 IF(K=2)*(XS>5)THEN XS=XS-1 :: CALL MOTION(#1,0,XS,#2,0,XS) 230 IF(K=3)*(XS<15)THEN XS=XS+1 :: CALL MOTION(#1,0,XS,#2,0,XS) 240 IF(B=0)*(K=0)THEN B=1 :: ST=1 :: CALL POSITION(#2,Y,X) :: CALL SPRITE(#5,80,2,Y+10,X,6,XS/2) :: BD=BD+1 250 IF B=1 THEN CALL POSITION(#5,Y,X) :: Y=INT(Y/8)+1 :: X=INT(X/8)+1 :: GOTO 260 ELSE GOTO 280 260 IF(X>0)*(Y<25)*(X<33)THEN CALL GCHAR(Y,X,C) :: GOTO 270 ELSE GOTO 280 270 IF(C=113)+(Y>22)THEN CALL DELSPRITE(#5) :: B=0 ELSE IF C<>105 THEN CALL HCHAR(Y,X,105) :: T=T-1 :: PS=PS+1 :: CALL SOUND(100,250+(Y*10),0) 280 IF(ST=1)*(CB=0)THEN CALL POSITION(#4,Y,X) :: GOTO 290 ELSE GOTO 300 290 IF(X>BDX-5)*(X<BDX+5)THEN CALL SPRITE(#6,80,15,Y+10,X,6,-6) :: CB=1 :: BDX=BDX-7 :: IF BDX<8 THEN BDX=256 300 IF CB=1 THEN CALL POSITION(#6,Y,X) :: Y=INT(Y/8)+1 :: X=INT(X/8)+1 :: GOTO 310 ELSE GOTO 330 310 IF(X>0)*(Y<25)*(X<33)THEN CALL GCHAR(Y,X,C) :: GOTO 320 ELSE GOTO 330 320 IF(C=113)+(Y>22)THEN CALL DELSPRITE(#6) :: CB=0 ELSE IF C<>105 THEN CALL HCHAR(Y,X,105) :: T=T-1 :: CS=CS+1 :: CALL SOUND(100,250+(Y*10),0) 330 IF T=0 THEN 340 ELSE GOTO 200 340 CALL DELSPRITE(ALL) :: CALL CLEAR :: CALL CHARSET :: FOR I=1 TO 11 :: CALL COLOR(I,2,6) :: NEXT I :: RESTORE 380 350 DISPLAY AT(4,2):"BOMBS DROPPED "&STR$(BD) :: DISPLAY AT(2,2):"TARGETS HIT "&STR$(PS) :: DISPLAY AT(6,2):"HIT MISS RATIO "&STR$(PS/BD) 360 DISPLAY AT(8,2):"TAGETS HIT PRECENTAGE "&STR$(INT(PS/184*100)) :: DISPLAY AT(12,2):"PRESS ANY KEY TO PLAY AGAIN" 370 CALL KEY(0,K,S) :: IF S=1 THEN GOTO 130 ELSE GOTO 370 380 DATA "60F0F8F8FCFFFFFFFF7F0000000000000000000000FFFFFCFBFB070707070F0E","0000000000FFFF01FEFDF8F0E0C080000000000000FCF2F9FFFE" 390 DATA "00000000003F4F9FFF7F0000000000000000000000FFFFC0BFDF0F070301","0000000000FFFF3FDFDFE0E0E0E0F070060F1F1F3FFFFFFFFFFE" 400 DATA "F060F0F060000000000000000000000000000000000000000000000000000000" Quote Link to comment Share on other sites More sharing options...
jchase1970 Posted March 10, 2010 Author Share Posted March 10, 2010 I tried to upload the ti file but the forum says I'm not permitted to upload that type of file. What am I doing wrong? Quote Link to comment Share on other sites More sharing options...
+adamantyr Posted March 10, 2010 Share Posted March 10, 2010 I tried to upload the ti file but the forum says I'm not permitted to upload that type of file. What am I doing wrong? Try putting it in a ZIP file first, and attaching that to the post. Adamantyr Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted March 10, 2010 Share Posted March 10, 2010 Very nice. Well done. Quote Link to comment Share on other sites More sharing options...
Tursi Posted March 10, 2010 Share Posted March 10, 2010 Another fantastic looking entry, and the collision detect is nice! Quote Link to comment Share on other sites More sharing options...
The Codex Posted March 10, 2010 Share Posted March 10, 2010 (edited) Looks good! Amazing amount of quality and diversity in these entries. When Owen first announced this little contest, my thought was "What the hell can you do in 30 lines? Get ready for a ton of Mastermind clones." Great to be proven so wrong. Edited March 10, 2010 by The Codex Quote Link to comment Share on other sites More sharing options...
Opry99er Posted March 12, 2010 Share Posted March 12, 2010 Haven't played this yet but it looks great!!!! Good job! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.