Author Topic: IsValidForPartyDialog  (Read 1977 times)

Offline Diana

  • Neophyte
  • Planewalker
  • *****
  • Posts: 251
  • Gender: Female
IsValidForPartyDialog
« on: August 31, 2004, 05:05:27 PM »
Sigh......

EXTEND_BOTTOM in conjunction with IF ~IsValidForPartyDialog

Has anyone else noticed that there is a 50/50 chance that your EXTEND_BOTTOM trigger takes place? Sometimes I wonder if it would be less than 50/50 if I resort to the default IF ~InParty, !Dead, See to make sure the trigger works properly.

Offline icelus

  • Global Moderator
  • Planewalker
  • *****
  • Posts: 3173
  • Gender: Male
Re: IsValidForPartyDialog
« Reply #1 on: August 31, 2004, 05:41:49 PM »
IsValidForPartyDialog is wonky.  I'd definitely suggest the InParty !Dead route.

Just to be on the safe side, though, you might want to post the snippet of code you're EXTENDing here.
<Moongaze> Luckily BWL has a very understanding and friendly admin.

Offline Diana

  • Neophyte
  • Planewalker
  • *****
  • Posts: 251
  • Gender: Female
Re: IsValidForPartyDialog
« Reply #2 on: September 01, 2004, 08:46:08 AM »
Snippet as requested.  This is one of the children in the slaver's quest which they rescue.  I can walk the sprite right up to the girl and this works 50% of the time otherwise  my coding is ignored and it goes with Bioware's originally coded branches.

EXTEND_BOTTOM girl2 0
IF ~IsValidForPartyDialog("MyNPC")~ EXTERN MyNPC gi1
END

APPEND MyNPC
IF ~~ gi1
  SAY @33
  IF ~~ REPLY @34 EXTERN Girl2 1
  IF ~~ REPLY @35 EXTERN Girl2 gi2
END
END

Offline Smoketest

  • Planewalker
  • *****
  • Posts: 59
  • Gender: Male
Re: IsValidForPartyDialog
« Reply #3 on: September 02, 2004, 12:58:28 AM »
I don't know if this will help, but you might add !IsValidForPartyDialog("MyNPC") to the already existing transition for state 0 in girl2.dlg, so it will only trigger if your npc is not 'valid'. Most of Bioware's uses of IsValidForPartyDialog have a matching !IsValidForPartyDialog behind them (further up the list.)

Offline jcompton

  • Niche Exploiter
  • Administrator
  • Planewalker
  • *****
  • Posts: 7246
Re: IsValidForPartyDialog
« Reply #4 on: September 02, 2004, 09:29:37 AM »
I don't know if this will help, but you might add !IsValidForPartyDialog("MyNPC") to the already existing transition for state 0 in girl2.dlg, so it will only trigger if your npc is not 'valid'. Most of Bioware's uses of IsValidForPartyDialog have a matching !IsValidForPartyDialog behind them (further up the list.)

They do, but it's largely irrelevant because of the way the dialogue engine evaluates transitions.

The biggest problem with IsValid is that it won't recognize the NPC as valid if the NPC is the gabber: the party member doing the talking. There are also other various challenges with the NPC appearing to be "hidden" behind scenery (see Tree of Life goofiness.) So, yeah, if you have something that you absolutely positively want to be played, InParty/!Dead is a good route. Add See() so that you don't get them interjecting from way the hell across the map. :)
Cespenar says, "Kelsey and friends be at the Pocket Plane? Ohhh yesssss!" http://www.pocketplane.net

Offline Rastor

  • Planewalker
  • *****
  • Posts: 271
  • Author of the book, "Being a Jerk for Dummies"
    • RPG Dungeon
Re: IsValidForPartyDialog
« Reply #5 on: September 06, 2004, 02:19:55 PM »
How about trying this, instead of IsValidForPartyDialogue:

Code: [Select]
OR(2)
 IsValidForPartyDialogue("MyNPC")
 IsGabber("MyNPC")

Offline Diana

  • Neophyte
  • Planewalker
  • *****
  • Posts: 251
  • Gender: Female
Re: IsValidForPartyDialog
« Reply #6 on: September 06, 2004, 06:21:29 PM »
Thanks - I never was too clear on the "Gabber" keyword.  I'll give it a shot and see what happens.

 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

Name: Email:
Verification:
Type the letters shown in the picture
Listen to the letters / Request another image
Type the letters shown in the picture:
What color is grass?:
What is the seventh word in this sentence?:
What is five minus two (use the full word)?: