Qbasicnews.com
May 23, 2019, 04:16:03 PM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Back to Qbasicnews.com | QB Online Help | FAQ | Chat | All Basic Code | QB Knowledge Base
 
   Home   Help Search Login Register  
Pages: [1] 2 3
  Print  
Author Topic: 32Bowling For John  (Read 14828 times)
j2krei08
Guru
**
Posts: 284



WWW
« on: July 15, 2005, 06:53:12 PM »

Hey hey, I'm back for today.

I found out BLOAD, and now I'm ready.

If I can find a donor site to place my info, I would, but I have no internet site.  Can someone help me there?
I just need a place to store my images for a while.

I have decided to go a different route and change the physics from my old Qbowling.  I promise to post more information as availible (I still don't have internet).

My new physics are based on three things: ball placement, throwing angle, and strength.  The greater the angle and speed, the more it moves to different areas.  The pin physics will stay the same, though.  Knock down one and it just knocks down the others behind it.  And now with bmp's, I can draw out (beautifully) the things I want done.
Logged
j2krei08
Guru
**
Posts: 284



WWW
« Reply #1 on: August 20, 2005, 10:42:51 PM »

Hehe...  I just got a geocites account.

Here's screenshots:


Logged
speedlemon
I hold this place together
*****
Posts: 874



« Reply #2 on: August 20, 2005, 11:47:06 PM »

Cool
good work john
Logged
j2krei08
Guru
**
Posts: 284



WWW
« Reply #3 on: September 06, 2005, 04:55:54 PM »

It's here!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Finally, I have a Beta demo out.  It only has 3 frames and doesn't keep score.  Try it out: HERE.

So try it out and tell me what you think.  If you beg, I might even give you the sourcecode.
Logged
j2krei08
Guru
**
Posts: 284



WWW
« Reply #4 on: November 16, 2005, 03:21:00 PM »

Hey, people!  Try it out!

Does anyone else have flashing problems?  I need some input on how to fix!  anyone willing to help gets the source code! :bounce:
Logged
marzecTM
Ancient Guru
****
Posts: 688


« Reply #5 on: November 16, 2005, 04:12:54 PM »

WOAHHH FREE SOURCECODE! here i give you my internet! can i have the sources now? plz? thx yo
Logged

quote="NecrosIhsan"]

[/quote]
NecrosIhsan
Been there, done that
*****
Posts: 1191



« Reply #6 on: November 16, 2005, 06:15:33 PM »

Shocked  :lol:  :lol:  :lol:

Nice, marzec...

Seriously...a bowling game is kinda cool...you could have won my compo awhile back. Cheesy
Logged

\__/)
(='.'=) Copy bunny into your signature to
(")_(") help him gain world domination.
j2krei08
Guru
**
Posts: 284



WWW
« Reply #7 on: November 17, 2005, 04:59:19 PM »

Well, did you answer my question?

Does it flash disgustingly when you run it?  Only if you answer will you get the source.

It's here!
Logged
SSC
Guru
**
Posts: 288



WWW
« Reply #8 on: November 18, 2005, 07:15:02 AM »

yes it starts flashing on the second throw
Logged

url=http://www.smithcosoft.com]SmithcoSoft Creations[/url]
"If you make it idiot proof, someone will make a better idiot" - Murphy's Law
j2krei08
Guru
**
Posts: 284



WWW
« Reply #9 on: November 18, 2005, 03:25:54 PM »

OK.  Here it is for FB.

Code:
DECLARE SUB ChooseBallColor()
DECLARE SUB DetLane (min,ln,x,lx,angln,lang)
DECLARE SUB DraPins(scrn)
DECLARE SUB DrawBall(which,x,y)
DECLARE SUB Hitpins (I,PinH)
DECLARE SUB INIT ()
DECLARE SUB ResetLane ()
DECLARE SUB ShowScore ()
DECLARE FUNCTION Strength()
DECLARE SUB Strike ()
DECLARE SUB Spare ()
DECLARE SUB Menu ()
DECLARE SUB Quitscreen ()
DECLARE SUB Pause ()
DECLARE SUB Moveball ()
DECLARE SUB Cheat ()
DECLARE SUB Bumpers ()
DECLARE SUB ShowRoll (I)
DECLARE SUB Hold(t&)
DECLARE SUB ShowballRoll

TYPE PINSTAT
   Up AS INTEGER
END TYPE

'Image Sprites
DIM SHARED PIN1(8192) AS UBYTE
DIM SHARED PIN2(4096) AS UBYTE
DIM SHARED BALL1(16384) AS UBYTE
DIM SHARED BALL2(4096) AS UBYTE
DIM SHARED BALL3(4096) AS UBYTE
DIM SHARED BALL4(4096) AS UBYTE
DIM SHARED SHADE(4096) AS UBYTE
DIM SHARED LANE(925696) AS UBYTE
DIM SHARED mouse(8192) AS UBYTE
DIM SHARED scrn(32*32*5) AS UBYTE
DIM SHARED choose (188416) AS UBYTE
DIM SHARED menus(1847296) AS UBYTE
DIM SHARED PINS(10) AS PINSTAT
DIM SHARED COL1%,COL2%,COL3%
DIM SHARED b,ang,tgt,speed,roll,move,angle,lx,score,rlb,s,queue,skip
DIM SHARED ACTUAL_ANGLE,ACTUAL_BALLX,ACTUAL_SPEED,ACTUAL_TARGT
DIM SHARED diff,sl,st,bump,onesecond

RANDOMIZE TIMER

INIT
MENU
ChooseBallColor
CLS
markedtime=timer
PRINT "Please Wait...":SCREENCOPY
FOR t& = 0 TO 30000000:NEXT
onesecond& = 30000000/(timer-markedtime)
PRINT "onesecond=",onesecond&
SLEEP 1000



DO
   RESETLANE
   FOR roll = 1 TO 2
      ang=175
      b=35
      move = 1
      x=314
      skip = 0
      TOP:
      DO
         BLOAD "DATA\LANE1.DAT",0
         RESTORE Pin1Up
         DraPins 1
         DrawBall(1,x-32,480-32)
         ShowballRoll
         SCREENCOPY
         IF move = 1 THEN
            DO
               N$ = INKEY$
               IF N$ = CHR$(255) + "M" THEN
                  x=x+41.333333
                  IF x > 490 THEN x=x-41.333333
               ELSE IF N$ = CHR$(255) + "K" THEN
                  x=x-41.333333
                  IF x < 150 THEN x = x+41.333333
                  END IF
               END IF
            LOOP UNTIL N$ > ""
         END IF
         
         IF move = 2 THEN
            LINE (x+1,448)-(ang,300),RGB (COL1%,COL2%,COL3%)
            SCREENCOPY
            SLEEP sl
            N$ = INKEY$
            ang=ang+b
            IF ang > 450 OR ang < 190 THEN b=-b
         END IF
         
         IF N$ = CHR$(27) THEN Quitscreen
         IF UCASE$(N$) = "P" THEN Pause
      LOOP UNTIL N$ = CHR$(32) OR N$ = CHR$(13)
         
      IF move = 1 THEN
         move = 2
         GOTO TOP
      END IF
     
     
      RESTORE LANE
      DetLane (min,ln,x,lx,angln,lang)
     
      STRENGTH
     
      FOR I=445 TO -10 STEP -speed
         RESTORE Pin2Up
         ShowRoll (I)
         IF bump = 1 THEN Bumpers
         Cheat      
         IF MULTIKEY(&h48) THEN skip = 1
         IF MULTIKEY(&h01) THEN Quitscreen
         Moveball
         Hitpins (I,0)
         IF UCASE$(N$) = "P" THEN Pause
         SLEEP 5
      NEXT
     
      IF s = 1 THEN
         IF roll = 2 THEN Spare
         IF roll = 1 THEN Strike
      ELSE
         FOR I = 1 TO 10
            IF Pins(I).Up = 0 THEN queue = queue + 1
         NEXT I
         score = score + queue
      END IF
      ShowScore
     
   NEXT roll

   frame = frame + 1

LOOP UNTIL frame = 10

Showscore
SLEEP 2000
STOP


SUB ShowballRoll
   IF roll >= 1 THEN
      LINE (225,2)-(245,6),&hFF0000,BF
      LINE(232,7)-(238,32),&hFF0000,BF
      LINE (225,33)-(245,37),&hFF0000,BF
   END IF
   IF roll = 2 THEN
      LINE (246,2)-(264,6),&hFF0000,BF
      LINE(253,7)-(259,32),&hFF0000,BF
      LINE (246,33)-(264,37),&hFF0000,BF
   END IF
