Bethesda Tutorial Papyrus Hello World/ja
このページは日本語です。 リンク先ページの編集上の訂正または翻訳が必要です。 |
Bethesda Tutorial Papyrus Hello World/ja | |
---|---|
スクリプティング シリーズ、1章 | |
チュートリアルハブに戻る | |
前のチュートリアル | 次のチュートリアル |
概要[edit | edit source]
このチュートリアルは、CKスクリプト言語である「Papyrus(パピルス)」の基本を紹介します。
学べること:
- 新しいスクリプトを作成し、それをオブジェクトにアタッチ(付加)する方法
- イベントにスクリプトを応答させる方法
スクリプトの作成[edit | edit source]
私たちが最初にするのは、新しいスクリプトを作成してゲーム世界のオブジェクトにそれをアタッチすることです。
CKを起動して、テストセルをロードしましょう。
今回のテストセルは「Interiors」の「MolagBalVoiceCell」を使用したいと思います。
このセルはわずらわしいオブジェクトなどがなくて、気を逸らさなくて済むからです。
セルにオブジェクトを置きましょう。Object Windowの「WorldObjects - >Activator」リストから「WETempActivator」を選んで入れてください。
それは私たちが開発の時、仮のオブジェクトとして使用した単純な石碑(ピラー)です。
そのオブジェクトをダブルクリックして「Reference」ウィンドウを開き、「Scripts」タブ(一番右端にあるタブ)に切替えてください。
ここがどのようなオブジェクトにもスクリプトを追加(アタッチ)できるウィンドウとなっています。
「Add」ボタンをクリックして、「Add script」ウィンドウを開いてください。
新しいスクリプトを作成するために、リストの一番上にある[New Script]をダブルクリックしてください。
「Add New Script」ウィンドウの一番上にある「Name」でこれから作るスクリプトの名前を入力します。
名前は「HelloWorldScript」としましょう。入力したらOKボタンを押してください:
その石碑のスクリプトリストに今作成した新しいスクリプトが表示されているか確認してください:
「OK」ボタンをクリックして変更を保存してください。
おめでとうございます!
これであなたは最初のスクリプトを作成し、そしてゲーム世界のオブジェクトにアタッチすることができました。
イベントを加える[edit | edit source]
もちろん、あなたのスクリプトはまだ何もできません。これは何かするのを待っているだけの空っぽの卵のカラのようなものです。
このオブジェクトは「Activator」なので、プレイヤーによってクリックされる(アクティベートされる)ことでそれに応じます。
そこでプレイヤーがこの石碑をクリックする時に、メッセージを表示するようにスクリプトを書いてみましょう。
再度、石碑のReferenceウィンドウを開き、Scriptsタブのリストにあるその「HelloWorldScript」を右クリックしてください。
そして「Edit Source」を選択し、「Editing Script」ウィンドウを開いてください。
今私たちは、アクティベートに応じるよう、そのスクリプトに命令する必要があります。
これは「OnActivate」イベントを私たちのスクリプトに追加する必要があるということを意味します。
あなたのスクリプトに以下の行を追加してください:
Event OnActivate(ObjectReference akActionRef)
endEvent
当分は「OnActivate」イベントを定義した際に使用した構文の意味がわからないことについて心配しないでください。
あとのチュートリアルでそれに関する詳細を説明するつもりです。
まずは、このスクリプトで何をすることができるかを見ていきましょう。
ここに私たちのスクリプトはOnActivateイベントに応じる準備が出来きました。
単純なメッセージボックスを表示するように命令してみましょう。
真中にラインを追加して以下のようにしてください:
Event OnActivate(ObjectReference akActionRef)
Debug.MessageBox("Hello, World!")
endEvent
この最後のステップをもう少し説明するために、その構文を次のように分解してみます:
- Debug.MessageBox("Hello, World!"): これは異なるスクリプト(このケースでは特別なデフォルトのDebug script object)上の関数を呼ぶように命令しています。
- Debug.MessageBox("Hello, World!"): MessageBoxはメッセージボックスを表示するための関数です。
- Debug.MessageBox("Hello, World!"): この括弧は関数の呼び出しを示しています:その関数に送る、括弧の中にあるデータのことで、今回の関数の場合、私たちが表示したいテキストを表します。
「Editing Script」の「File」メニューで「Save」を選択することで、セーブとコンパイルが可能です。
あなたが正しくタイピング出来ているならば、以下のようになるはずです:
"Hello, World"[edit | edit source]
ゲームでそれを試してみてください(プラグインをセーブした後、それをゲームランチャーで読み込むことを忘れないでください)。
ゲーム上でコンソール画面を出して、以下のようにタイプしてください:
coc MolagBalVoiceCell
目的のセルに移動して、その石碑まで行ってそれをアクティベート(クリック)してください。
あなたは以下のようなメッセージを見られるはずです:
これでプレイヤーの行動に反応するオブジェクトを作成することができました!
次のチャプターでは、あなたのスクリプトがより洗練されるよう、変数と条件文の使用方法を学びます。
前のチュートリアル | チュートリアルハブに戻る | 次のチュートリアル |
Language: | English • français • 日本語 • 한국어 • polski • русский |
---|