CheckSum.zip CheckSum.zip
Size : 761.403 Kb
Type : zip

    This is a 6 digit Checksum calculator made with NaaLaa6. I made it because I needed to add a long list of numbers for a game I was making.


visible:
 mx;my;size;column;row;value;key; zoneselected ; Snd1 ; keypad = 0
 panel1;panel2;windownumber = 1 ; zonenumber = 0
 event = 1 ; input$ = "" ; output$ = "" ; count = 0
 data[20]
hidden:
set redraw off
procedure start()
 ThisIsAPlaceHolder = 1
endproc
set window 0, 0, 700, 700

proc SetupData
proc SetupSound
proc SetupButtons
proc SetupPanels
proc SetupKeyPad
proc SetUpWindow
proc SetUpZones

   set color 0,0,0
   cls
 do
 
    if event = 2 then
       proc SetBackGround   
       proc MouseCheck
       proc MakePanels
       proc KeyBoard
       proc DisplayText
       proc MakeKeyPad
       proc MakeWindow
    endif
    if event = 1 then
       proc Menu
       wait 40
    endif
    redraw
 until event = 3

  end

procedure SetBackGround()
 set color 150,150,150
 cls
 set color 255,255,255
 wait 40
endproc

procedure MouseCheck()
  
   mx =  mousex()
   my =  mousey()
   a;b
   if mousebutton(0,1) then
  
   zoneselected = zone(mx,my)
   zonenumber = zoneselected
   endif
     if zoneselected < 11 and zoneselected>0 and count<6 then
        keypad = zoneselected
        if keypad = 10 then keypad = 0
        input$ = input$ + str$(keypad)
        count = count + 1
        play sound 0
     endif
   if zoneselected > 13 then play sound 2
   if zoneselected = 11 then windownumber = windownumber + 1
   if zoneselected = 12 then windownumber = windownumber - 1
   if zoneselected = 13 then
        data[windownumber] = int ( input$ )
        count = 0
        input$ = ""
        for a = 1 to 18
           b=b+ data[a]
        next
        output$ = str$(b)
        play sound 1
        windownumber = windownumber + 1
   endif
   if zoneselected = 14 then
        for a = 1 to 18
           data[a] = 0
        next
        input$ = "" ; output$ = "" ; windownumber = 1
   endif
   if zoneselected = 15 then input$ = ""
   if windownumber > 18 then windownumber = 1
   if windownumber < 1 then windownumber = 18

   zoneselected = 0
endproc

procedure KeyBoard()
  a = 1
  value = inkey()
  if value = 27 then    event = 3                
 
  if value > 0 then  play sound Snd1
        
  if value > 0 then key = value
 

endproc

procedure MakePanels()
 
 draw image 20,100,20
 rem draw image panel2,700,20

 rem draw image leftarrow,300,600
 rem draw image rightarrow,400,600


endproc

procedure DisplayText()

 rem I use this section for debugging
 
  set caret 10,20 ; write str$( mx ) 
  set caret 10,40 ; write str$( my )
  set caret 10,60 ; write str$( windownumber )
  set caret 10,80 ; write str$( zonenumber )
  set caret 10,100 ; write input$
  set caret 10,120 ; wln str$( count )
  set caret 10,140 ; wln str$( key )

endproc

procedure MakeButtons()
  
      draw image 1,25,15   ; draw image 6,175,90  ; draw image 11,25,240
      draw image 2,100,15  ; draw image 7,25,165  ; draw image 12,250,15
      draw image 3,175,15  ; draw image 8,100,165  ; draw image 13,250,90
      draw image 4,25,90  ; draw image 9,175,165  ; draw image 14,250,165
      draw image 5,100,90 ; draw image 10,100,240
      draw image 15,175,240 ; draw image 16,250,240 

endproc

 procedure Menu()
    a = 1
 
   rem set color 0,0,0
   rem cls
    set color 250,250,250

    wln ; wln ; wln ; wln ; wln ; wln ; wln

    wln  "                       SIMPLE CHECKSUM CALCULATOR "
    wln  "          I needed a check sum calculator for a game I was writing."
    wln  "          Type your number on the keypad using the mouse. It will"
    wln  "          show on the bottom-left window. You are allowed 6 digits. "
    wln  "          Click on the W keys to select which window you want to use."
    wln  "          After you type a number, click on the E key to enter it to"
    wln  "          the selected window. "
    wln  "          The Clr key clears all windows. "
    wln  "          The clr key clears the Input window "
    wln  "          Click mouse to start. "
    wln
    wln  "          http://rb23.yolasite.com "
    wln
 
    redraw
    while a = 1
      wait 20
      if mousebutton(0) then a = 2
    wend
    set color 0,0,0
    cls  
    write ; write ; wln a
    event = 2
   
endproc
 
procedure SetupSound()
     load sound 0,"data\click.wav"
     load sound 1,"data\beep2.wav"
     load sound 2,"data\teleport.wav"
endproc
    