END SUB

SUB ShowRoll (I)
   N$ = INKEY$
   PUT(0,0),LANE,TRANS
   DrawBall (2,lx,I)
   DraPins 2
   SCREENCOPY
END SUB

SUB Bumpers
   LINE (240,0)-(240,480),&hFF0000,BF
   LINE (395,0)-(395,480),&hFF0000,BF
   SCREENCOPY
END SUB

SUB Cheat
   IF MULTIKEY(&h2A) AND MULTIKEY(&h4B) THEN angle = angle - 2
   IF MULTIKEY(&h2A) AND MULTIKEY(&h4D) THEN angle = angle + 2
   IF skip <> 1 THEN SLEEP 50
END SUB

SUB MoveBall
   IF lx > 205 AND lx < 395 THEN
         IF ACTUAL_SPEED > ACTUAL_TARGT-30 AND ACTUAL_SPEED < ACTUAL_TARGT+30 THEN
            IF ACTUAL_ANGLE > ACTUAL_BALLX THEN lx = lx + angle
            IF ACTUAL_ANGLE < ACTUAL_BALLX THEN lx = lx - angle
         ELSE IF ACTUAL_SPEED > ACTUAL_TARGT+30 THEN
            IF ACTUAL_ANGLE > ACTUAL_BALLX THEN lx = lx + angle
            IF ACTUAL_ANGLE < ACTUAL_BALLX THEN lx = lx - angle
         ELSE IF ACTUAL_SPEED < ACTUAL_TARGT-30 THEN
            IF ACTUAL_ANGLE > ACTUAL_BALLX THEN lx = lx + angle
            IF ACTUAL_ANGLE < ACTUAL_BALLX THEN lx = lx - angle
         ELSE IF ACTUAL_SPEED < ACTUAL_TARGT+30 THEN
            IF ACTUAL_ANGLE > ACTUAL_BALLX THEN lx = lx + angle
            IF ACTUAL_ANGLE < ACTUAL_BALLX THEN lx = lx - angle
         END IF
      END IF
      END IF
      END IF
   END IF

   IF lx > 363 AND bump = 1 THEN angle = -angle
   IF lx < 240 AND bump = 1 THEN angle = -angle
END SUB

SUB ShowScore
   CLS
   DIM nums(32768) AS UBYTE
   DIM moveit(75*43*2) AS UBYTE
   DIM scoresh(270336) AS UBYTE
   s$ = STR$(score)+CHR$(32)
   FOR I = 1 TO 4
      e$ = MID$(s$,I,1)
      IF e$ = CHR$(32) THEN
         f = I - 1
         I = 4
      END IF
   NEXT I
   BLOAD "DATA\NUMBERS.DAT",VARPTR(nums(0))
   BLOAD "DATA\SCORE.DAT",VARPTR(scoresh(0))
   FOR I = 1 TO f
      a = -(VAL(MID$(s$,I,1)))*42
      PUT(xx,a),nums,TRANS
      LINE (xx, 43)-(xx + 25,480),0,BF
      xx = xx + 25
   NEXT I
   PUT (0,50),scoresh,TRANS
   SCREENCOPY
   t = TIMER
   DO
      N$ = INKEY$
      IF UCASE$(N$) = "P" THEN Pause
      IF N$ = CHR$(27) THEN Quitscreen
   LOOP UNTIL N$ > "" OR TIMER > t + 2
END SUB

