【Roblox Studio】ローカル変数とグローバル変数

Code

1. localあるなしの違い

本記事では、変数を宣言するときによく使用する「local」に着目します。この「local」がある場合とない場合での違いをみてみます。

2. 使用する機能

・Script
・local

3. 手順

まず、Roblox Studioを起動します。今回は、テンプレート「Baseplate」を使用します。

Workspaceの子要素にScriptを追加します。

Scriptに以下のコードを記入します。以下のコードの関数の中に「local」を使用して、ローカル変数であるtestLocalを宣言しています。そのtestLocalを関数外から呼び出すことを試みてみます。

local function testLocalScope()
	local testLocal = "変数"
end

testLocalScope()

print(testLocal)

上記コードの簡単な解説は以下となります。

  1. local function testLocalScope()
    testLocalScope というローカル関数を定義しています。
  2. local testLocal = “変数”
    文字列 “変数” を値に持つローカル変数 testLocal を、関数 testLocalScope の内部に作成しています。この変数は関数の外部からはアクセスできません。
  3. testLocalScope()
    testLocalScope 関数を呼び出しています。
  4. print(testLocal)
    testLocal 変数を出力しようと試みていますが、この変数は関数 testLocalScope の内部でのみ定義されているため、ここでは nil が発生します。これは、testLocal がその関数のスコープ外では存在しないからです。

nilとなりました。コード解説でも述べたように、ローカル変数であるtestLocalは、その関数内でしか定義されていないため、関数外から呼び出そうとすると、空を意味するnilが出力されます。

では、「local」を消去して変数を宣言してみます。

local function testLocalScope()
	testLocal = "変数"
end

testLocalScope()

print(testLocal)

ローカル変数ではなく、グローバル変数として宣言されたため、関数外からでも変数testLocalにアクセスできました。

グローバル変数とは、スクリプトのどの部分からもアクセスできる変数のことを指します。これは、特定の関数やスコープに制限されず、プログラム全体で共有される変数です。

ちなみに、関数を呼び出していない状態で、その関数内にあるグローバル変数を出力することはできません。

local function testLocalScope()
	testLocal = "変数"
end

--testLocalScope()

print(testLocal)

この記事を通じて、ローカル変数とグローバル変数の違いを学びました。具体的には、ローカル変数はその関数内でのみ使用でき、一方、グローバル変数はそのスクリプト全体から使用することができます。

チュートリアル系電子書籍の紹介
Roblox Studioでゲーム制作を始めてみませんか?
日本語版 ※英語版あり 「10時間でできる Roblox Studio アクションゲーム制作入門」では、Roblox Studioでのゲーム制作の基本から応用までを短時間で効率的に学びます。この一冊で、初心者でも簡単にアクションゲームを制作できるようになり、ゲーム制作の面白さと達成感を存分に味わうことができます。Roblox Studioの世界への扉を開き、あなたのクリエイティブな旅を始めましょう。
Luaに関する電子書籍の紹介
Roblox Studioで使用するLua言語の基本を学ぼう!
日本語版 ※英語版あり 「5時間でできる Roblox Studio を使ったLuaの基本」では、Roblox Studioで使用するプログラミング言語Luaの基本をRoblox Studio上で学びます。また、学んだ知識を活かして、Roblox StudioでLuaを使用する応用部分も一部盛り込まれています。この一冊でLuaの基本を学ぶことで、よりRoblox Studioでのゲーム制作を楽しめるようになります。
アニメーション制作系電子書籍の紹介
Roblox Studioでアニメーションを作ってみよう!
「5時間でできる Roblox Studio アニメーション制作入門」では、Roblox Studioでのアニメーション制作の基本から実際に作るところまでを短時間で効率的に学びます。この一冊で、アニメーション制作の第一歩を踏み出すことができます。Roblox Studioで自由自在にアニメーションを作成し、よりクリエイティブなゲームを作りましょう!
CodeScripting
シェアする
hideをフォローする
Roblox Studio 制作tips

コメント

タイトルとURLをコピーしました