Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Tiny Space Invaders
#9
(09-09-2025, 07:35 PM)bplus Wrote: Right again! maybe you'd like to fix it Smile

You know I haven't coded anything since April, but...

Code: (Select All)
_Title "Pete's Mini Space Invaders"
Width 40, 20: _Font 16
bit = 1: TopRow = 5: a$ = "A A A A A A A A": For i = 0 To 4: a$(i) = a$: Next
trail = _Width \ 2 - Len(a$) \ 2: lag = .35: xbase = _Width \ 2: RowHeight = 5: terminate = _Height - 1
Do
Cls: Locate _Height, xbase: Print Chr$(234);: Sound 500, .1
For i = 0 To RowHeight - 1
Locate TopRow + i, trail + l: Print RTrim$(Mid$(a$(i), l + 1));
GoSub keyboard
Next
If TopRow - 1 + RowHeight = terminate Then Locate 3, 2: Print "GAME OVER - YOU LOST!": _Delay 5: End
z1 = Timer
Do
If yfire Then
GoSub keyboard
If Abs(z2 - Timer) > .1 Then
z2 = Timer
If Screen(yfire, xfire) = 24 Then Locate yfire, xfire: Print " ";
yfire = yfire - 1: If yfire < TopRow Then
yfire = 0
Else
Locate yfire, xfire
If Screen(yfire, xfire) = 65 Then
RowCheck = 0: l = 0: r = 0
Mid$(a$(yfire - TopRow), xfire - trail + 1, 1) = " ": Sound 1000, .5: yfire = 0
If LTrim$(a$(0) + a$(1) + a$(2) + a$(3) + a$(4)) = "" Then Cls: Locate 3, 2: Print "GAME OVER - YOU WON!": _Delay 5: End
For i = 4 To 0 Step -1
If LTrim$(a$(i)) = "" And RowCheck = 0 Then RowHeight = i + 1 Else RowCheck = 1
If Len(RTrim$(a$(i))) > r Then r = Len(RTrim$(a$(i)))
If Len(LTrim$(a$(i))) > l Then l = Len(LTrim$(a$(i)))
Next
r = Len(a$) - r: l = Len(a$) - l
Else
Print Chr$(24);
End If
End If
End If
End If
GoSub keyboard
If Abs(z1 - Timer) > lag Then z1 = Timer: Exit Do
Loop
If trail + Len(a$) - r > _Width And bit = 1 Or trail = 1 - l And bit = -1 Then bit = -bit: TopRow = TopRow + 1: lag = lag - .025 Else trail = trail + bit
Loop

keyboard:
Select Case _KeyHit
Case 19200
If xbase > 1 And restrict = 0 Then Locate _Height, xbase: Print " ";: xbase = xbase - 1: restrict = 1: Locate _Height, xbase: Print Chr$(234);
Case 19712
If xbase < _Width And restrict = 0 Then Locate _Height, xbase: Print " ";: xbase = xbase + 1: restrict = 1: Locate _Height, xbase: Print Chr$(234);
Case -19200, -19712
restrict = 0: _KeyClear
Case 32
If yfire = 0 Then Locate _Height - 1, xbase: Print Chr$(24);: yfire = _Height - 1: xfire = xbase
End Select
Return

I've beat it a couple of times, but I wouldn't call it easy.

Right and left arrow keys to move, but don't hold them down, you have to tap each time to move.

Space bar to fire, and you can fire when the missile disappears, either with a hit (sound) or when it passes the last row occupied by ships.

I really didn't want a gosub routine, but polling the keyboard in multiple places makes it smoother.

Pete
Reply


Messages In This Thread
Tiny Space Invaders - by bplus - 09-09-2025, 05:19 PM
RE: Tiny Space Invaders - by bplus - 09-09-2025, 05:32 PM
RE: Tiny Space Invaders - by dbox - 09-09-2025, 08:49 PM
RE: Tiny Space Invaders - by Pete - 09-09-2025, 07:30 PM
RE: Tiny Space Invaders - by bplus - 09-09-2025, 07:35 PM
RE: Tiny Space Invaders - by Unseen Machine - 09-09-2025, 10:21 PM
RE: Tiny Space Invaders - by dbox - 09-09-2025, 10:29 PM
RE: Tiny Space Invaders - by bplus - 09-09-2025, 11:58 PM
RE: Tiny Space Invaders - by Pete - 09-10-2025, 04:12 AM
RE: Tiny Space Invaders - by bplus - 09-10-2025, 02:31 PM
RE: Tiny Space Invaders - by Pete - 09-10-2025, 03:30 PM
RE: Tiny Space Invaders - by bplus - 09-10-2025, 04:08 PM
RE: Tiny Space Invaders - by dbox - 09-10-2025, 05:06 PM
RE: Tiny Space Invaders - by Pete - 09-10-2025, 11:00 PM
RE: Tiny Space Invaders - by dbox - 09-11-2025, 02:52 PM
RE: Tiny Space Invaders - by Pete - 09-11-2025, 04:39 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Space Invaders knock off to show simple collisions Unseen Machine 10 1,104 09-09-2025, 07:23 PM
Last Post: Pete
  Tiny Maze Maker - ASCII SierraKen 19 1,720 08-09-2025, 11:39 PM
Last Post: SierraKen
  Space Pongy bplus 3 829 11-29-2024, 11:18 PM
Last Post: SierraKen
  Tech Invaders 5 SierraKen 5 1,218 08-12-2024, 01:10 PM
Last Post: Dav
  sweet little circuit game space maker bplus 3 1,234 02-19-2024, 01:27 AM
Last Post: PhilOfPerth

Forum Jump:


Users browsing this thread: 1 Guest(s)