SUB Hitpins (I,PinH)
   IF (lx > 220 AND lx < 270 AND I < 65 AND Pins(1).Up = 1) OR PinH = 1 THEN
      Pins(1).Up = 0
   END IF
   
   IF PinH = 2 AND Pins(2).Up = 1 THEN
      Pins(2).Up = 0
   END IF
   
   IF PinH = 3 AND Pins(3).Up = 1 THEN
      Pins(3).Up = 0
   END IF
   
   IF (lx > 347 AND lx < 387 AND I < 65 AND Pins(4).Up = 1) OR PinH = 4 THEN
      Pins(4).Up = 0
   END IF
   
   IF (lx > 235 AND lx < 255 AND I < 81 AND I > 55 AND Pins(5).Up = 1) OR PinH = 5 THEN
      Pins(5).Up = 0
      Hitpins (I,1)
      Hitpins (I,2)
   END IF
   
   IF PinH = 6 AND Pins(6).Up = 1 THEN
      Pins(6).Up = 0
   END IF
   
   IF (lx > 347 AND lx < 366 AND I < 53 AND I > 68 AND Pins(7).Up = 1) OR PinH = 7 THEN
      Pins(7).Up = 0
      HitPins (I,3)
      HitPins(I,4)
   END IF
   
   IF (lx > 258 AND lx < 282 AND I < 116 AND I > 95 AND Pins(8).Up = 1) OR PinH = 8 THEN
      Pins(8).Up = 0
      Hitpins (I,1)
      Hitpins (I,2)
      Hitpins (I,3)
      Hitpins (I,5)
      Hitpins (I,6)
   END IF
   
   IF (lx > 317 AND lx < 357 AND I < 116 AND I > 82 AND Pins(9).Up = 1) OR PinH = 9 THEN
      Pins(9).Up = 0
      Hitpins (I,2)
      Hitpins (I,3)
      Hitpins (I,4)
      Hitpins (I,6)
      Hitpins (I,7)
   END IF
   
   IF (lx > 280 AND lx < 329 AND I < 145 AND I > 110 AND Pins(10).Up = 1) THEN
      Pins(10).Up = 0
      Hitpins (I,9)
      Hitpins (I,8)
      S = 1
   END IF
   
   
   
END SUB

SUB Strike
   WHILE INKEY$ <> "": WEND
   Score = score + 30
   CLS
   BLOAD "DATA\STRIKE.DAT",0
   SCREENCOPY
   DO
      N$ = INKEY$
      IF UCASE$(N$) = "P" THEN Pause
      IF N$ = CHR$(27) THEN Quitscreen
   LOOP WHILE N$ = ""
   roll = 2
   s = 0
END SUB

SUB Spare
   WHILE INKEY$ <> "": WEND
   Score = score - queue
   Score = score + 20
   CLS
   BLOAD "DATA\SPARE.DAT",0
   SCREENCOPY
   DO
      N$ = INKEY$
      IF UCASE$(N$) = "P" THEN Pause
      IF N$ = CHR$(27) THEN Quitscreen
   LOOP WHILE N$ = ""
   roll = 2
   s = 0
END SUB

SUB DetLane (min,ln,x,lx,angln,lang)
   
   FOR I = 1 TO 9
      READ min,ln
      SCREENCOPY
      IF x >=min-1 AND x<=min+20.666666 THEN
         LANES = ln
         I = 9
      END IF
   NEXT I
   IF ln < 9 THEN
      DO
         READ null
      LOOP UNTIL null = 9
   END IF
   
   FOR I = 1 TO ln
      READ lx
   NEXT I
   
   RESTORE LANE
   FOR I = 1 TO 9
      READ min,angln
      SCREENCOPY
      IF ang >=min-1 AND ang<=min+20.666666 THEN
         ANGLE = angln
         I = 9
      END IF
   NEXT I
   IF angln < 9 THEN
      DO
         READ null
      LOOP UNTIL null = 9
   END IF
   
   FOR I = 1 TO angln
      READ lang
   NEXT I
   
   ACTUAL_ANGLE = ang-36
   ACTUAL_BALLX = x
END SUB

