Encounter remplacer par des triggers.

Répondre
Partager Rechercher
Bonjour les Modeurs. (Et Devellopeurs.)

J'avais dans l'idée de remplacer les encounters par des triggers, histoire que par exemple, des insectes sortes par des trous. Des Manticores apparaissant dans un cercle (Un peu comme le sort du druide qui rajoute plusieurs stat, vous savez le grand cercle rond avec un Fx d'oiseaux et de feuilles)

Des Créatures artificielles qui apparaissent sous forme de placeable et qui se transforme après un p'tit Delay en la créature la plus plausible selon ce que vous avez posé (Un pied de golem : Un golem, une tombe : une Ombre/Undead etc...)
avec en guise un p'tit cercle d'invocation. (Comme le sort d'invocations basique)

Voilà donc je pense que vous avez compris l'idée.
Donc je vais vous faire un p'tit résumé de ce que j'ai déjà fait.

Code PHP:

/*
 *  Script generated by LS Script Generator, v.TK.0
 *
 *  For download info, please visit:
 *  http://nwvault.ign.com/View.php?view=Other.Detail&id=1502
 */
// Put this script OnEnter.


void main()
{
    
int nValue;
    
object oSpawn;
    
effect eVFX;

    
// Get the creature who triggered this event.
    
object oPC GetEnteringObject();

    
// Only fire for (real) PCs.
    
if ( !GetIsPC(oPC)  ||  GetIsDMPossessed(oPC) )
        return;

    
// Only fire once per PC.
    
if ( GetLocalInt(oPC"DO_ONCE__" GetTag(OBJECT_SELF)) )
        return;
    
SetLocalInt(oPC"DO_ONCE__" GetTag(OBJECT_SELF), TRUE);

    
// If the local int is exactly 0.
    
if ( GetLocalInt(oPC"trigprotoray") == )
    {
        
// Spawn "protecteurroyal".
        
eVFX EffectVisualEffect(VFX_COM_SPECIAL_RED_ORANGE);
        
oSpawn CreateObject(OBJECT_TYPE_CREATURE"protecteurroyal"GetLocation(oPC));
        
DelayCommand(0.5ApplyEffectToObject(DURATION_TYPE_INSTANTeVFXoSpawn));

        
// Set a local integer.
        
nValue GetLocalInt(oPC"trigprotoroy") + 1;
        
SetLocalInt(oPC"trigprotoroy"nValue);
    }
    else
    {
        
// Have text appear over the PC's head.
        
FloatingTextStringOnCreature("L'endoit semble calme"oPC);
        
AssignCommand(oMod,DelayCommand(1200.0oPCnValue trigprotoray ());
    }

Voilà donc si jamais vous ne voyez pas ce que j'ai voulu faire je tenterais de l'expliquer mais déjà comme vous le voir, j'ai fait le script depuis Lisa's Soul Gen. ça simplifie quand même bien la vie de modeurs et de programmeurs débutants. (Si si j'vous assure !)

Le problème c'est qu'en faite, j'arrive à placer le trigger comme il faut, les mobs apparaissent avec les animations, bref tout ça, marche nickel sauf que le vrai problème ce situe dans le fait que si le joueurs repasse dans le trigger (J'ai mis le script dans OnEnter), les mobs vont pop à l'infini.
Bon là j'ai incorporé une variable mais bon, c'est pas vraiment la solution.
Car d'accord, là le joueurs va passez dans le triggers, les Proto vont pop mais s'il repasse dedans, même trois heures après, il se passera rien.
Et je voudrais justement que ça agisse comme une encounter. Avec un délai de repop d'environs 120-180 à la regueur. Il me faudrais juste la ligne à ajouter pour que ce soit possible.
J'ai fais quelques recherches sur JoL et sur google pour trouver la réponse mais rien n'éclairait ma lanterne. J'ai vu quelques lignes de code sur un site dédier à Nwn2 mais je n'ai pas très bien compris le fonctionnement du script.

Donc si quelqu'un pouvais me monter un exemple soit en m'indiquant la ligne à ajouter ou une autre solution ou tout simplement en modifiant mon script.

Týr.
Salut!
Pourquoi tu ne veux pas te servir des rencontres si tu veux que ton trigger se comporte comme une rencontre?
Si c'est pour les effets spéciaux il te suffirait de placer le script gérant les effets dans le OnEnter de la rencontre, et le point de spawn des monstres où tu veux... Non?!
L'avantage des rencontres étant de pouvoir y placer des mobs de différents niveaux qui s'adapteront au niveau du personnage.
De plus il y a la possibilité de placer un script dans le OnExhausted de la rencontre qui s'enclenche quand tous les monstres sont morts^^ (un peu buggé tout de même paraît-il...)

Dernière modification par kaliopsys ; 14/01/2014 à 15h47.
Yop

Effectivement ça pourrais être une idée, je vais allez voir ça de plus près.

De plus il y a la possibilité de placer un script dans le OnExhausted de la rencontre qui s'enclenche quand tous les monstres sont morts^^ (un peu buggé tout de même paraît-il...)

Tu l'as testé ?

Je m'en vais allez essayer ça et si c'est assez stable et pas trop demandant, je te ferais signe (Si tu en as besoin évidement.)

Tyr.
En fait le gros problème c'est que si le PJ meurt avant la fin du combat et respawn pour en finir alors l'événement ne se déclenchera pas... Il faut recharger la partie avant la rencontre...
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés