Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Screen Savers
#66
Thanks. Appreciate it.

Here is the multi-pipe one, fixed a bug too Big Grin
Code: (Select All)
Screen _NewImage(_DesktopWidth, _DesktopHeight, 32)
_MouseHide
Randomize Timer
_FullScreen _SquarePixels
_Font 8
DefLng A-Z
TW = _Width / _FontWidth
TH = _Height / _FontHeight
Type PipeHead
    As _Unsigned _Byte R, G, B
    As Integer X, Y
    As _Unsigned _Byte D, nD, oD
End Type
Dim As PipeHead Pipes(1 To 16)
For I = 1 To UBound(Pipes)
    Pipes(I).X = Rnd * TW
    Pipes(I).Y = Rnd * TH
    Pipes(I).D = Int(Rnd * 4)
    Pipes(I).nD = 0
    Pipes(I).oD = Pipes(I).D
    Pipes(I).R = 128 + Rnd * 127
    Pipes(I).G = 128 + Rnd * 127
    Pipes(I).B = 128 + Rnd * 127
Next I
Do
    T~%% = (T~%% + 1) Mod 60
    If T~%% = 0 Then Line (0, 0)-(_Width - 1, _Height - 1), &H0F000000, BF
    _Limit 60
    For I = 1 To UBound(Pipes)
        If Rnd < 0.1 And Rnd < 0.5 Then Pipes(I).nD = Int(Rnd * 3) + 1 Else Pipes(I).nD = 2
        Pipes(I).nD = ClampCycle(0, Pipes(I).D - Pipes(I).nD + 2, 3)
        Select Case Pipes(I).D
            Case 0: Pipes(I).X = Pipes(I).X + 1
            Case 1: Pipes(I).Y = Pipes(I).Y + 1
            Case 2: Pipes(I).X = Pipes(I).X - 1
            Case 3: Pipes(I).Y = Pipes(I).Y - 1
        End Select
        If Pipes(I).X < 0 Or Pipes(I).X >= TW Or Pipes(I).Y < 0 Or Pipes(I).Y >= TH Then
            Pipes(I).R = 128 + Rnd * 127
            Pipes(I).G = 128 + Rnd * 127
            Pipes(I).B = 128 + Rnd * 127
        End If
        Color _RGB32(Pipes(I).R, Pipes(I).G, Pipes(I).B), &HFF000000
        Pipes(I).X = ClampCycle(0, Pipes(I).X, TW - 1)
        Pipes(I).Y = ClampCycle(0, Pipes(I).Y, TH - 1)
        Select Case _SHL(Pipes(I).nD, 2) Or Pipes(I).oD
            Case 0, 10: C = 196
            Case 5, 15: C = 179
            Case 1, 14: C = 192
            Case 4, 11: C = 191
            Case 3, 6: C = 218
            Case 9, 12: C = 217
        End Select
        _PrintString (Pipes(I).X * _FontWidth, Pipes(I).Y * _FontHeight), Chr$(C)
        Pipes(I).D = Pipes(I).nD
        Pipes(I).oD = Pipes(I).D
    Next I
    _Display
Loop Until (_MouseInput And (_MouseButton(1) Or _MouseButton(2) Or _MouseButton(3))) Or InKey$ <> ""
System
Function Clamp (A, B, C)
    Clamp = B - (A - B) * (B < A) - (C - B) * (C < B)
End Function
Function ClampCycle (A, B, C)
    ClampCycle = B - (C - B) * (B < A) - (A - B) * (C < B)
End Function]
Reply


