Help Johnny (the character) find free wifi so he can watch his funny cat videos!

Navigate the blue (color can be changed in "options") dot into the circles (range of the wifi), using the [4] and [6] keys. The darker the circle (more "bars"/better quality), the more points you get. If a circle is red (locked), then you lose points.

If you reach the end or travel into the shaded sides, your game ends and you are redirected to a highscores table. You can reset the table by going to the main menu (running the program again), going to the options menu, and typing in the number it shows you. I added the last part for several reasons:

1) it's fun to implement.

2) It's like a captcha!

3) Prevents accidental resets. Those are ANNOYING!

I think that's all.

Here's some messy code:

`SetUpEditor `

SetUpEditor |LWIFIS

1->dim(|LWIFIS

If not(|LWIFIS(1

Blue->|LWIFIS(1

ClrHome

Lbl M0

Menu("WIFI |v1.5","PLAY!",M1,"OPTIONS...",M2

Lbl M2

Menu("OPTIONS...","PLAYER COLOR",PC,"CLEAR HIGHSCORES",CH,"BACK",M0

Lbl PC

Input "PLAYER COLOR: ",P

If P<=DarkGray and P>=Blue

Then

Disp "INVALID COLOR

Else

P->|LWIFIS(1

Pause "PLAYER COLOR SET.

End

Goto M0

Lbl CH

randInt(1,256->G

Disp "CLEAR HIGHSCORES...","--------------------------","TYPE "+toString(G)+" IF YOU ARE SURE."

Input ":",P

If P=G:Then

SetUpEditor |LWIFI

Fill(0,|LWIFI

Archive |LWIFI

End

Goto M0

Lbl M1

ZStandard:ZSquare:AxesOff

0.25->|N

{Red,White,LtGray,Gray,DarkGray,Black->L5

7->dim(L6

Line(Xmin,15,~10,15,1,Black,4

Line(10,20,Xmax,20,1,Black,4

randIntNoRep(~8,8,7->L1

randIntNoRep(~8,8,7->L2

randIntNoRep(1,4,4->L4

augment(L4,{randInt(1,4),~1,~1->L4

L4+2->|LC

1->|LC(6

Ans->|LC(7

For(A,1,7

Pt-On(L1(A),L2(A),3,Black

If 0<L4(A

Then

int((randInt(2,4)*(6-L4(A)))/4)->L3(A

Else

randInt(1,4->L3(A

End

Circle(L1(A),L2(A),L3(A),L5(|LC(A))

End

DelVar PDelVar AYmin->B

Pt-Change(A,B,|LWIFIS(1

Repeat (B>Ymax) or (A>10) or (A<~10)

Repeat Ans

getKey

End

Ans->K

Pt-Change(A,B,|LWIFIS(1

A+2|N*(~(K=82)+(K=84)->A

B+|N->B

Pt-On(A,B,1,|LWIFIS(1

For(N,1,7

(A-L1(N))^^2+(B-L2(N))^^2->D

If D<=(L3(N)^^2+1)

Then

P+L4(N->P

1->L6(N

Else

If L6(N:Then

Circle(L1(N),L2(N),L3(N),L5(|LC(N))

Pt-On(L1(N),L2(N),3,Black

End

0->L6(N

End

Text(1,1,P

End

End

SetUpEditor |LWIFI

10->dim(|LWIFI

augment(|LWIFI,{P->|LWIFI

SortD(|LWIFI

10->dim(|LWIFI

|LWIFI->L1

Archive |LWIFI

ClrDraw

Text(1,1,"HIGH SCORES:

1->H

For(A,1,10

TextColor(Black-(H*(L1(A)=P)

H-(L1(A)=P)->H

toString(L1(A->Str0

If not(L1(A

"--->Str0

10*fPart(A/10

Text(15A,1,A=10,Ans,": ",Str0

End

Thanks to Pieman for helping me test and make some improvements!

If there is anything I missed, please let me know!

I will probably update this somewhat frequently. Tell me what you think!

FacebookandTwitterFollow @Codewalr_us