Difference between revisions of "Osiris/Shared/PROC GLOBAL DialogStartRequested"

From Divinity Engine Wiki
Jump to: navigation, search
(Osiris Helper Mod APIs)
 
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
===== Full Definition(s) =====
 
===== Full Definition(s) =====
* PROC '''PROC_GLOBAL_DialogRequested'''(''(GUIDSTRING)'''''_Target'''''(GUIDSTRING)'''''_Source''')
+
* PROC '''PROC_GLOBAL_DialogStartRequested'''(''(GUIDSTRING)'''''_Target''', ''(GUIDSTRING)'''''_Source''')
 
===== Description =====
 
===== Description =====
 
This routine is called by the Shared mod for every '''DialogStartRequested''' Osiris event. It does this after checking that the characters can hold a conversation (are not in combat, are not henchmen, ...), but before any checks regarding the generics system (such as low attitude).
 
This routine is called by the Shared mod for every '''DialogStartRequested''' Osiris event. It does this after checking that the characters can hold a conversation (are not in combat, are not henchmen, ...), but before any checks regarding the generics system (such as low attitude).
Line 6: Line 6:
 
* You can set '''DB_FoundDialog'''('''_Target''','''_Source''') in this procedure if you want the rest of the standard logic to find a suitable dialog to start to abort. If you do not do this, the standard logic will continue. However, if you started a dialog involving target and/or source yourself inside this routine, the generic code will still fail to start a dialog once it has found one. After all, characters can only be involved in one dialog at a time.
 
* You can set '''DB_FoundDialog'''('''_Target''','''_Source''') in this procedure if you want the rest of the standard logic to find a suitable dialog to start to abort. If you do not do this, the standard logic will continue. However, if you started a dialog involving target and/or source yourself inside this routine, the generic code will still fail to start a dialog once it has found one. After all, characters can only be involved in one dialog at a time.
 
===== Notes =====
 
===== Notes =====
* If you only want to set or clear certain flags before a particular dialog starts, use '''Proc_DialogFlagSetup'''
+
* If you only want to set or clear certain flags before a particular dialog starts, use [[Osiris/Shared/Proc_DialogFlagSetup|Proc_DialogFlagSetup]]
 +
* '''_Target''' is usually the NPC while '''_Source''' is the player character.
 
===== See Also =====
 
===== See Also =====
* [[Osiris/API/DialogStartRequested]]
+
* [[Osiris/API/DialogStartRequested|DialogStartRequested]]
* Helper [[Osiris/Shared/PROC_GLOBAL_DialogStartRequested_AfterGenerics]]
+
* Helper [[Osiris/Shared/Proc_DialogFlagSetup|Proc_DialogFlagSetup]]
* Helper [[Osiris/Shared/Proc_StartDialog ]]
+
* Helper [[Osiris/Shared/PROC_GLOBAL_DialogStartRequested_AfterGenerics|PROC_GLOBAL_DialogStartRequested_AfterGenerics]]
 +
* Helper [[Osiris/Shared/Proc_StartDialog|Proc_StartDialog]]
 
   
 
   
[[Category:Osiris Shared Mod Helpers]]
+
[[Category:Osiris Shared Mod Helpers|DialogStartRequested]]

Latest revision as of 23:00, 7 February 2018

Full Definition(s)
  • PROC PROC_GLOBAL_DialogStartRequested((GUIDSTRING)_Target, (GUIDSTRING)_Source)
Description

This routine is called by the Shared mod for every DialogStartRequested Osiris event. It does this after checking that the characters can hold a conversation (are not in combat, are not henchmen, ...), but before any checks regarding the generics system (such as low attitude).

Return Values
  • You can set DB_FoundDialog(_Target,_Source) in this procedure if you want the rest of the standard logic to find a suitable dialog to start to abort. If you do not do this, the standard logic will continue. However, if you started a dialog involving target and/or source yourself inside this routine, the generic code will still fail to start a dialog once it has found one. After all, characters can only be involved in one dialog at a time.
Notes
  • If you only want to set or clear certain flags before a particular dialog starts, use Proc_DialogFlagSetup
  • _Target is usually the NPC while _Source is the player character.
See Also