SUB ChooseBallColor ()
   x=-50
   f = INT(RND * 3)+ 1
   SETMOUSE 240,320,0
   mouseframe = 1
   mousedraw = 0
   DO
      BLOAD "DATA\Chooseball2.DAT",0
     
      GETMOUSE mx,my,,mb
     
      IF f = 1 THEN
         PUT (0,0),choose,PSET
         LINE(0,32)-(640,96),0,BF
      ELSE
         IF f = 2 THEN
            PUT (0,-32),choose,PSET
            LINE (0,32)-(640,64),0,BF
         ELSE
            IF f = 3 THEN
               PUT (0,-64),choose, PSET
            END IF
         END IF
      END IF
     
      IF mouseframe = 1 THEN
         GET (mx,my + 32)-(mx + 32,my + 64),scrn
         PUT (mx,my),mouse,TRANS
         PUT (mx,my + 32),scrn,PSET
      ELSE
         GET (mx,my-32)-(mx+32,my),scrn
         PUT (mx,my - 32),mouse,TRANS
         PUT (mx,my-32),scrn,PSET
      END IF
     
      SCREENCOPY
      SLEEP 1
      mousedraw=mousedraw+1
      IF mousedraw > 50 THEN
         mouseframe = -mouseframe
         mousedraw = 0
      END IF
     
      IF(my>=100 AND my<=132)AND mb=1 THEN GOSUB SELECTS
     
      IF INKEY$ = CHR$(27) THEN END
     
   LOOP
   
   SELECTS:
      IF (mx>=14 AND mx<=45) AND mb=1 THEN
         COL1=255:COL2=0:COL3=0
      ELSE IF (mx>=78 AND mx<=110) AND mb=1 THEN
         COL1=255:COL2=255:COL3=0
      ELSE IF (mx>=142 AND mx<=174) AND mb=1 THEN
         COL1=0:COL2=255:COL3= 0
      ELSE IF (mx>=204 AND mx<=236) AND mb=1 THEN
         COL1=0:COL2=0:COL3=255
      ELSE IF (mx>=268 AND mx<=300) AND mb=1 THEN
         COL1=255:COL2=128:COL3=64
      ELSE IF (mx>=332 AND mx<=364) AND mb=1 THEN
         COL1=0:COL2=128:COL3=0
      ELSE IF (mx>=396 AND mx<=428) AND mb=1 THEN
         COL1=0:COL2=0:COL3=128
      ELSE IF (mx>=460 AND mx<=492) AND mb=1 THEN
         COL1=128:COL2=0:COL3=0
      ELSE IF(mx>=524 AND mx<=556) AND mb=1 THEN
         COL1=128:COL2=128:COL3=0
      ELSE IF (mx>=588 AND mx<=620) AND mb=1 THEN
         COL1=64:COL2=64:COL3= 64
      ELSE RETURN
      END IF
   END IF
   END IF
   END IF
   END IF
   END IF
   END IF
   END IF
   END IF
   END IF
   CLS
   SETMOUSE 0,0,0
END SUB

FUNCTION Strength ()
   J=1:L=1:I=480:K=480:A=1:B=1
   IF ACTUAL_ANGLE >= ACTUAL_BALLX THEN tgt = ACTUAL_ANGLE - ACTUAL_BALLX
   IF ACTUAL_ANGLE < ACTUAL_BALLX THEN tgt = ACTUAL_BALLX - ACTUAL_ANGLE
   SCREENSET 0
   DO
      N$ = INKEY$
      I=I-A
      J=J+B
      LINE (0,tgt-30)-(30,tgt+30),&hFF0000,B
      LINE (5,I)-(15,I),RGB(J/2,I/2,J/10)
      LINE (5,I-1)-(15,I-1),0
      IF I=1 OR I = 480 THEN A=-A
      IF J=1 OR J = 480 THEN B=-B
      IF UCASE$(N$) = "P" THEN
         SCREENSET 1,0
         Pause
      END IF
      IF N$ = CHR$(27) THEN
         SCREENSET 1,0
         Quitscreen
      END IF
      HOLD onesecond& / st
   LOOP UNTIL N$=CHR$(32) OR N$ = CHR$(13)
   A=1:B=1
   DO
      N$ = INKEY$
      K=K-A
      L=L+B
      LINE (15,K)-(25,K),RGB(L/4,K/2,L/4)
      LINE (15,K-1)-(25,K-1),RGB(0,0,0)
      IF K=1 OR K = 480 THEN A=-A
      IF L=1 OR L = 480 THEN B=-B
      IF UCASE$(N$) = "P" THEN
         SCREENSET 1,0
         Pause
      END IF
      IF N$ = CHR$(27) THEN
         SCREENSET 1,0
         Quitscreen
      END IF
      HOLD onesecond / st
   LOOP UNTIL N$=CHR$(32) OR N$ = CHR$(13)
   
   ACTUAL_SPEED = 480-I
   ACTUAL_TARGT = 480-tgt
   speed=INT(480-I)/16
   angle=INT(((480-K)/64))*1.5
   tgt = INT((480-tgt)/16)*1.5
   IF ACTUAL_BALLX = 150 OR ACTUAL_BALLX = 478 AND bump = 0 THEN
      tgt = 0
      angle = 0
   END IF
   IF speed=0 THEN speed=1
END FUNCTION

