Bonjour Cocrane, j'en suis ravi.
Cocrane a écrit :Lorsqu'un vol est en échec, le PNJ peut devenir agressif. Il existe une commande pour tester l'échec d'un vol et décider du comportement du PNJ?
Evidemment que non. Elle aurait été bien trop utile
J'ai donc farfouillé mes notes. Voilà ce que je sais :
Comme tu l'as remarqué, un vol à la tire raté ne provoque pas nécessairement une réaction de la victime.
Cela s'explique en partie par le fait qu'en cas d'échec, un vol à la tire déclenche
AttackedBy, qui lui, très souvent, actionne
Enemy.
[HTML]IF
AttackedBy([GOODCUTOFF], DEFAULT)
THEN
RESPONSE #100
Enemy()
END[/HTML]
Tout est là.
Il y a donc une possibilité du côté des scripts en changeant la réaction du personnage après le AttackedBy.
Comme ce trigger est extrêmement utile, notamment en combat, il est peu conseillé de le conditionner.
En revanche, si cela concerne un pnj qui n'a strictement aucune chance de survie face à une attaque, il est possible de ruser un peu.
Mais le résultat est loin d'être parfait.
[HTML]IF
HitBy([GOODCUTOFF], CRUSHING)
Allegiance(Myself, NEUTRAL)
THEN
RESPONSE #100
DisplayStringHead(Myself,"Ciel, mon sang !")
END
IF
AttackedBy([GOODCUTOFF], DEFAULT)
Allegiance(Myself, NEUTRAL)
THEN
RESPONSE #100
DisplayStringHead(Myself,"Pourquoi me tripotez-vous ?")
END[/HTML]
Si la victime reçoit des dégâts, la première partie du script se déclenche. (on ne sait jamais, elle pourrait survivre...)
Si le vol est un échec, c'est la seconde qui s'opère. (puisque qu'un vol est une 'attaque' qui n'inflige aucun dégât)
En revanche, si le membre du groupe fait un échec critique sur sa première attaque, c'est également la seconde partie qui se déclenchera (contrairement à ce qui se fait habituellement).
Peut-être que cela conviendra à ton pnj.