2Bantry: Думаю, с триггером !InParty будут сложности:
во-первых, скрипты работают до выполнения первого условия, значит эту проверку нужно разместить так, чтобы она выполнялась всегда, но ничему другому не мешала;
во-вторых, если она будет всегда выполняться, тогда этот персонаж если другого нет в партии, будет голосить, что уходит, как только попадет в зону видимости, даже если в партию его никто и не звал
поэтому, в этом случае, нужны еще проверки как минимум на то, что он сам-то в партии
Можно попробовать еще
0x0005 Leaves(O:Object*)
примечание:
O:Object* - an object specified in the Object.ids file or a script name of a CRE wrapped in quotes "" or the name of a container or door or trap in quotes. When specifying creatures, a special format can be used to allow a whole group/category of creatures to act as the parameter. The format is [EA.GENERAL.RACE.CLASS.SPECIFIC.GENDER.ALIGN].
Where General is from General.ids for example. A 0 means "any in this category". For example: [ENEMY.0.0.MAGE] specifies all creatures that are enemies of the party, any general category, any race, mages. Some triggers are only useful when types of creatures are specified in this way. Remember: [ANYONE] will allow ANY object to satisfy the trigger. i.e. See([ANYONE]) returns true if any friend or foe is seen.
Кстати, для таких любителей все бросить и уйти, можно прописать еще одно полезное действие:
224 GivePartyAllEquipment()
This will give the party all the equipment of the user. You can see this in effect when characters are removed from the game completely--the developers don't want to see all the items go with them. That could lead to problems, especially if the given character had plot important items.