AdjustAlignment(object, int, int)

クリーチャーのアライメントを調整します。

action AdjustAlignment(
    object oSubject,
    int nAlignment,
    int nShift
);

Parameters

oSubject

アライメントを調整する目標。

nAlignment

ALIGNMENT_*

nShift

アライメントを変化する量(-100から100の範囲の数値)


Description

oSubjectのアライメントを調整します。

ALIGNMENT_LAWFUL, ALIGNMENT_CHAOTIC, ALIGNMENT_GOOD, ALIGNMENT_EVIL:アライメントは指定した軸に変化します。

ALIGNMENT_ALL:nShiftをoSubjectのロー/カオスとグッド/エビルアライメント値に加えます。(つまり、両方を同じ量だけ加算・減算します)

ALIGNMENT_NEUTRAL:oSubjectのロー/カオスとグッド/エビルアライメント値は共にニュートラル方向へsShiftは適用されます。



Remarks

ALIGNMENT_NEUTRALの例:oSubjectがロー/カオス値が10(即ちカオティック)、グッド/エビル値が80(即ちグッド)の場合、nShiftが15であるならば、ロー/カオス値は(10+15)で25となり、グッド/エビル値は(80-15)で65になります。

また、アライメント値が50以上にも以下にならないように変化するでしょう。

AdjustAlignmentの対象のpcが属するパーティにいるPC達もまたアライメントに影響を受けます。行為の当人(oSubject)は、そのアライメントの変化を完全に受け取り、ターゲットのパーティメンバーは、アライメントに20%の変化を受けます(切り上げとなります)。。

アライメント調整はDMには作用しません。


Known Bugs

下記のコードの実行に関して:

AdjustAlignment(GetPCSpeaker(), ALIGNMENT_GOOD, 5); AdjustAlignment(GetPCSpeaker(), ALIGNMENT_LAW, 5);

...既にアライメントがローフルグッドであるPCに対しては、黄色のステータスメッセージで、PCのアライメントはカオティックに5ポイント変化、イビルに5ポイント変化しました、と表示されます。


Version

1.31

See Also

functions: AdjustReputation | GetAlignmentGoodEvil | GetAlignmentLawChaos | GetReputation
categories: Alignment Functions
constants: ALIGNMENT_* Constants


author: Charles Feduke, additional contributor(s): Jemoney, Tom Cassiotis, Xachaffery Vermillion, Martin Jorgensen, JP team: geshi, Rainie
Send comments on this topic.