1. ホーム
  2. スクリプト・コラム
  3. 腹筋

vbs自作数字パズルゲーム実装コード

2022-01-01 07:09:25

vbの開発を見ていて、2次元の配列をゲームのレベルとして使うというアイデアに出会いました。

1.選択操作:ゲームは、登録、ログイン、ログアウトの3つのオプションを選択するプロンプトから始まります。

2. 登録する 登録に成功すると、ユーザーアカウントとパスワードがユーザーデータtxtファイルに保存され、3回連続で空の値を入力すると、ゲームが終了します。

{3. 3. ログイン ログインは入力データとユーザーデータファイルの内容を比較し、ユーザーが存在する場合はログインが成功し、同じ失敗を3回繰り返すと、ゲームが終了します。

4。ゲームを開始:ログイン成功後、直接ゲームを入力します、ゲームは暫定的に3つのレベル、各レベル3サブセクション、添え字(添え字)の2次元配列、サブセクションの配列としてレベルのルールを通じてゲームです(添え字+ 4) ...。ファイル内の特定の実装があり、冗長にならないようにします。

5。ユーザーのログインは、ゲームの各レベルは、ゲームのログファイルのゲーム_log.txtに書き込まれます渡すには、ユーザー、操作、パスの進行状況を記録し、時間を渡すなど。

{ps ps:ファイルをダウンロードした後、ダブルクリックして実行すると、ゲームのユーザーファイルgame_user.txtとログファイルgame_log.txtは、あなたがそれを好きではない場合、私のデスクトップのパスに従って作成されます直接dに変更することができます: \game_user.txt など、ゲームはどんなに楽しい気にしない、私はいくつかの助けをvbs学びたい子供を与えるために願っています。

フルコード

Dim game(3,2),i,j,result,num 'define two-dimensional array two-dimensional length 3, one-dimensional length 2
Dim fso ,ws,f ,logFileWrite,logFileRead, fileStr,flag,flagFailNum, flagIndex ' Define log file
  set ws = CreateObject("wscript.shell")
  Set fso = CreateObject("scripting.filesystemobject") 
  If fso.fileexists("C:\Users\18190\Desktop\vbs\test\game_log.txt") Then 
    Else 
    Set f = fso.createtextfile("C:\Users\18190\Desktop\vbs\test\game_log.txt",true)
      'If fso.fileexists("C:\Users\18190\Desktop\vbs\test\game_log.txt") Then
       ' Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\test\game_log.txt",8,true)
       ' logFileWrite.writeLine "Number Guessing Trivia Game - Game Log"
     ' end if 
   
  End If 

  For i=0 To 2 ' Level assignment
   For j=4 To 5
    game(i,j-4)= i*3+j
   Next
 Next

 'For i=0 To 2
  ' For j=0 To 1
  'MsgBox "game("&i&","&j&"): "& game(i,j)
  'Next
 'Next

' Select operation
Dim cnum, failNum, sucFlag,t
   failNum =0
   sucFlag =0
 Do While 1=1

 If sucFlag=1 Then 
   Exit Do 
  End if 

 If failNum =3 Then
  MsgBox "You have three consecutive operation failures, the system will directly exit... "
  Exit do
 end if 
 cnum = InputBox( "Welcome to Digital Guessing Game Please select the action: "&chr(10)&" 1.Register 2.Login 3.Exit","Digital Guessing Game")
  If cnum = "" Then
     cnum = "-1"
  End if
 Select Case cnum
 Case 1 
' Account Registration
Dim juname, upwd,regStr 
  regStr = ""
 do while regStr = ""
  uname = InputBox("Please enter the registration account: ","Number Guessing Trivia Game - Registration")
  upwd = InputBox("Please enter the registration password: ","Number Guessing Game - Registration")
  If uname <> "" Then 
    If upwd <> "" Then 
     regStr = uname&"#"&upwd
    Else 
     regStr = ""
     MsgBox "The password you entered is wrong, please re-enter"
    End If
  Else
    regStr =""
     MsgBox "The password you entered is wrong, please re-enter it"
  End If
 
 If regStr <>"" Then 
  If fso.fileexists("C:\Users\18190\Desktop\vbs\test\game_user.txt") Then 
      Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\test\game_user.txt",8,true)
      t= Year(now)&"-"&month(now)&"-"&day(now)&" "& Hour(now)&":"& minute(now)&":""&second(now)
      'logFileWrite.WriteBlankLines 1
      logFileWrite.writeLine regStr &" "&t
      logFileWrite.close
      MsgBox "Registration successful! "
      exit do
    else 
    Set f = fso.createtextfile("C:\Users\18190\Desktop\vbs\test\game_user.txt",true)
      If fso.fileexists("C:\Users\18190\Desktop\vbs\test\game_user.txt") Then
       Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\test\game_user.txt",8,true)
          logFileWrite.writeLine "Number Guessing Trivia Game - User Data"
          logFileWrite.writeLine regStr
           logFileWrite.close
          MsgBox "Registration successful! "
          exit do
     end if 
  End If 
 end if   
 loop

 'wscript.sleep 1000 

case 2
 ' Account login
Dim str 
  Set logFileRead = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\test\game_user.txt",1)
  fileStr = logFileRead.ReadAll
  logFileRead.close
  str = InputBox("Please enter your account name and password, separated by the # key: "," Number Guessing Game - Login")
  if str <> "" then 
   flagIndex = InStr(fileStr,str)
    If flagIndex>0 Then 
      flag =1
    Else 
      flag = 0
    Do While flagIndex =0 
     flagFailNum = flagFailNum + 1
     If flagFailNum = 3 Then 
     MsgBox "Sorry, you have failed 3 times in a row, the system has exited"
     wscript.sleep 5000 ' Just exit -- missing wscript object
     flagFailNum = 0
    end if 
      MsgBox "Your account and password were entered incorrectly, please check and try again .... "
     str = InputBox("Please enter your account name and password, separated by the # key: "," Number Guessing Game - Login")
     if str <> "" then 
     flagIndex = InStr(fileStr,str)
     end if
     loop
     flag = 1
   End If 
  Else 
     flag = 0
    Do While flagIndex = 0 
     flagFailNum = flagFailNum + 1
     If flagFailNum = 3 Then 
     MsgBox "Sorry, you have failed 3 times in a row, the system has exited"
     wscript.sleep 5000 ' Just exit -- missing wscript object
     flagFailNum = 0
    end if 
      MsgBox "Your account and password were entered incorrectly, please check and try again .... "
     str = InputBox("Please enter your account name and password, separated by the # key: "," Number Guessing Game - Login")
     if str <> "" then 
     flagIndex = InStr(fileStr,str)
     end if 
     loop
     flag = 1
  end if 


' Pass login verification
if flag =1 then 
  Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\test\game_log.txt",8,true)
      t= Year(now)&"-"&month(now)&"-"&day(now)&" "& Hour(now)&":"& minute(now)&":""&second(now)