GetCampaignString(string, string, object)
キャンペーンデータベースから文字列値を取り出します。
string GetCampaignString( string sCampaignName, string sVarName, object oPlayer = OBJECT_INVALID );
Parameters
sCampaignName
変数を保管しているキャンペーン名。(大文字/小文字は区別されます)
sVarName
特有の変数名。
oPlayer
変数を伴っているプレイヤー。(デフォルト: OBJECT_INVALID)
Description
キャンペーンデータベースから浮動小数値を返します。
キャンペーン名は大文字/小文字を区別します。変数が見つからない場合は、空文字列""を返します。
Remarks
oPlayerとしてオブジェクトが指定されている場合、同じ名前の変数を複数もっている可能性があります。
しかしながら、それについては厳しくテストされていないので、とにかく特有の変数名を使うのが良い方法かもしれません。
さらに、NWNにおけるデータベースアクセス速度は遅いです。
変数はローカルに保管するのが良い方法です。そうすると、必要な時だけデータベースへの転送、データベースからの読み取りが行われます。
データベース内の変数は、セーブデータに依存していないことを憶えておくことも重要です。
プレイヤーが前のセーブデータに戻った場合でも、データベースには直近の変数が保管されているでしょう。
このことがプレイヤーの手助けになる可能性は少ないので、プレイヤーのゲーム感全体を損ねる可能性があると言えます。
したがって、データベースの本当の力は恐らく以下のとおりでしょう:
一定の基地としてPWに変数を保管する能力を持っているので、多くの情報を失わずに済みます。(例えば、変数のバックアップを毎時間行うことができるなど)
また、2つもしくはそれ以上のモジュール間で簡単に情報を転送することができます。例えば、公式キャンペーン中のタイプ設定がそうです。
Known Bugs
1.30のパッチには、プレイヤーの特定のデータ保管に関する問題がありました。(けれども、シャドウ・オブ・アンドレンタイドにおいてのみです)
1.31のパッチにおけるフィックスで、SoU 1.30とSoU 1.31間におけるプレイヤーの特定のデータベースアクセスに関する互換性は損なわれるでしょう。
Version
1.30
See Also
functions: | SetCampaignString |
categories: | Database Functions |
author: Charles Feduke, editor: Lilac Soul, JP team: katsu794
Send comments on this topic.