----------------------------------- jainarihant Wed May 14, 2003 7:05 pm Help with simplifying code. ----------------------------------- import GUI in "gui" % variables var windowID : int := Window.Open ("graphics:345;200, title:Lucky Seven") var fontID : int := Font.New ("Verdana:40") var gameEnd : boolean := false var total : int := 100 randomize % sets bgcolor to grey colorback (28) cls % prints total money amount on title bar colorback (25) locate (2, 2) put "Winnings : $", total % prints lucky seven on bottom of screen Font.Draw ("Lucky Seven", 1, 1, fontID, black) % draws and clears number windows procedure numberWindows (fillColor : int) var boxx : int := 120 for i : 1 .. 3 Draw.Box (boxx, 90, boxx + 50, 170, black) Draw.Fill (boxx + 10, 100, fillColor, black) boxx := boxx + 60 end for end numberWindows % when 'Spin' button is pressed procedure Spin % 3 random numbers var number : array 1 .. 3 of int % font x value of numbers var fx : int := 130 % calls setup procedure to clear number windows numberWindows (31) % chooses 3 random numbers and displays them in number windows for i : 1 .. 3 randint (number (i), 0, 9) Font.Draw (intstr (number (i)), fx, 95, fontID, 18) fx += 60 end for if number (1) = 7 and number (2) = 7 and number (3) = 7 then % if user gets 3 sevens % adds 100 bucks to total winnings total := total + 100 locate (2, 2) put " " locate (2, 2) put "Winnings : $", total sound (900, 300) % flashes the lucky seven logo for i : 1 .. 10 Font.Draw ("Lucky Seven", 1, 1, fontID, 14) delay (100) Font.Draw ("Lucky Seven", 1, 1, fontID, 3) delay (100) end for Font.Draw ("Lucky Seven", 1, 1, fontID, 7) elsif number (1) = 7 or number (2) = 7 or number (3) = 7 then % if user gets one seven % adds 10 bucks to total total := total + 10 locate (2, 2) put " " locate (2, 2) put "Winnings : $", total sound (700, 200) else % no sevens, loses 10 bucks total := total - 10 locate (2, 2) put " " locate (2, 2) put "Winnings : $", total end if end Spin % when 'Exit' button is pressed procedure Exit gameEnd := true end Exit numberWindows (31) % draws buttons var buttonSpin : int := GUI.CreateButton (40, 140, 0, "Spin", Spin) var buttonExit : int := GUI.CreateButton (40, 90, 0, "Exit", Exit) loop exit when gameEnd = true exit when GUI.ProcessEvent end loop % closes window Window.Close (windowID) Could i make this program any simpler , or cut down on length ! .. Thank you .. ! MOD EDIT: Topic has been changed. Do not make general topics. Read our topic policy at the top of the forum. -Asok ----------------------------------- Asok Wed May 14, 2003 7:08 pm ----------------------------------- taking out the comments will cut down the length :lol: ----------------------------------- jainarihant Wed May 14, 2003 7:13 pm ----------------------------------- Yea , I know hehe , but i need that cuz the teacher want them !! ----------------------------------- Tony Thu May 15, 2003 9:27 am ----------------------------------- so just keep everything... why shorten the program? ----------------------------------- Andy Mon May 19, 2003 6:17 pm ----------------------------------- or you can just declare a couple of variables at the same time that'll save you 5 or six lines ----------------------------------- nate Mon May 19, 2003 6:48 pm virtical spaces ----------------------------------- well for some of the program u could get rid of some of the virtical spacing. Other than what every1 else has already said i think thats it! -Nate ----------------------------------- Catalyst Mon May 19, 2003 7:12 pm ----------------------------------- u use locate (2,2) alot u might want to do somethin like this proc loc22 (s:string) locate (2,2) put s end loc22 ----------------------------------- tum_twish Tue May 20, 2003 7:43 pm ----------------------------------- u could put the Font.Draws in one procedure, so u dont call'em manytimes