Questo è un video di come funziona in questo momento, ma i problemi di cui parlo qui non si notano perché riguardano i comandi, non tanto il funzionamento della luce ingame.
[youtube][/youtube]
Prima di entrare nel dettaglio della richiesta di aiuto, dico nel modo più breve possibile come è fatta così posso spiegare meglio i dubbi In realtà è una cosa estremamente semplice, dato che può essere attivata ingame in qualsiasi momento con un tasto, proprio come trl/tru. Certo, fare una piccola animazione in cui lara allunga un braccio per accenderla mentre è ferma in piedi che contiene un animCommand sarebbe stato molto più realistico e bello da vedere, ma in termini di gameplay credo sia anche più comodo così
1- Ho creato la stringa di script di un AddEffect1 con una luce piatta bianca associata alla JOINT_ABDOMEN, con determinate coordinate per posizionarla frontalmente a lara, leggermente spostata a sinistra e all'altezza della bretella dello zaino.
2- Ho esportato questi due trigger e li ho associati a un TriggerGroup1: uno per attivare su Lara l'AddEffect precedente, l'altro per il suono di accensione della torcia.
3- Ho esportato questi due trigger e li ho associati a un TriggerGroup2: uno per disattivare su Lara l'AddEffect, l'altro per il suono di spegnimento della torcia.
4- Ho creato un GlobalTrigger1 che attiva il TriggerGroup1 quando si preme il tasto dei flare (ovviamente rimuovendo questi ultimi dall'inventario con un equipment)
Codice: Seleziona tutto
GlobalTrigger= 1, IGNORE, GT_GAME_KEY2_COMMAND, KEY2_USE_FLARE, IGNORE, 1, IGNORE
5- Ho creato un GlobalTrigger2 che attiva il TriggerGroup2 quando si preme il tasto L da tastiera.
Codice: Seleziona tutto
GlobalTrigger= 2, IGNORE, GT_KEYBOARD_CODE, 38, IGNORE, 2, IGNORE
6- Ho creato un GlobalTrigger3 che attiva il TriggerGroup1 (accensione torcia+suono) quando si seleziona il PLS dall'inventario.
Codice: Seleziona tutto
GlobalTrigger= 3, IGNORE, GT_USED_INVENTORY_ITEM, 232, IGNORE, 1, IGNORE
Il problema principale è: quando premo i pulsanti per accendere e spegnere la torcia, il suono parte a raffica fino a quando non viene lasciato il tasto (per fare il video ho appena dovuto sfiorare i tasti, altrimenti i suoni partivano a cascata).
Il primo ignore nelle stringhe dei GlobalTrigger, sono le costanti FGT che riguardano quando e quante volte il GT può essere eseguito. Certo, se metto un FGT_SINGLE_SHOT il problema di risolve, ma così posso accendere e spegnere la torcia una volta sola per tutto il livello non ho proprio trovato niente ._.
anche nel trigger esportato, il suono è specificato che va eseguito una sola volta, quindi il problema sta solo nel GlobalTrigger e non nel triggergroup associato.
Forse però non è nemmeno risolvibile questo (certo, usando la pappardella che dicevo prima con animazione e animcommands sarebbe tutto diverso e il problema non ci sarebbe, ma così potrei attivare la torcia solo quando lara è ferma in piedi ed è scomodo)
Altri dubbi: Avrei voluto fare in modo che la torcia si potesse accendere e spegnere dalla stesso tasto (flare key), ma mi sa che non è possibile nemmeno questo.
Mettendo i global trigger di accensione e spegnimento della torcia sullo stesso tasto, i trigger di attivazione e disattivazione dell'addeffect si annullano a vicenda, e si sentono solamente i suoni di attivazione e spegnimento sovrapposti. Il penultimo IGNORE delle stringhe dei GlobalTrigger riguardano condition triggergroup che non ho capito bene cosa siano, ma credo abbia a che fare con gli organizer. ma gli organizer non credo che mi possano aiutare
Cioè, mettendo entrambe accensione e spegnimento sullo stesso tasto, l'ideale sarebbe che il primo triggergroup (accensione) funzioni solo sotto la condizione in cui la luce sia spenta; viceversa il secondo (spegnimento) funzioni solo nel caso in cui la luce sia già accesa
però oltre ad essere una cosa un po' intricata non credo sia fattibile... e poi accensione e spegnimento su tasti diversi credo vada benissimo lo stesso
In ogni caso di tutte queste nuove funzionalità del trng so davvero molto poco perché non ci ho praticamente mai sperimentato, magari si possono fare altre cose che non so