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

🎮 この記事で取り上げる内容
一緒にシンプルでエキサイティングなものを作りましょう 「数字を当てよう」ゲームこれは、コンピューターがランダムな数字を推測し、あなた(またはプレイヤー)がそれを推測しようとするテキストゲームです。これらはすべて、Luaの基本コマンドを使用しています。このゲームは、その仕組みを理解するのに役立ちます 変数, 条件, サイクル と ユーザーからのデータ入力.
このプログラムは完全に動作し、起動するだけでなく、自分で変更したり追加したりすることができます。準備はいいですか?さあ始めましょう! 🚀
🧩 Luaが初心者やゲーム開発者に最適な理由
シンプルな構文 — 普通のテキストのように読めます
余計なものを最小限に抑える — 余計な「束縛」なしに、すぐにロジックを書くことができます
インスタント起動 — コピーして、貼り付けて、オンラインで実行
ゲームで実際に使用されている — 例えば、Roblox や Defold など
🛠️ 簡単なゲームを段階的に構築する方法
まずはゲームの定番から始めましょう 「数字を当てよう」.
ゲームの仕組み:
コンピューターが1から10までの数字を考えます
プレイヤーは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がサポートします
💬 テレグラムチャンネル、初心者と経験者が助け合う場所