procedure SetupButtons()
   a
 
   for a = 1 to 16
     create image  a ,50,50
     rem create zone a,20,30*a+100,60,20
   next
       set color 230,230,255
   for a = 1 to 16
     set image a
     draw rect 1,1,46,46,1
   next

   a = 0
   create font 1, "arial", 24
   set font 1
   set color 0,0,0
   for a = 1 to 13
     set image a 
     if a = 1 then
        set caret 20,14
        write "1"
     endif
     if a = 2 then
        set caret 20,14
        write "2"
     endif
     if a = 3 then
        set caret 20,14
        write "3"
     endif
     if a = 4 then
        set caret 20,14
        write "4"
     endif
     if a = 5 then
        set caret 20,14
        write "5"
     endif
     if a = 6 then
        set caret 20,14
        write "6"
     endif
     if a = 7 then
        set caret 20,14
        write "7"
     endif
     if a = 8 then
        set caret 20,14
        write "8"
     endif
     if a = 9 then
        set caret 20,14
        write "9"
     endif
     if a = 10 then
        set caret 20,14
        write "0"
     endif
     if a = 12 then
        set caret 10,14
        write "W+"
     endif
     if a = 13 then
        set caret 10,14
        write "W-"
     endif
   
   next
   set image 14
   set caret 10,14
   write " E"
   set image 16
   set caret 10,14
   write "Clr"
   set image 15
   set caret 10,14
   write "clr"
  
  rem create font 1, "arial", 20
   rem set font 0
 
   set image primary
   set color 255,255,255
endproc

procedure SetupPanels()
 x=0;y=0
 create image 20, 500,650
 set image 20
 set color 200,200,240
 draw rect 4,4,492,642,1
 set color 190,190,230
 while y<650
   y=y+10
   draw line 4,y,494,y
 wend
 while x<500
   x=x+10
   draw line x,4,x,644
 wend
 
   set image primary
   set color 255,255,255

endproc

procedure SetupKeyPad()
      create image 21, 325,305
      set image 21
       set color 255,255,255
       draw rect 2,2,321,301,1
       proc MakeButtons
      set image primary

endproc

procedure MakeKeyPad()
      draw image 21,187,325

endproc

procedure SetUpWindow()
      create image 22, 325,250
      set image 22
       set color 255,255,255
 
       draw rect 2,2,321,246,1
       set color 0,0,0
     for a = 1 to 6
       draw rect 20,32*a-20,80,35
       draw rect 120,32*a-20,80,35
       draw rect 220,32*a-20,80,35
     next
       draw rect 40,210,110,35
       draw rect 170,210,110,35

      set image primary
      set color 255,255,255

endproc
procedure MakeWindow()
      x;y
      draw image 22,187,50
      set color 0,0,0
      set caret 250,265 ; wln input$
      set caret 380,265 ; wln output$
      set caret 212,68 ; wln str$( data[1] ) ;  set caret 312,68 ; wln str$( data[7] ) ; set caret 412,68 ; wln str$( data[13] )
      set caret 212,100 ; wln str$( data[2] ) ;  set caret 312,100 ; wln str$( data[8] ) ; set caret 412,100 ; wln str$( data[14] )
      set caret 212,132 ; wln str$( data[3] ) ;  set caret 312,132 ; wln str$( data[9] ) ; set caret 412,132 ; wln str$( data[15] )
      set caret 212,164 ; wln str$( data[4] ) ;  set caret 312,164 ; wln str$( data[10] ) ; set caret 412,164 ; wln str$( data[16] )
      set caret 212,196 ; wln str$( data[5] ) ;  set caret 312,196 ; wln str$( data[11] ) ; set caret 412,196 ; wln str$( data[17] )
      set caret 212,228 ; wln str$( data[6] ) ;  set caret 312,228 ; wln str$( data[12] ) ; set caret 412,228 ; wln str$( data[18] )
      
      x=195
      if windownumber > 6 then x = 295
      if windownumber > 12 then x = 395
      if windownumber = 1 then y = 70
      if windownumber = 7 then y = 70
      if windownumber = 13 then y = 70
      if windownumber = 2 then y = 102
      if windownumber = 8 then y = 102
      if windownumber = 14 then y = 102
      if windownumber = 3 then y = 134
      if windownumber = 9 then y = 134
      if windownumber = 15 then y = 134
      if windownumber = 4 then y = 166
      if windownumber = 10 then y = 166
      if windownumber = 16 then y = 166
      if windownumber = 5 then y = 198
      if windownumber = 11 then y = 198
      if windownumber = 17 then y = 198
      if windownumber = 6 then y = 230
      if windownumber = 12 then y = 230
      if windownumber = 18 then y = 230
      set color 0,0,255
      draw rect x,y,10,10,1
endproc

procedure SetUpZones()
      create zone 1,213,340,50,50 ;create zone 2,288,340,50,50 ;create zone 3,366,340,50,50
      create zone 4,213,414,50,50 ;create zone 5,288,414,50,50 ;create zone 6,366,414,50,50
      create zone 7,213,488,50,50 ;create zone 8,288,488,50,50 ;create zone 9,366,488,50,50
      create zone 10,288,564,50,50 ; create zone 11,436,340,50,50 ; create zone 12,436,414,50,50
      create zone 13,436,488,50,50 ; create zone 14,436,564,50,50 ; create zone 15,366,564,50,50
endproc

procedure SetupData()
  for a= 1 to 19
      data[a] = 0
  next

endproc


 

 

Make a free website with Yola