{}const=>[]async()letfn</>var
Lua

Luaで最初のゲームを作成する—プログラミングしたことがない場合でも

Luaで最初のゲーム「数字を当てよう」を作成します。ステップバイステップで、わかりやすく、楽しい結果が得られます。

К

Kodik

著者

2分で読める

Lua は、ゲーム、アプリケーション、さらにはマイクロコントローラーでもよく使用される、簡単で高速なプログラミング言語です。構文が非常にシンプルなので、初心者に最適です。Luaは、次のような有名なプロジェクトで使用されています。 Roblox, Angry Birds, World of Warcraft その他多くのゲーム。

🎮 この記事で取り上げる内容

一緒にシンプルでエキサイティングなものを作りましょう 「数字を当てよう」ゲームこれは、コンピューターがランダムな数字を推測し、あなた(またはプレイヤー)がそれを推測しようとするテキストゲームです。これらはすべて、Luaの基本コマンドを使用しています。このゲームは、その仕組みを理解するのに役立ちます 変数, 条件, サイクルユーザーからのデータ入力.

このプログラムは完全に動作し、起動するだけでなく、自分で変更したり追加したりすることができます。準備はいいですか?さあ始めましょう! 🚀

🧩 Luaが初心者やゲーム開発者に最適な理由

  • シンプルな構文 — 普通のテキストのように読めます

  • 余計なものを最小限に抑える — 余計な「束縛」なしに、すぐにロジックを書くことができます

  • インスタント起動 — コピーして、貼り付けて、オンラインで実行

  • ゲームで実際に使用されている — 例えば、Roblox や Defold など

🔥 10万人以上の学生が参加中

理論を読むのに疲れた?
コーディングの時間だ!

Kodik — 実践でプログラミングを学ぶアプリ。AIメンター、インタラクティブなレッスン、実際のプロジェクト。

🤖 AI 24時間
🎓 修了証
💰 無料
🚀 始める
今日参加

🛠️ 簡単なゲームを段階的に構築する方法

まずはゲームの定番から始めましょう 「数字を当てよう」.

ゲームの仕組み:

  1. コンピューターが1から10までの数字を考えます

  2. プレイヤーは3回の試行で推測しようとします

  3. ゲームは、あなたが勝ったかどうかを伝えます

完成したコード(Replitに挿入できます):

math.randomseed(os.time())

local secret = math.random(1, 10)
local attempts = 3

print("Hi! I thought of a number from 1 to 10.")
print("You have " .. attempts .. " attempts to guess!")

while attempts > 0 do
  io.write("Enter number: ")
  local guess = tonumber(io.read())

  if guess == secret then
    print("🎉 Hurray! You guessed it!")
    break
  else
    attempts = attempts - 1
    if attempts > 0 then
      print("❌ Incorrect. Attempts left: " .. attempts)
    else
      print("😢 Alas, you lost. The number was: " .. secret)
    end
  end
end

🔍「数字を当てろ」ゲームのコードを詳しく分析する

math.randomseed(os.time())

⏱️ この行は、乱数発生器に現在の時間を「シード」します。これは、ゲームが毎回新しい数字を予測するために必要です。この行がないと、プログラムは起動するたびに同じ数字を選択します。

local secret = math.random(1, 10)

🎯 math.random を使用して、1 から 10 までのランダムな数字を選択します。これは、プレイヤーが推測する必要のある推測数です。

local attempts = 3

📉試行回数を設定します。この場合は3回です。

print("Hi! I thought of a number from 1 to 10.")
print("You have " .. attempts .. " attempts to guess!")

💬挨拶と指示を表示します。.. 演算子は、文字列と変数を結合します。

while attempts > 0 do

🔁 プレイヤーが少なくとも1回の試行を行うまで実行されるサイクルを開始します。

  io.write("Enter number: ")
  local guess = tonumber(io.read())

⌨️入力を要求します。io.read()は文字列を読み取り、tonumber()はそれを数値に変換します。

  if guess == secret then
    print("🎉 Hurray! You guessed it!")
    break

✅ユーザーが数字を推測した場合、おめでとうございます。breakを使用してループを終了します。

  else
    attempts = attempts - 1

❌ 答えが間違っていた場合、残りの試行回数を減らします。

    if attempts > 0 then
      print("❌ Incorrect. Attempts left: " .. attempts)

📢 試行回数が残っていることをお知らせします。

    else
      print("😢 Alas, you lost. The number was: " .. secret)
    end
  end
end

🏁 試行が終了した場合は、失敗のメッセージを表示し、正しい数字を表示します。

💡 このゲームを書いている間に学ぶこと:

  • 変数の操作: secret, attempts, guess

  • 入出力を使用する: io.read(), print()

  • 条件を書く: if / else, ==

  • サイクルの操作: while

  • 乱数を使用する: math.random

🎮 これらはすべて、あなたが起動、変更、改善できる実際のゲームの形式です。

ストレスなく、わかりやすい課題とサポートを受けながら、プログラミングを学びたい場合は、 コディック.

  • 📚 Lua、Python、JavaScriptのステップバイステップコース

  • 🤖 何かわからないことがあればAIがサポートします

  • 💬 テレグラムチャンネル、初心者と経験者が助け合う場所

🎯先延ばしをやめよう

記事は気に入った?
実践の時間だ!

Kodikでは読むだけでなく、すぐにコードを書く。理論 + 実践 = 本当のスキル。

即座に実践
🧠AIがコードを説明
🏆修了証

登録不要 • カード不要