Guest Grog Posted August 13, 2004 Share Posted August 13, 2004 0x4098 ClassEx(O:Object*,I:Class*class*) Works just like Class() except that ClassEx also returns TRUE if object is multi-classed. Example: IF ClassEX(Myself,THIEF) ActionListEmpty() !StateCheck(Myself,STATE_INVISIBLE) !StateCheck(Myself,STATE_IMPROVEDINVISIBILITY) CheckStatGT(Myself,35,HIDEINSHADOWS) THEN RESPONSE #100 Hide() END 0x40A0 Internal(O:Object*,I:Index*,I:Value*) 0x40A1 InternalGT(O:Object*,I:Index*,I:Value*) 0x40A2 InternalLT(O:Object*,I:Index*,I:Value*) Each creature/PC in IWD has a set of 5 internal varibles. They are indexed from 0-4. Each index can contain one integer (single digit IIRC). Internal returns TRUE is value equals the stored value at index[X]. Returns FALSE otherwise. InternalGT returns TRUE is value greater than the stored value at index[X]. Returns FALSE otherwise. InternalLT returns TRUE is value less than the stored value at index[X]. Returns FALSE otherwise. 0x40A3 School(O:Object*,I:School*School) Checks to see if object is a Specialist mage of the specified school. Note - to get this trigger to work correctly, it must be changed as follows: School(O:Object*,I:School*Magespec) 0x40A7 CreatureHidden(O:Object*) Check to see if object is not visible (set as flag in ARE file, or by the HideCreature action) Example: IF CreatureHidden(Myself) Global("KRESS_QUEST","GLOBAL",3) THEN RESPONSE #100 Unlock("BOX1") Unlock("BOX2") Unlock("BOX3") Unlock("BOX4") HideCreature(Myself,FALSE) Continue() END 0x40A8 HelpEX(O:Object*,I:Type*HelpType) Returns TRUE if object is the same type as the creature running the script Values from HelpType.ids 1 EA 2 GENERAL 3 RACE 4 CLASS 5 SPECIFIC 6 GENDER 7 ALIGN For example, this would be used to insure that Orcs responded to calls from help from other Orcs, but not from goblins participating in the same battle 0x40AC ExtendedStateCheck(O:Object*,I:State*extstate) Like StateCheck, except using the file ExtState.ids 0x40B1 ModalState(O:Object*,I:ModalState*Modal) Same as BG2 0x40B2 SummoningLimit(O:Object*,I:Number*) 0x40B3 SummoningLimitGT(0:Object*,I:Number*) 0x40B4 SummoningLimitLT(O:Object*,I:Number*) Not sure if these check the party's summoning limit, as set by the game, or if they are used to set a virtual summoning limit for the script-runner. Either way they appear to be broken according to my tests Just ignore any descriptions you're already aware of Cheers Link to comment
igi Posted August 23, 2004 Share Posted August 23, 2004 Added to local copy. Thanks for the info! Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.