Home > Reference > Functions > Categories > Experience 14.Experience Function Category 経験点を扱うファンクション Functions AddJournalQuestEntry プレイヤーのジャーナルに登録事項を追加します。 DoGiveXP XPを 分 配 す る 設 定 規 則 に 従 っ て 、PCに 指 定 のXPを 与 え ま す 。 EffectNegativeLevel 目標のレベルを減少させる負のレベルエフェクトを作成します。 GetJournalQuestExperience ジャーナルカテゴリーで設定した経験値の量を返します。 GetXP 特 定 の ク リ ー チ ャ ー が 持 つXPを 調 べ ま す 。 GiveXPToCreature 特定のクリーチャーに経験点を与えます。 RewardPartyXP PCと ( 任 意 で ) 全 て の パ ー テ ィ メ ン バ ー に 経 験 値 を 与 え ま す 。 RewardXP PCま た は そ の パ ー テ ィ に 設 定 規 則 に 従 っ て 、 指 定 のXPを 与 え ま す 。 SetXP クリーチャーの経験値を特定の値に設定します。 See Also Function Categories Home > Reference > Functions > Conversation, Experience, Journal > AddJournalQuestEntry AddJournalQuestEntry(string, int, object, int, int, int) プレイヤーのジャーナルに登録事項を追加します。(日記エディタで、エントリーを作成するのが先 決です。) void AddJournalQuestEntry( string sCategoryTag, int nEntryID, object oCreature, int bAllPartyMembers = TRUE, int bAllPlayers = FALSE, int bAllowOverrideHigher = FALSE ); Parameters sCategoryTag ジャーナルカテゴリーのタグ(ファイル名での大文字と小文字は区別されます) nEntryID ジ ャ ー ナ ル エ ン ト リ ー のID oCreature ジ ャ ー ナ ル エ ン ト リ ー を 受 け 取 ら せ た いPC bAllPartyMembers TRUEな ら ば 、 エ ン ト リ ー はoCreatureの い る パ ー テ ィ の ジ ャ ー ナ ル に 追 加 さ れ ま す 。 ( デ フ ォ ル ト :TRUE) bAllPlayers TRUEな ら ば 、 エ ン ト リ ー は モ ジ ュ ー ル 内 の 全 て の プ レ イ ヤ ー の ジ ャ ー ナ ル に 表 示 さ れ ま す 。 ( デ フ ォ ル ト :FALSE) bAllowOverrideHigher TRUEな ら ば 、nState( エ ン ト リ ー のID) を 現 在 の ジ ャ ー ナ ル エ ン ト リ ー に 可 逆 に 上 書 き す る に 違 い な い で し ょ う 。 ( デ フ ォ ル ト :FALSE) Description AddJournalQuestEntry()は ま さ に そ の 名 の 通 り に 、 プ レ イ ヤ ー の 日 記 画 面 の 「 ク エ ス ト 」 ま た は 「 完 了したクエスト」のページにエントリーを追加します。 た だ1人 のPC、PCの パ ー テ ィ メ ン バ ー の 全 て 、 ま た は モ ジ ュ ー ル 内 の 全 て の 駐 留 者 に 対 し て 、 エ ン ト リーを追加しフラグを立てることができます。 関 数 は ジ ャ ー ナ ル エ ン ト リ ー を 参 照 す る 為 に 、szPlotIDとnStateと い う 、 2 つ の パ ラ メ ー タ ー を 参 照 します。 sCategoryTagは ジ ャ ー ナ ル カ テ ゴ リ ー の タ グ で す 。 例 え ば 、"ボ ブ の 素 敵 な ブ チ 蹴 り 靴"と い う 名 前 の ク エ ス ト を 作 り 、 そ れ に"isk_jrnl_bbbbk"と い う タ グ を 与 え 、 ジ ャ ー ナ ル エ ン ト リ ー に 割 り 当 て る 場 合 、 そのタグを利用してください。 iEntryIDは 特 定 の ジ ャ ー ナ ル エ ン ト リ ー のIDで す 。 こ れ は 日 記 エ デ ィ タ のID欄 に 入 力 し た 数 字 で 、 ジャーナルエントリーを表示する順番を表す数字でもあります。デフォルトでは、 AddJournalQuestEntry()を 使 用 し た 場 合 、 ジ ャ ー ナ ル エ ン ト リ ー の 数 字 は 増 え な け れ ば い け ま せ ん 。 このコマンドのジャーナル更新が行われたとき、ジャーナルカテゴリーの名前を無記名のチャット メッセージとして表示します。 Home > Reference > Functions > Conversation, Experience, Journal > AddJournalQuestEntry Remarks conversation内 で ジ ャ ー ナ ル エ ン ト リ ー を 更 新 す る た め の 、 ス ク リ プ ト を 作 る 必 要 は あ り ま せ ん 。 「その他のアクション」タブで、望みのジャーナルカテゴリーとジャーナルエントリーを選択するだ けでいいのです。 bAllowOverrideHigherをTRUEに す る 際 は 注 意 し て く だ さ い 。 最 終 段 階 で あ る 「 完 了 し た ク エ ス ト 」 エントリーを、それより前の段階である「クエスト」エントリーへと、矛盾して移行することが簡単 にできてしまいます。 日記エディタ内の「カテゴリー終了」チェックボックスで、日記タブのエントリーは固定されて表示 されます。完遂した「クエスト」タブの他のものは「完了したクエスト」タブに移ります。「ユー ザーメモ」タブにはメッセージを追加することは出来ません。 前にあったジャーナルエントリーは自動的に除去されます。同タイトルのクエストの効果を使いたい ならば、異なるタグをカテゴリーに使って、名前だけを同じにします。 PvPト ー ナ メ ン ト で の 戦 い の 軌 跡 を 残 す 為 に 、 上 書 き フ ラ グ は 有 効 に 利 用 出 来 る か も し れ ま せ ん 。 こ の コ マ ン ド はXPの 指 定 は 「 行 い ま せ ん 」 。 指 定 し た い の で あ れ ば 、GetJournalQuestExperience()、 も し く はGiveXPToCreature()を 使 っ て く だ さ い 。 AddJouralQuestEntryは 大/小 文 字 の 区 別 さ れ な いsCategoryTagを 見 つ け る で し ょ う 。 し か し 、 同 じ sCategoryTagで は あ る も の の 、 異 な る 大/小 文 字 を 使 用 し た ク エ ス ト は 、 個 々 の 異 な る ク エ ス ト を 追 加するでしょう。(同じクエストではありません) PCの ア イ テ ム 取 得 で 、 ジ ャ ー ナ ル エ ン ト リ ー を 追 加 さ せ る よ う に す る に は モ ジ ュ ー ル の OnItemAcquiredで 、 こ の 関 数 を 使 う 必 要 が あ り ま す 。 下 記 の サ ン プ ル を 見 て く だ さ い 。 ジ ャ ー ナ ル エ ン ト リ ー をPCに セ ッ ト す る と き に 、LocalIntegerは"NW_JOURNAL_ENTRY*"(*は 追 加 さ れ た エ ン ト リ ー 名 ) と い う 名 前 で 、 同 一 のPCに 記 憶 さ せ ら れ ま す 。integer value( 整 数 値 ) は 記 憶 し た ジ ャ ー ナ ル エ ン ト リ ー のIDで す 。 Version 1.28 Home > Reference > Functions > Conversation, Experience, Journal > AddJournalQuestEntry Example // ジ ャ ー ナ ル カ テ ゴ リ ー"isk_jrnl_bbbbk"に 3 の エ ン ト リ ー を 登 録: // 1 - 始 動 メ ッ セ ー ジ // 100 - 中 盤 メ ッ セ ー ジ // 200 - 終 了 メ ッ セ ー ジ (エ デ ィ タ ー の 「 カ テ ゴ リ ー 終 了 」 に チ ェ ッ ク) // oPCを 有 効 なPC objectと 仮 定 す る // 実 行 の 順 序: // 参 加 し て き たPCの 日 記 に 、 ジ ャ ー ナ ル カ テ ゴ リ ー"isk_jrnl_bbbbk"の // ID 1の ジ ャ ー ナ ル エ ン ト リ ー を 追 加 す る // 他 人 の ジ ャ ー ナ ル は 影 響 さ れ な い AddJournalQuestEntry("isk_jrnl_bbbbk", 1, oPC, FALSE, FALSE, FALSE); // こ れ は そ のPCの ジ ャ ー ナ ル だ け をID 100の エ ン ト リ ー に 更 新 す る AddJournalQuestEntry("isk_jrnl_bbbbk", 100, GetEnteringObject(), FALSE, FALSE, FALSE); // ジ ャ ー ナ ル は 既 に エ ン ト リ ー100に な っ て い る た め 、 こ れ ら は 何 も 起 き な い AddJournalQuestEntry("isk_jrnl_bbbbk", 100, oPC, FALSE, FALSE, FALSE); AddJournalQuestEntry("isk_jrnl_bbbbk", 1, oPC, FALSE, FALSE, FALSE); // こ れ はPCの 日 記 画 面 の 「 完 了 し た ク エ ス ト 」 タ ブ に // 終 了 メ ッ セ ー ジ を 追 加 す る AddJournalQuestEntry("isk_jrnl_bbbbk", 200, oPC, FALSE, FALSE, FALSE); // こ れ は ク エ ス ト の 終 了 メ ッ セ ー ジ を 取 り 消 し // 「 ク エ ス ト 」 タ ブ に 中 盤 メ ッ セ ー ジ を 追 加 す る AddJournalQuestEntry("isk_jrnl_bbbbk", 100, oPC, FALSE, FALSE, TRUE); // ----- Completely different example ----// ア イ テ ム を 拾 う 際 に エ ン ト リ ー を 追 加 す る // ス ク リ プ ト をOnAcquireItemに 入 れ る: // (Thomas Daugaard氏 の 好 意 に 感 謝) // // "my_item_tag"と"my_item_quest"と が 、 // チ ェ ッ ク す る ア イ テ ム の タ グ と 、 適 切 な ジ ャ ー ナ ル エ ン ト リ ー の カ テ ゴ リ ー ・ タ グ 、 // そ れ ぞ れ が 一 致 す る よ う に 修 正 す る void main() { // 拾 っ たobjectを 取 得 す る object itemAcquired = GetModuleItemAcquired(); if(itemAcquired != OBJECT_INVALID) { // 拾 っ た ア イ テ ム の タ グ を 取 得 す る // "my_item_tag"で あ れ ば 、 正 し い ア イ テ ム で あ る if ( GetTag(itemAcquired) == "my_item_tag") { // ア イ テ ム を 持 っ て い る オ ブ ジ ェ ク ト ( プ レ ー ヤ ー ) を 取 得 す る object oPC = GetItemPossessor(itemAcquired); // そ の プ レ ー ヤ ー の ジ ャ ー ナ ル に 適 切 な エ ン ト リ ー を 追 加 す る AddJournalQuestEntry ("my_item_quest", 100, oPC); } } } See Also functions: GetJournalQuestExperience | GiveXPToCreature | RemoveJournalQuestEntry | RewardPartyXP categories: Conversation Functions | Experience Functions | Journal Functions events: OnAcquireItem Event | OnActivateItem Event | OnAreaTransitionClick Event | OnEnter Event | OnUsed Event | OnUserDefined Event -------------------------------------------------------------------------------author: Iskander Merriman, editor: Charles Feduke, additional contributor(s): Dave Dursley, Kenneth Cummins, Gabriel Weiss, JP team: geshi, Rainie Home > Reference > Functions > Experience > DoGiveXP DoGiveXP(string, int, object, int) XPを 分 配 す る 設 定 規 則 に 従 っ て 、PCに 指 定 のXPを 与 え ま す 。 void DoGiveXP( string sJournalTag, int nPercentage, object oTarget, int nQuestAlignment = ALIGNMENT_NEUTRAL ); Parameters sJournalTag 経験値を得る為に使用するジャーナルのタグ nPercentage 与 え るXPの 比 率 (100で100%) oTarget XPを 与 え る 対 象 nQuestAlignment ALIGNMENT_* (デ フ ォ ル ト: ALIGNMENT_NEUTRAL) Description XPを 分 配 す る 設 定 規 則 に 従 っ て 、PCに 指 定 のXPを 与 え ま す 。 Remarks 経 験 値 を 増 減 さ せ るoTargetの ア ラ イ ン メ ン ト に 関 し て 、 ク エ ス ト の ア ラ イ ン メ ン ト を 使 用 し ま す 。 Requirements #include "nw_i0_plot" Version 1.22 See Also categories: Experience Functions constants: ALIGNMENT_* Constants -------------------------------------------------------------------------------author: Tom Cassiotis, JP team: Rainie Home > Reference > Functions > Effects, Experience > EffectNegativeLevel EffectNegativeLevel(int) 目標のレベルを減少させる負のレベルエフェクトを作成します。 effect EffectNegativeLevel( int nNumLevels ); Parameters nNumLevels 適用する負のレベルの数値 Description 目 標 の レ ベ ル をnNumLevelsに よ っ て 減 少 さ せ た 新 た な エ フ ェ ク ト オ ブ ジ ェ ク ト を 返 し ま す 。 nNumLevelsが100よ り 大 き い 場 合 、 タ イ プEFFECT_TYPE_INVALIDEFFECTを 返 し ま す 。 Remarks 1レベルの損失が単に負のエフェクトであるので、それは容易にレストレーションのスペルかポー ションで回復することができます。 Constructorは 、 オ ブ ジ ェ ク ト の 新 し い 定 義 を 返 す 特 別 な 方 法 で す 。NWNの ス ク リ プ ト で はobjectに 配 置 で き る エ フ ェ ク ト 毎 が 、 特 定 エ フ ェ ク ト の 新 た な 定 義 を 作 成 さ れ る 独 自 のconstructorを 持 ち ま す 。 こ の エ フ ェ ク トonjectはApplyEffectToObject()コ マ ン ド の 中 で 使 用 す る こ と が で き ま す 。 詳 細 は エ フ ェ ク トConstructorを 見 て く だ さ い 。 Version 1.22 See Also categories: Effects Functions | Experience Functions constants: EFFECT_TYPE_* Constants -------------------------------------------------------------------------------author: John Shuell, JP team: Rainie Home > Reference > Functions > Conversation, Experience, Journal, PC Only > GetJournalQuestExperience GetJournalQuestExperience(string) ジャーナルカテゴリーで設定した経験値の量を返します。 int GetJournalQuestExperience( string szPlotID ); Parameters szPlotID ジャーナルカテゴリーのタグ Description 日記上のクエストに経験値を与えるコマンドとして使用します。日記エディタ内のカテゴリーの 「XP」 欄 に 入 力 し た 経 験 値 の 量 を 返 し ま す 。 日 記 エ デ ィ タ の 日 記 上 の ク エ ス ト にXPの 数 値 を 設 定 で き ま す がAddJournalQuestEntry()で は 、 ク エ ス ト 完 了 時 で も 、 こ のXPを 与 え る こ と は で き ま せ ん 。 代 わ り にGetJournalQuestExperience()を 使 用 し てください。 Remarks パ ー テ ィ の 経 験 値 を 割 り 当 て た い 場 合 は 、 Biowareのnw_i0_toolに 含 ま れ るRewardPartyXP()を 使 っ て も良いでしょう。 ス ク リ プ ト に な れ る ま で は 、 カ ン バ ー セ ー シ ョ ン¥エ デ ィ タ の ス ク リ プ ト ウ ィ ザ ー ド で め ん ど う な 作 業をやってしまっても良いでしょう。 Version 1.22 Example // oPCと い う 単 体 のPCに 対 し て 、 ジ ャ ー ナ ル カ テ ゴ リ ー タ グ が // "isk_jrnl_bbbbk"で あ る ク エ ス ト の 経 験 値 を 全 て 与 え る GiveXpToCreature(oPC, GetJournalQuestExperience("isk_jrnl_bbbbk"); // ク エ ス ト はPCにobjectを 集 め る 事 を 要 求 し て // 得 たobjectの 総 数 を 格 納 す る // 最 大 値 に 比 例 し てPCに ど れ く ら い 与 え る か を 計 算 す る // (NUM_HORSESHOES) int iFound = GetLocalInt(oPC, "iFound"); int iXP = iFound * GetJournalQuestExperience("shoe_hunt") / NUM_HORSESHOES; See Also functions: AddJournalQuestEntry | GiveXPToCreature categories: Conversation Functions | Experience Functions | Journal Functions | PC Only Functions -------------------------------------------------------------------------------author: Iskander Merriman, editor: Kristian Markon, JP team: Rainie Home > Reference > Functions > Experience, Get Data from Creature > GetXP GetXP(object) 特 定 の ク リ ー チ ャ ー が 持 つXPを 調 べ ま す 。 int GetXP( object oCreature ); Parameters oCreature 目標のクリーチャー Description oCreatureの 経 験 点 (XP) の 値 を 返 し ま す 。 Version 1.22 See Also functions: SetXP categories: Experience Functions | Get Data from Creature Functions -------------------------------------------------------------------------------author: Kristian Markon, JP team: Rainie Home > Reference > Functions > Action on Object, Experience > GiveXPToCreature GiveXPToCreature(object, int) 特定のクリーチャーに経験点を与えます。 void GiveXPToCreature( object oCreature, int nXpAmount ); Parameters oCreature 経験値を与える特定のクリーチャー nXpAmount 与える経験点 Description マ ル チ ク ラ ス の ペ ナ ル テ ィ を 調 整 し 、oCreatureにnXpAmountを 与 え ま す 。 Version 1.29 See Also functions: AddJournalQuestEntry | GetJournalQuestExperience | RewardPartyXP | SetXP categories: Action on Object Functions | Experience Functions -------------------------------------------------------------------------------author: Jody Fletcher, editor: Charles Feduke, additional contributor(s): Alec Usticke, JP team: Rainie Home > Reference > Functions > Experience, Party, PC Only > RewardPartyXP RewardPartyXP(int, object, int) PCと ( 任 意 で ) 全 て の パ ー テ ィ メ ン バ ー に 経 験 値 を 与 え ま す 。 action RewardPartyXP( int nXP, object oTarget, int bAllParty = TRUE ); Parameters nXP 与 え るXPの 量 oTarget XPを 与 え るobject bAllParty TRUEで あ れ ば 全 て の パ ー テ ィ メ ン バ ー にXPが 与 え ら れ る ( デ フ ォ ル ト :TRUE) Description bAllPartyがFALSEで あ る 場 合 、 こ れ はGiveXPToCreature(XP、oTarget)と 等 し い で す 。 bAllPartyがTRUEで あ る 場 合 、 こ の 関 数 はoTargetのpartyを 循 環 し 、 全 て の パ ー テ ィ メ ン バ ー にXPを 与 えます。 Remarks Xpは 各 々 の パ ー テ ィ メ ン バ ー に 等 し く 配 ら れ ま す 。 分 配 す る わ け で は あ り ま せ ん 。 Requirements #include "nw_i0_tool" Version 1.29 Example #include "nw_i0_generic" #include "nw_i0_tool" // エ リ アOnEnter用 // 恐 ら く 、 参 加 者 が あ る 難 し い エ ン カ ウ ン タ ー に 遭 遇 す る 、 // も し く は 重 大 な 悪 知 恵 に よ っ て の み 獲 得 さ れ る // // 会 話 エ デ ィ タ で 設 定 し たXPを // 全 て のPCと そ の 仲 間 に 与 え る void main() { object oPC = GetEnteringObject(); if (! GetIsPC(oPC)) return; RewardPartyXP(GetJournalQuestExperience("hard_to_reach"), oPC, TRUE); } See Also functions: AddJournalQuestEntry | GiveXPToCreature categories: Experience Functions | Party Functions | PC Only Functions -------------------------------------------------------------------------------author: Iskander Merriman, editor: Jody Fletcher, JP team: Rainie Home > Reference > Functions > Experience > RewardXP RewardXP(string, int, object, int, int) PCま た は そ の パ ー テ ィ に 設 定 規 則 に 従 っ て 、 指 定 のXPを 与 え ま す 。 void RewardXP( string sJournalTag, int nPercentage, object oTarget, int nQuestAlignment = ALIGNMENT_NEUTRAL, int bAllParty = TRUE ); Parameters sJournalTag XP潜 在 値 を 設 定 し た 、 ク エ ス ト 完 了 時 ジ ャ ー ナ ル の タ グ nPercentage 与 え るXPの 比 率 (100で100%) oTarget XPを 与 え る 対 象 と な る 、PCと 可 能 な ら ば そ の パ ー テ ィ nQuestAlignment ALIGNMENT_* (デ フ ォ ル ト: ALIGNMENT_NEUTRAL) bAllParty 全 て の パ ー テ ィ メ ン バ ー が 経 験 値 を 受 け 取 る か ど う か ( デ フ ォ ル ト :TRUE) Description sJournalTagタ グ を 持 っ た ジ ャ ー ナ ル で 示 さ れ るXPを 、 キ ャ ラ ク タ ー の ア ラ イ ン メ ン ト と nQuestAlignmentが 示 す ク エ ス ト の ア ラ イ ン メ ン ト を 考 慮 に い れ 、oTargetとbAllPartyがTRUEの 場 合 は そ の パ ー テ ィ にXPを 与 え ま す 。 Requirements #include "nw_i0_plot" Version 1.22 See Also categories: Experience Functions constants: ALIGNMENT_* Constants -------------------------------------------------------------------------------author: Tom Cassiotis, JP team: Rainie Home > Reference > Functions > Experience > SetXP SetXP(object, int) クリーチャーの経験値を特定の値に設定します。 void SetXP( object oCreature, int nXpAmount ); Parameters oCreature 対象のクリーチャー nXpAmount Xpの 量 Description oCreatureの 経 験 値 をnXpAmountの 値 に 設 定 し ま す 。 Remarks GiveXPToCreature()関 数 は 、XP修 正 の も っ と 自 然 な 方 法 で す 。 し か し 、 ク リ ー チ ャ ー が ど れ だ け XPを 持 つ と い い の か を 正 確 に 知 っ て い る な ら ば 、SetXP()が か な り 有 効 で し ょ う 。 こ の 機 能 はXPに ペ ナ ル テ ィ ー を 与 え る 場 合 や 、 % に よ っ て 修 正 す る 状 況 に 特 に 役 立 つ こ と が で き ま す。 Version 1.22 Example // PCをOnEnter時 にLv2に す る void main() { int iXP; object oCreature = GetEnteringObject(); iXP = GetXP(oCreature); if (iXP < 1000) { SetXP(oCreature, 1000); } } See Also functions: GetXP | GiveXPToCreature categories: Experience Functions -------------------------------------------------------------------------------author: Chaz Mead, editor: Ryan Hunt, JP team: Rainie
© Copyright 2024 ExpyDoc