[SCRIPT] - Appliquer un script à un objet type consommable
Posté : ven. 23 juin 2017, 21:48
Bonsoir,
Dans mon module le personnage que j'ai créé reçois des capacités en mangeant des écailles de dragons. Ce même personnage a une arme symbiotique qui évolue lorsque le héros mange une écaille.
Voici mes deux problèmes:
- Je ne veux pas qu'un autre personnage puisse bénéficier de ces capacités
- Je ne veux pas que l'arme du héros puisse faire des dégâts de feu s'il n'a pas manger une écaille de dragon rouge, ceci après avoir manger une écaille de dragon d'ombre (chose qui dépendra de l'ordre dans lequel les dragons sont tués, impossible de controller). J'ai donc créé plusieurs itération de l'arme pour chaque écailles.
-> Est-il possible d'insérer un script afin que l'objet soit automatiquement utiliser par mon héros, peu importe quel personnage le ramasse, ou de créer une telle restriction? (restriction de classe, classe inaccessible au joueur? Mais ladite classe n'apparait pas dans les restrictions d'objets sous DLTCEP).
-> Est-il possible d'attacher un script dans l'objet qui check quelle arme est dans l'inventaire de mon héros, et que la nouvelle arme qui la remplace (dans le slot d'arme directement) ait pris en compte le nom de la précédente? Ou de mettre des conditions?
Ou alors est il possible de donner un enchantement permanent comme la capacité arme empoisonnée de l'assassin, mais à une arme bien précise de l'inventaire? J'aimerai éviter d'avoir à passer par Cromwell.
EDIT: J'avais déjà créé un familier invocable qui fait l'affaire, je lui ai ajouter comme ligne dans son script:
IF
See(LastSummonerOf(Myself))
PartyHasItem("FIRESCL") // No such index
THEN
RESPONSE #100
MoveToObject(LastSummonerOf(Myself))
TakePartyItem("FIRESCL") // No such index
UseItem("FIRESCL",LastSummonerOf(Myself))
END
L'objet FIRESCALE est un consommable, comme tout les indicateurs "USABILITY" sont décochés, personne ne peut l'utiliser, sauf le familier du héros. L'objet donne toutes les capacités au héros et remplace l'arme dans le slot désiré.
Voici les différents thread qui m'ont aidé:
http://www.baldursgateworld.fr/lacouron ... gasin.html
http://www.baldursgateworld.fr/lacouron ... arcor.html
http://www.baldursgateworld.fr/lacouron ... ments.html
http://www.baldursgateworld.fr/lacouron ... ables.html
Merci aux différents intervenants de ces threads, ça m'a été d'une très grande aide!
Dans mon module le personnage que j'ai créé reçois des capacités en mangeant des écailles de dragons. Ce même personnage a une arme symbiotique qui évolue lorsque le héros mange une écaille.
Voici mes deux problèmes:
- Je ne veux pas qu'un autre personnage puisse bénéficier de ces capacités
- Je ne veux pas que l'arme du héros puisse faire des dégâts de feu s'il n'a pas manger une écaille de dragon rouge, ceci après avoir manger une écaille de dragon d'ombre (chose qui dépendra de l'ordre dans lequel les dragons sont tués, impossible de controller). J'ai donc créé plusieurs itération de l'arme pour chaque écailles.
-> Est-il possible d'insérer un script afin que l'objet soit automatiquement utiliser par mon héros, peu importe quel personnage le ramasse, ou de créer une telle restriction? (restriction de classe, classe inaccessible au joueur? Mais ladite classe n'apparait pas dans les restrictions d'objets sous DLTCEP).
-> Est-il possible d'attacher un script dans l'objet qui check quelle arme est dans l'inventaire de mon héros, et que la nouvelle arme qui la remplace (dans le slot d'arme directement) ait pris en compte le nom de la précédente? Ou de mettre des conditions?
Ou alors est il possible de donner un enchantement permanent comme la capacité arme empoisonnée de l'assassin, mais à une arme bien précise de l'inventaire? J'aimerai éviter d'avoir à passer par Cromwell.
EDIT: J'avais déjà créé un familier invocable qui fait l'affaire, je lui ai ajouter comme ligne dans son script:
IF
See(LastSummonerOf(Myself))
PartyHasItem("FIRESCL") // No such index
THEN
RESPONSE #100
MoveToObject(LastSummonerOf(Myself))
TakePartyItem("FIRESCL") // No such index
UseItem("FIRESCL",LastSummonerOf(Myself))
END
L'objet FIRESCALE est un consommable, comme tout les indicateurs "USABILITY" sont décochés, personne ne peut l'utiliser, sauf le familier du héros. L'objet donne toutes les capacités au héros et remplace l'arme dans le slot désiré.
Voici les différents thread qui m'ont aidé:
http://www.baldursgateworld.fr/lacouron ... gasin.html
http://www.baldursgateworld.fr/lacouron ... arcor.html
http://www.baldursgateworld.fr/lacouron ... ments.html
http://www.baldursgateworld.fr/lacouron ... ables.html
Merci aux différents intervenants de ces threads, ça m'a été d'une très grande aide!