Originally Posted by LarIlya
The Composer is right in that, for a trigger to throw events upon entry, the trigger has to be registered for the character entering it.
However, it is best to use registerd triggers rather than event triggers unless you actually need the trigger to throw an event for every single character, as in the case of weather (because e.g. every character needs to get wet in the rain) to avoid excessive events being thrown.
So, for example, you could do:
Code
-INIT-
TriggerRegisterForPlayers(TRIGGERGUID_spawnerTrigger001_ad34df51-5cf4-4163-8d8e-40631efc10d9);

-KB-
IF
CharacterEnteredTrigger(_Character, TRIGGERGUID_spawnerTrigger001_ad34df51-5cf4-4163-8d8e-40631efc10d9)
THEN
ItemCreateAtTrigger(TRIGGERGUID_spawntrigger001_f1695295-7b38-41da-aa37-6ed5c602b159, "WPN_Common_Sword_1H_A2_47ba6f56-85a7-4ac5-a403-b8d5768ca4d7"); 


Notice the lack of "CharacterIsPlayer" check - your trigger will only ever trigger for player characters to begin with.
However, it appears like you may want this event to occur only once, in which case there's a helper -
DB_OneShotPlayerTrigger.

What you'd do then is:
Code
-INIT-
DB_OneShotPlayerTrigger(TRIGGERGUID_spawnerTrigger001_ad34df51-5cf4-4163-8d8e-40631efc10d9);

-KB-
PROC
ProcOneShotTriggerEntered(_Character, TRIGGERGUID_spawnerTrigger001_ad34df51-5cf4-4163-8d8e-40631efc10d9)
THEN
ItemCreateAtTrigger(TRIGGERGUID_spawntrigger001_f1695295-7b38-41da-aa37-6ed5c602b159, "WPN_Common_Sword_1H_A2_47ba6f56-85a7-4ac5-a403-b8d5768ca4d7"); 


If you follow the link in my first post, there's some documentation about registering triggers on the wiki.


OK tested this out. Thanks for pointing out that "OneShot" can be in the INIT area...I didn't realize TriggerRegisterForPlayers could also go in INIT..

TESTED and both work perfectly:

Quote

INIT
DB_IsPlayer(CHARACTERGUID_S_GLO_CharacterCreationDummy_001_da072fe7-fdd5-42ae-9139-8bd4b9fca406);
//DB_OneShotPlayerTrigger(TRIGGERGUID_spawnerTrigger001_ad34df51-5cf4-4163-8d8e-40631efc10d9);
//TriggerRegisterForPlayers(TRIGGERGUID_Monkworks_EventTrigger_000_7c51d4d5-1730-4e3c-88f3-9e07746e3ab5);
TriggerRegisterForPlayers(TRIGGERGUID_MonkworksBOXtrigger000_287131ab-cb9a-4506-841a-d40afdd5b53c);

KB
IF
CharacterEnteredTrigger(_Character, TRIGGERGUID_MonkworksBOXtrigger000_287131ab-cb9a-4506-841a-d40afdd5b53c)
//CharacterEnteredTrigger(_Character, TRIGGERGUID_Monkworks_EventTrigger_000_7c51d4d5-1730-4e3c-88f3-9e07746e3ab5)
THEN
ItemCreateAtTrigger(TRIGGERGUID_MonkworksSpawnPoint_000_662700e2-b906-4045-939c-5090c8eef2f9, "WPN_Common_Sword_1H_A2_47ba6f56-85a7-4ac5-a403-b8d5768ca4d7");


Both swapped out and fired perfectly!



Last edited by Detect; 07/01/18 04:46 PM.