SUB DrawBall (which,x,y)
      IF which = 1 THEN
         PUT (x,y), ball1,TRANS
         PAINT (x+31,y+31),RGB(COL1,COL2,COL3),0
      END IF
     
      IF which = 2 THEN
         rlb = rlb + speed
         IF rlb >= INT((ACTUAL_TARGT+ACTUAL_ANGLE)/32) * 3 THEN rlb = 0
         IF rlb <= INT((ACTUAL_TARGT+ACTUAL_ANGLE)/32) THEN
            PUT (x,y),BALL4,TRANS
         ELSE IF rlb >= INT((ACTUAL_TARGT+ACTUAL_ANGLE)/32)+1 AND rlb <= INT((ACTUAL_TARGT+ACTUAL_ANGLE)/32)*2 THEN
            PUT (x,y),BALL3,TRANS
         ELSE IF rlb >= INT((ACTUAL_TARGT+ACTUAL_ANGLE)/32)*2+1 AND rlb <= INT((ACTUAL_TARGT+ACTUAL_ANGLE)/32)*3 THEN
            PUT (x,y),BALL2,TRANS
               END IF
            END IF
      END IF
      PAINT (x+16,y+16),RGB(COL1,COL2,COL3),&hC0C0C0
      PUT (x,y),SHADE,TRANS
   END IF
END SUB

SUB DraPins (scrn)
   
   IF scrn = 1 THEN
      FOR I=1 TO 10
         READ x,y
         IF Pins(I).Up=1 THEN
            PUT (x,y),PIN1,TRANS
         END IF
      NEXT I
   END IF
   
   IF scrn = 2 THEN
      FOR I=1 TO 10
         READ x,y
         IF Pins(I).Up=1 THEN
            PUT (x,y),PIN2,TRANS
         END IF
      NEXT I
   END IF
   
   
   
END SUB

SUB INIT
   
   SCREEN 18,16,2,1
   SCREENSET 1,0
   
   BLOAD "DATA\PIN1.DAT",VARPTR(PIN1(0))
   BLOAD "DATA\PIN2.DAT",VARPTR(PIN2(0))
   BLOAD "DATA\LANE2.DAT",VARPTR(LANE(0))
   BLOAD "DATA\BALL1.DAT",VARPTR(BALL1(0))
   BLOAD "DATA\BALL2.DAT",VARPTR(BALL2(0))
   BLOAD "DATA\BALL3.DAT",VARPTR(BALL3(0))
   BLOAD "DATA\BALL4.DAT",VARPTR(BALL4(0))
   BLOAD "DATA\SHADING.DAT",VARPTR(SHADE(0))
   BLOAD "DATA\Chooseball.DAT",VARPTR(choose(0))
   BLOAD "DATA\Mouse.DAT", VARPTR(mouse(0))
   BLOAD "DATA\Difficulty.DAT",VARPTR(menus(0))
END SUB

SUB ResetLane
   
   FOR I=1 TO 10
      PINS(I).Up=1
   NEXT I
   
END SUB

SUB Menu
   mouseframe=1
   SETMOUSE 320,240,0
   DO
      GETMOUSE mx,my,,mb
      PUT (0,0),menus,PSET
      SCREENCOPY
      N$ = INKEY$
      IF N$ = CHR$(27) THEN Quitscreen
   LOOP UNTIL N$ = CHR$(32) OR mb = 1
   
   DO
      PUT (0,-480),menus,PSET
      GETMOUSE mx,my,,mb
      IF mouseframe = 1 THEN
         GET (mx,my + 32)-(mx + 32,my + 64),scrn
         PUT (mx,my),mouse,TRANS
         PUT (mx,my + 32),scrn,PSET
      ELSE
         GET (mx,my - 32)-(mx + 32,my),scrn
         PUT (mx,my - 32),mouse,TRANS
         PUT (mx,my - 32),scrn,PSET
      END IF
     
      SCREENCOPY
      SLEEP 1
      mousedraw=mousedraw+1
      IF mousedraw > 50 THEN
         mouseframe = -mouseframe
         mousedraw = 0
      END IF
     
      IF mb = 1 THEN
         IF mx >= 272 AND mx <= 346 AND my >= 27 AND my <= 52 THEN
            diff = 1
            EXIT DO
         END IF
         IF mx >= 267 AND mx <= 351 AND my >= 158 AND my <= 172 THEN
            diff = 2
            EXIT DO
         END IF
         IF mx >= 276 AND mx <= 337 AND my >= 263 AND my <= 298 THEN
            diff = 3
            EXIT DO
         END IF
         IF mx > 568 AND mx < 615 AND my > 449 AND my < 467 THEN Quitscreen
      END IF
      IF INKEY$ = CHR$(27) THEN Quitscreen
   LOOP
   
   IF diff = 1 THEN
      sl = 50
      st = 150
      bump = 1
   END IF
   IF diff = 2 THEN
      sl = 30
      st = 100
      bump = 0
   END IF
   IF diff = 3 THEN
      sl = 10
      st = 70
      bump = 0
   END IF
   
