Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
sin cos using SUB SumLocate (x,y,l)
#21
Code: (Select All)
SCREEN _NEWIMAGE(1000, 768, 32): DIM CIRCLOOP1(17, 3)
DIM SHARED SPRITES AS LONG, BACKIMAGE AS LONG
SPRITES = _LOADIMAGE("inva.png"): BACKIMAGE = _LOADIMAGE("sc1.png")


_FULLSCREEN
FOR I = 1 TO 16: READ CIRCLOOP1(I, 1), CIRCLOOP1(I, 2): NEXT I: CL$ = "1111111111111000"
DATA 3,1,4,1,5,1,6,2,7,3,7,4,7,5,6,6,5,7,4,7,3,7,2,6,1,5,1,4,1,3,2,2

CLS: frame = 1: RR% = 60: XX% = 8: D = 1: z = 0

DO
    _PUTIMAGE (0, 0 - z), BACKIMAGE
    FOR I = 1 TO 16: B$ = MID$(CL$, I, 1)
        SELECT CASE frame
            CASE 1: IF B$ = "1" THEN _PUTIMAGE (CIRCLOOP1(I, 1) * 48 + RR%, CIRCLOOP1(I, 2) * 48), SPRITES, , (0, 0)-(63, 63)
            CASE 2: IF B$ = "1" THEN _PUTIMAGE (CIRCLOOP1(I, 1) * 48 + RR%, CIRCLOOP1(I, 2) * 48), SPRITES, , (64, 0)-(127, 63)
                'CASE 1: IF B$ = "1" THEN _PUTIMAGE (CIRCLOOP1(I, 1) * 48 + RR%, CIRCLOOP1(I, 2) * 48), SPRITES, , (128, 0)-(191, 63)
                'CASE 2: IF B$ = "1" THEN _PUTIMAGE (CIRCLOOP1(I, 1) * 48 + RR%, CIRCLOOP1(I, 2) * 48), SPRITES, , (192, 0)-(255, 63)

    END SELECT: NEXT I: _DISPLAY: _LIMIT 10
    frame = frame + 1: IF frame > 2 THEN frame = 1: ' PLAY "T255L32O1G" ELSE PLAY "T255L32O1C"
    i$ = INKEY$: RR% = RR% + XX%: IF RR% > 610 THEN XX% = -8: D = 1: ELSE IF RR% < 30 THEN XX% = 8: D = 2
    IF D = 1 THEN B$ = RIGHT$(CL$, 1): CL$ = B$ + LEFT$(CL$, 15)
    IF D = 2 THEN B$ = LEFT$(CL$, 1): CL$ = RIGHT$(CL$, 15) + B$
    IF INT(RND(1) * 20) = 1 THEN D = D + 1: XX% = -8: IF D > 2 THEN D = 1: XX% = 8
    z = z + 1: IF z > 995 THEN z = 0:' z = speed of scroll (higher number = pixels to jump less smoother the higher)
LOOP WHILE i$ <> " "
_FREEIMAGE BACKIMAGE
_FREEIMAGE SPRITES
END


Attached Files Image(s)
   
Reply


Messages In This Thread
sin cos using SUB SumLocate (x,y,l) - by pmackay - 05-08-2024, 06:53 AM
RE: sin cos using SUB SumLocate (x,y,l) - by pmackay - 05-12-2024, 06:20 AM



Users browsing this thread: 3 Guest(s)