Page 1 sur 1

[SCRIPT] Comment coder l'arrrivée de renforts pendant un combat ?

Posté : jeu. 31 juil. 2014, 22:42
par Cocrane
Charname va avoir un combat difficile. Si il n'a pas fuit la scène de combat, des renforts arriveront au bout d'un moment.

Comment gérer la notion de temps ?
Comment savoir qu'il n'a pas fuit le combat ?

À l'arrivée, des renforts est-il possible de déclencher un dialogue alors qu'il y a un combat ?

Cocrane

Posté : jeu. 07 août 2014, 00:31
par Kev
Pour ce qui est du temps, ça dépend de toi, si tu veux par exemple que les renforts débarquent 5 tours après le début du combat, tu écris dans ton/tes scripts de personnages lié au début du combat :

Code : Tout sélectionner

IF
  !GlobalTimerNotExpired("NomVariable","GLOBAL")
THEN
  RESPONSE #100
    SetGlobalTimer("NomVariable","GLOBAL",FIVE_TURNS)
END 
Ou tu peux compter en secondes, genre 3 minutes après le début du combat.

Code : Tout sélectionner

SetGlobalTimer("NomVariable","GLOBAL",180)
Pour ce qui est de la fuite, tu peux ajouter une condition de distance de détection dans un autre script lié à l'expiration du timer et au spawn des renforts :

Code : Tout sélectionner

IF
  Global("RenfortArriver","GLOBAL",0)
  Detect([PC])
  Range(LastSeenBy(Myself),10)
  GlobalTimerExpired("NomVariable","GLOBAL")
THEN
  RESPONSE #100
    SetGlobal("RenfortArriver","GLOBAL",1)
    CreateCreature("NomCreature",[1760.991],6)
//  ect...
END
Pour le dialogue pendant le combat, il te suffit d'écrire un script pour le personnage que tu veux faire parler sans aucune conditions qui pourraient empêcher le dialogue :

Code : Tout sélectionner

IF
  Detect([PC])
  Range(LastSeenBy(Myself),10)
  Global("RenfortArriver","GLOBAL",1)
THEN
  RESPONSE #100
    SetGlobal("RenfortArriver","GLOBAL",2)
    StartDialogueNoSet(LastSeenBy(Myself))
END
Donc sans aucune condition du style :

Code : Tout sélectionner

  !StateCheck(Player1,CD_STATE_NOTVALID)
  CombatCounter(0)
  !See([ENEMY])
J'espère avoir été clair, vu que j'ai pas d'exemple précis de ce que tu veux faire sous la main, j'ai un peu improvisé.

Posté : ven. 08 août 2014, 22:39
par Cocrane
Merci Kev pour ce retour détaillé qui va m'aider à réaliser ce script.

Une question de débutant.

Je vois souvant des "REPONSE #100".
La valeur du # est importante?

Posté : sam. 09 août 2014, 05:47
par Haplo74
Cocrane a écrit :Merci Kev pour ce retour détaillé qui va m'aider à réaliser ce script.

Une question de débutant.

Je vois souvant des "REPONSE #100".
La valeur du # est importante?
Arf ! J'ai déjà eu ce genre de discussion avec Freddy_Gwendo.
Dans ce sujet de DrAzTiK: http://www.baldursgateworld.fr/lacouron ... ature.html
Et plus précisément à partir de ce [POST=330982]message[/POST].

Haplo74

Posté : mar. 12 août 2014, 21:14
par Cocrane
Merci Haplo. ^^