Messages In This Thread
Screen Savers - by bplus - 04-27-2022, 12:29 AM
RE: Screen Savers - by Dav - 04-27-2022, 02:26 PM
RE: Screen Savers - by bplus - 04-27-2022, 02:33 PM
RE: Screen Savers - by bplus - 04-30-2022, 11:55 PM
RE: Screen Savers - by madscijr - 04-17-2025, 01:22 PM
RE: Screen Savers - by Dav - 05-01-2022, 07:22 PM
RE: Screen Savers - by bplus - 05-01-2022, 08:26 PM
RE: Screen Savers - by bplus - 05-02-2022, 12:00 AM
RE: Screen Savers - by madscijr - 04-12-2025, 05:56 AM
RE: Screen Savers - by Coolman - 05-02-2022, 09:42 AM
RE: Screen Savers - by bplus - 05-03-2022, 02:13 AM
RE: Screen Savers - by bplus - 05-09-2022, 01:32 PM
RE: Screen Savers - by bplus - 05-19-2022, 07:22 PM
RE: Screen Savers - by bplus - 05-21-2022, 11:22 PM
RE: Screen Savers - by Pete - 05-21-2022, 11:27 PM
RE: Screen Savers - by bplus - 05-21-2022, 11:38 PM
RE: Screen Savers - by Pete - 05-22-2022, 04:39 AM
RE: Screen Savers - by bplus - 06-17-2022, 01:10 PM
RE: Screen Savers - by johnno56 - 06-18-2022, 12:23 AM
RE: Screen Savers - by Kernelpanic - 06-18-2022, 11:48 AM
RE: Screen Savers - by bplus - 06-18-2022, 01:47 AM
RE: Screen Savers - by bplus - 06-18-2022, 12:33 PM
RE: Screen Savers - by SierraKen - 06-20-2022, 09:50 PM
RE: Screen Savers - by bplus - 06-21-2022, 12:15 AM
RE: Screen Savers - by bplus - 06-29-2022, 04:52 PM
RE: Screen Savers - by SierraKen - 06-29-2022, 06:10 PM
RE: Screen Savers - by vince - 07-01-2022, 10:32 PM
RE: Screen Savers - by bplus - 07-01-2022, 11:05 PM
RE: Screen Savers - by bplus - 07-04-2022, 06:54 PM
RE: Screen Savers - by Kernelpanic - 07-04-2022, 09:11 PM
RE: Screen Savers - by bplus - 07-04-2022, 09:54 PM
RE: Screen Savers - by Kernelpanic - 07-05-2022, 02:14 PM
RE: Screen Savers - by bplus - 07-19-2022, 08:28 PM
RE: Screen Savers - by bplus - 08-28-2022, 12:55 AM
RE: Screen Savers - by TempodiBasic - 08-29-2022, 09:26 AM
RE: Screen Savers - by bplus - 09-06-2022, 12:35 AM
RE: Screen Savers - by SierraKen - 09-08-2022, 07:37 PM
RE: Screen Savers - by bplus - 09-09-2022, 02:22 AM
RE: Screen Savers - by SpriggsySpriggs - 09-15-2022, 04:38 PM
RE: Screen Savers - by bplus - 09-15-2022, 05:20 PM
RE: Screen Savers - by bplus - 01-31-2023, 04:21 PM
RE: Screen Savers - by vince - 02-01-2023, 07:27 AM
RE: Screen Savers - by bplus - 02-01-2023, 05:05 PM
RE: Screen Savers - by bplus - 03-13-2023, 10:51 PM
RE: Screen Savers - by vince - 03-31-2023, 11:09 PM
RE: Screen Savers - by bplus - 04-01-2023, 12:09 AM
RE: Screen Savers - by bplus - 05-14-2024, 03:00 PM
RE: Screen Savers - by PhilOfPerth - 05-15-2024, 08:24 AM
RE: Screen Savers - by bplus - 05-15-2024, 11:15 PM
RE: Screen Savers - by bplus - 08-20-2024, 12:00 AM
RE: Screen Savers - by bplus - 02-08-2025, 01:20 AM
RE: Screen Savers - by bplus - 04-12-2025, 10:49 AM
RE: Screen Savers - by madscijr - 04-12-2025, 05:01 PM
RE: Screen Savers - by SMcNeill - 04-17-2025, 01:32 PM
RE: Screen Savers - by madscijr - 04-17-2025, 04:42 PM
RE: Screen Savers - by SMcNeill - 04-17-2025, 05:03 PM
RE: Screen Savers - by NakedApe - 04-17-2025, 01:34 PM
RE: Screen Savers - by bplus - 04-17-2025, 02:59 PM
RE: Screen Savers - by madscijr - 04-17-2025, 05:54 PM
RE: Screen Savers - by SMcNeill - 04-17-2025, 05:59 PM
RE: Screen Savers - by madscijr - 04-17-2025, 06:58 PM
RE: Screen Savers - by madscijr - 04-18-2025, 03:07 AM
RE: Screen Savers - by madscijr - 04-18-2025, 07:55 PM
RE: Screen Savers - by aadityap0901 - 10-31-2025, 10:15 AM
RE: Screen Savers - by Unseen Machine - 11-01-2025, 01:41 AM
RE: Screen Savers - by aadityap0901 - 11-01-2025, 08:35 AM
RE: Screen Savers - by bplus - 01-09-2026, 03:40 PM
RE: Screen Savers - by ahenry3068 - 01-09-2026, 06:36 PM
RE: Screen Savers - by bplus - 01-09-2026, 08:33 PM
RE: Screen Savers - by bplus - 01-11-2026, 03:28 AM
RE: Screen Savers - by bplus - 01-11-2026, 11:44 AM
RE: Screen Savers - by ahenry3068 - 01-11-2026, 02:35 PM
RE: Screen Savers - by bplus - 01-11-2026, 03:15 PM
RE: Screen Savers - by ahenry3068 - 01-11-2026, 09:58 PM
RE: Screen Savers - by bplus - 01-13-2026, 12:51 AM

Forum Jump:


Users browsing this thread: 2 Guest(s)