END SUB

SUB Quitscreen
   CLS
   t = TIMER
   DO
      BLOAD "DATA\Quitscreen.DAT",0
      SCREENCOPY
   LOOP UNTIL TIMER > t + 2
   END
END SUB

SUB Pause
   CLS
   mouseframe = 1
   SETMOUSE 320,240,0
   DO
      BLOAD "DATA\PAUSE.DAT",0
      Drawball (1,290,415)
      GETMOUSE mx,my,,mb
      IF mouseframe = 1 THEN
         GET (mx,my + 32)-(mx + 32,my + 64),scrn
         PUT (mx,my),mouse,TRANS
         PUT (mx,my + 32),scrn,PSET
      ELSE
         GET (mx,my - 32)-(mx + 32,my),scrn
         PUT (mx,my - 32),mouse,TRANS
         PUT (mx,my - 32),scrn,PSET
      END IF
     
      SCREENCOPY
      SLEEP 5
      mousedraw=mousedraw+1
      IF mousedraw > 50 THEN
         mouseframe = -mouseframe
         mousedraw = 0
      END IF
     
      IF mx > 217 AND mx < 348 AND my > 123 AND my < 141 AND mb = 1 THEN EXIT DO
      IF mx > 217 AND mx < 423 AND my > 171 AND my < 189 AND mb = 1 THEN ChooseBallColor
      IF mx > 217 AND mx < 392 AND my > 219 AND my < 237 AND mb = 1 THEN Showscore
      IF mx > 217 AND mx < 278 AND my > 267 AND my < 290 AND mb = 1 THEN Quitscreen
     
      IF my > 380 THEN setmouse mx,380,0
     
   LOOP UNTIL INKEY$ = CHR$(27)
END SUB

SUB Hold (t&)
   FOR counter = 0 to t&:NEXT
END SUB

Pin1Up:
DATA 255,56,288,56,319,56,350,56,270,73,303,73,334,73,288,91,319,91,303,113

Pin2Up:
DATA 240,10,280,10,320,10,360,10,260,40,300,40,340,40,280,70,320,70,300,100

LANE:
DATA 150,1,191,2,232,3,273,4,315,5,356,6,397,7,439,8,480,9
DATA 210,235,250,270,300,335,348,360,390


It needs to be put one directory above DATA, in where Bowling.exe is to work.  Please, any input is helpful.
Logged
MystikShadows
Ancient Guru
****
Posts: 542



WWW
« Reply #10 on: November 18, 2005, 04:46:43 PM »

The first ball doesn't flash all that much...

The second and 3rd ball flash alot more and somethign causes the pins to flash too after the first shot.

All in all it's a nice concept though..well made.
Logged

hen they say it can't be done, THAT's when they call me ;-).




need hosting:  http://www.jc-hosting.net
All about ASCII: http://www.ascii-world.com
j2krei08
Guru
**
Posts: 284



WWW
« Reply #11 on: November 21, 2005, 02:34:24 PM »

Maybe screenlock to lock until it's drawn?
Logged
j2krei08
Guru
**
Posts: 284



WWW
« Reply #12 on: December 09, 2005, 03:25:03 PM »

Wait.  You need the files.  Download it on my new site:


http://www.geocities.com/jkrei08/32bowlingws.zip
Logged
speedlemon
I hold this place together
*****
Posts: 874



« Reply #13 on: December 09, 2005, 09:57:59 PM »

fixed link:
http://www.geocities.com/j2krei08/32bowlingws.zip
Logged
j2krei08
Guru
**
Posts: 284



WWW
« Reply #14 on: December 10, 2005, 03:34:44 PM »

Oh, thanks Smiley
Logged
Pages: [1] 2 3
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!