Salk Posted November 10, 2014 Posted November 10, 2014 Since I opened this topic I can as well ask here. Can I change this: ApplySpellRES("WTPFMLV2",Player1) to this: ApplySpellRES("WTPFMLV2",[PC]) to make sure the target of the spell is the protagonist and not just the party character occupying the first slot in the party? And in general, where do I learn what targets are valid targets for the engine? Thanks!
Mike1072 Posted November 10, 2014 Posted November 10, 2014 No. Player1 is the protagonist. [PC] is just a visible party member. Check out this page and Sim's Complete Scripting Guide.
Miloch Posted December 4, 2014 Posted December 4, 2014 And in general, where do I learn what targets are valid targets for the engine? Object.ids and EA.ids are the main files for this. Your first example (Player1) is an object, the second [PC] is an EA (enemy/ally). You can target either. Edit: You're finally trying to learn how to mod, aren't you?
Salk Posted December 4, 2014 Author Posted December 4, 2014 Thanks for chiming in, Miloch. I am trying. And I need all the help I can get...
Salk Posted July 8, 2015 Author Posted July 8, 2015 I have this: !IsGabber(Player1) !IsGabber(Player2) !IsGabber(Player3) !IsGabber(Player4) !IsGabber(Player5) !IsGabber(Player6) and I was wondering if it I could swap all of it with !IsGabber([PC]) To see if I could, I tested it and it didn't really work. Can somebody explain why? Is it because [PC] is not a visible object like Mike1072 suggested above? Thanks
cmorgan Posted July 8, 2015 Posted July 8, 2015 Dialogue or script? In dialogue, we expect Player1, Player2 et al., 19 LastTalkedToBy20 LastHeardBy // never seen in use21 Player122 Player223 Player324 Player425 Player526 Player627 Protagonist never seen in use but easy to test: 70 Player1Fill Returns the player in the first portrait slot. 71 Player2Fill Returns the player in the second portrait slot. 72 Player3Fill Returns the player in the third portrait slot. 73 Player4Fill Returns the player in the fourth portrait slot. 74 Player5Fill Returns the player in the fifth portrait slot, 75 Player6Fill Returns the player in the sixth portrait slot. All of these are in the object.ids and called for using the script triggers listed here: http://gemrb.org/iesdp/scripting/triggers/bg2triggers.htm In the listing of triggers, the definitions tell you what they work with; for example 0x4037 StateCheck(O:Object*,I:State*State)Returns true only if the specified object is in the state specified. So in this case, the parameters are "object.ids" and "state.ids" entries.
Salk Posted July 10, 2015 Author Posted July 10, 2015 I tried that in a script but, in my ignorance, I didn't really think there would be any difference if I did it from within a dialogue.
Ardanis Posted July 10, 2015 Posted July 10, 2015 Try !Allegiance(LastTalkedToBy(Myself),PC) never seen in use but easy to test: Player*Fill is good for "is all party gathered here" checks. The reason you don't want Player* there is because if you kicked Player2 out of party, the rest won't magically take its place until after save and load - i.e. it's very possible to run with Player[1,3,4] and the game won't bat an eyelid.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.