La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 27/11/2024 04:14:09


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Siléphrael
Grand Chevalier
Inscrit le: 13 Aoû 2004
Messages: 122
Localisation: Toulouse
Répondre en citant
Posté le : 16/02/2005 16:06:11 Sujet du message : ca veut dire koi ... ?

"PARSING VARIABLE LIST" ??


Je vous explique, j'aimerai faire en sorte que soit rajouté aux différents bigbys un jet de reflexe, pour permettre de l'esquiver.

J'ai un script a peu près pas trop mal fait, mais il me sort "parsong variable list" sur la ligne :

NWScript :
int nDuration = GetCasterLevel(OBJECT_SELF)* 0,5;
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


Si quelqu'un sait comment faire pour opposer un jet de reflexe a un jet qui contient 3D8+moitié des lvls de lanceur de sort ...
et ca pour tous les bigbys.

Marci
_________________
* Tenant sous sa lame le jeune prince * Je vais compter jusqu'a trois et tu mourra .... * lui tranche la gorge * mince, j'ai oublié de compter ...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
grenwald
Novice
Inscrit le: 24 Jan 2003
Messages: 11
Répondre en citant
Posté le : 16/02/2005 16:53:51 Sujet du message :

pour ton message d'erreur, il me semble que c'est du à un oubli de point virgule dans les commandes précédentes; dumoins je crois, j'ai pas l'éditeur au boulot pour tester Sad
Par contre, pour ton probleme de jet de reflexes, je ne peux malheureusement pas t'aider....
_________________
Un troll???? où ça?........ oups, pardon, je ne l'avais pas vu
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Yahoo Messenger MSN Messenger Ignorer l'utilisateur
 
Tchong
Novice
Inscrit le: 30 Aoû 2003
Messages: 12
Localisation: Ank Morpork
Répondre en citant
Posté le : 16/02/2005 17:03:01 Sujet du message :

Peut-être devrais-tu écrire "0.5" au lieu de "0,5" Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 16/02/2005 19:49:42 Sujet du message :

C'est fait exprès que ta variable soit un int (entier) ? Car en faisant x 0.5 il y a peu de chance que ça en soit un... Je sais pas comment Aurora gère ça, s'il tronque, arrondi ou fait un message d'erreur. Un float me semblerait plus approprié.Confused
_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Siléphrael
Grand Chevalier
Inscrit le: 13 Aoû 2004
Messages: 122
Localisation: Toulouse
Répondre en citant
Posté le : 17/02/2005 10:59:14 Sujet du message :

heu ... un quoi ?

Bon je pense que je vais vous montrer le script ^^ j'aimerai l'appliquer a tous les bigbys plz.


NWScript :
//:Confused///////////////////////// /////////////////////
//:: Bigby's Crushing Hand
//:: [x0_s0_bigby5]
//:: Copyright (c) 2002 Bioware Corp.
//:Confused///////////////////////// ////////////////////
/*
    Similar to Bigby's Grasping Hand.
    If Grapple succesful then will hold the opponent
    and do 2d6 + 12 points of damage EACH round
    for 1 round/level

*/

//:Confused///////////////////////// ////////////////////
//:: Created By: Brent
//:: Created On: September 7, 2002
//:Confused///////////////////////// ////////////////////
//:: VFX Pass By:
#include "x0_i0_spells"



void RunHandImpact(int nSecondsRemaining, object oTarget)
{
    if (GetIsDead(oTarget) == FALSE)
    {
      if (nSecondsRemaining % 6 == 0)
      {
            int nDam = MaximizeOrEmpower(6,2,GetMetaMagicFeat(), 12);
            effect eDam = EffectDamage(nDam, DAMAGE_TYPE_BLUDGEONING);
            effect eVis = EffectVisualEffect(VFX_IMP_ACID_L);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
      }
      --nSecondsRemaining;
      if (nSecondsRemaining > 0)
      {
          DelayCommand(1.0f,RunHandImpact(nSecondsRemaining,oTarget));
      }
  }
  // Note:  if the target is dead during one of these second-long heartbeats,
  // the DelayCommand doesn't get run again, and the whole package goes away.
  // Do NOT attempt to put more than two parameters on the delay command.  They
  // may all end up on the stack, and that's all bad.  60 x 2 = 120.
}

void main()
{

    //Declare major variables
    object oTarget = GetSpellTargetObject();
    int nDuration = GetCasterLevel(OBJECT_SELF)* 1,5;
    int nMetaMagic = GetMetaMagicFeat();


    //Check for metamagic extend
    if (nMetaMagic == METAMAGIC_EXTEND) //Duration is +100%
    {
        nDuration = nDuration * 1,5;
    }

    if(!GetIsReactionTypeFriendly(oTarget))
    {
        //Fire cast spell at event for the specified target
        SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_BIGBYS_CRUSHING_HAND, TRUE));

        //SR
        if(!MyResistSpell(OBJECT_SELF, oTarget))
        {
//edited part.
//if(!MySavingThrow(SAVING_THR OW_REFLEX, oTarget, GetSpellSaveDC(), SAVING_THROW_TYPE_SPELL, OBJECT_SELF, GetRandomDelay()))
{


            int nCasterModifier = GetCasterAbilityModifier(OBJECT_SELF);
            int nCasterRoll = d20(1)
                + GetCasterLevel(OBJECT_SELF)* 1,5;
            int nTargetRoll = GetAC(oTarget);

            // * grapple HIT succesful,
            if (nCasterRoll >= nTargetRoll)
            {
                // * now must make a GRAPPLE check
                // * hold target for duration of spell

                nCasterRoll = d20(1) + nCasterModifier
                    + GetCasterLevel(OBJECT_SELF);

                nTargetRoll = /*NEED GetBaseAttackBonus*/
                    GetBaseAttackBonus(oTarget) + GetSizeModifier(oTarget)
                    + GetAbilityModifier(ABILITY_STRENGTH);

                if (nCasterRoll >= nTargetRoll)
                {
                    effect eKnockdown = EffectParalyze();
                    effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
                    effect eHand = EffectVisualEffect(VFX_DUR_BIGBYS_CRUSHING_HAND);
                    effect eLink = EffectLinkEffects(eKnockdown, eDur);
                    eLink = EffectLinkEffects(eLink, eHand);

                    ApplyEffectToObject(DURATION_TYPE_TEMPORARY,
                                        eLink, oTarget,
                                        RoundsToSeconds(nDuration));



                    // * now do damage each round
                    nDuration = nDuration * 6;
                    if (GetIsImmune(oTarget, EFFECT_TYPE_PARALYZE) == FALSE)
                    {
                        RunHandImpact(nDuration, oTarget);
                    }

                }
            }
}//
        }
    }
}

Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


Voila, vous avez maintenant la mm chose que moi, j'aimerai just que ca marche ^^

Marci a vous !!!

PS : poste de scripteur a pourvoir ...
_________________
* Tenant sous sa lame le jeune prince * Je vais compter jusqu'a trois et tu mourra .... * lui tranche la gorge * mince, j'ai oublié de compter ...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Siléphrael
Grand Chevalier
Inscrit le: 13 Aoû 2004
Messages: 122
Localisation: Toulouse
Répondre en citant
Posté le : 17/02/2005 11:07:02 Sujet du message :

Oui précisions, ca c'est le script queje veux modifier ... tel quel, toutes les bigbys passent sans souci ! or sur une arène ... rendez vous compte que la puissance du moindre mago Sad
_________________
* Tenant sous sa lame le jeune prince * Je vais compter jusqu'a trois et tu mourra .... * lui tranche la gorge * mince, j'ai oublié de compter ...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 17/02/2005 13:55:27 Sujet du message :

j'ai rien compris,
mais si tu remplace tout tes 1,5 par 2
alors ton script compile... Surprised
_________________
http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin!
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 17/02/2005 20:54:04 Sujet du message :

Ca confirme ma première impression alors, tu déclares ta variable en "int" c'est à dire un entier (un nombre sans virgule) or tu multiplie quelque chose par 1,5, c'est pas très logique et le résultat obtenu est forcément un chiffre avec virgule (un float).

Soit tu remplaces les 1,5 par 2 et là tu va multiplier un entier par un entier ce qui donne un entier, soit tu déclare ton résultat en nombre avec virgule (float) :

NWScript :
int nDuration = GetCasterLevel(OBJECT_SELF)* 2;
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


NWScript :
float nDuration = GetCasterLevel(OBJECT_SELF)* 0,5;
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.

_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Athanagorn
Acolyte
Inscrit le: 12 Déc 2004
Messages: 38
Répondre en citant
Posté le : 18/02/2005 10:15:13 Sujet du message :

Son problème, comme d'autres l'on déjà signalés, c'est surtout qu'il utilise des ","[/color] au lieu des [color=#FF0000]"." pour les notations des décimaux. Même si en français, on met des virgules, il faut penser que NWScript n'est pas du français... et que le séparateur décimal est le point(.).

La virgule, elle , est utilisée pour toute autre chose: séparer les arguments d'une fonction. C'est ce qui explique le message d'erreur rencontré.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Siléphrael
Grand Chevalier
Inscrit le: 13 Aoû 2004
Messages: 122
Localisation: Toulouse
Répondre en citant
Posté le : 19/02/2005 11:48:36 Sujet du message :

j'ai tout testé ce que vous avez dit, mais rien ne marche, il refuse de compiler le script, jsui dégouté Sad

Je vous remarcie quand mm ^^ je vais voir si qq1 d'autre pourrai m'aider, mais des forums regorgeants du Dieu scripteurs, y'en a pas 5 000 ... ^^
_________________
* Tenant sous sa lame le jeune prince * Je vais compter jusqu'a trois et tu mourra .... * lui tranche la gorge * mince, j'ai oublié de compter ...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
alokhan
Grand Chevalier
Inscrit le: 16 Mai 2004
Messages: 102
Localisation: Belgique, Nivelles
Répondre en citant
Posté le : 19/02/2005 13:30:14 Sujet du message :

Salut à tous,

Pour les virgule et point je suis d'acord n'avez vous jamais employer Autocad ??Smile et si on remplace par 2 le script compile attention il faut remplacer partout par 2 !!!

Le script avec 2 à la place de 1.5 :

NWScript :
#include "x0_i0_spells"



void RunHandImpact(int nSecondsRemaining, object oTarget)
{
    if (GetIsDead(oTarget) == FALSE)
    {
      if (nSecondsRemaining % 6 == 0)
      {
            int nDam = MaximizeOrEmpower(6,2,GetMetaMagicFeat(), 12);
            effect eDam = EffectDamage(nDam, DAMAGE_TYPE_BLUDGEONING);
            effect eVis = EffectVisualEffect(VFX_IMP_ACID_L);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
      }
      --nSecondsRemaining;
      if (nSecondsRemaining > 0)
      {
          DelayCommand(1.0f,RunHandImpact(nSecondsRemaining,oTarget));
      }
  }
  // Note: if the target is dead during one of these second-long heartbeats,
  // the DelayCommand doesn't get run again, and the whole package goes away.
  // Do NOT attempt to put more than two parameters on the delay command. They
  // may all end up on the stack, and that's all bad. 60 x 2 = 120.
}

void main()
{

    //Declare major variables
    object oTarget = GetSpellTargetObject();
    int nDuration = GetCasterLevel(OBJECT_SELF)* 2;
    int nMetaMagic = GetMetaMagicFeat();


    //Check for metamagic extend
    if (nMetaMagic == METAMAGIC_EXTEND) //Duration is +100%
    {
        nDuration = nDuration * 2;
    }

    if(!GetIsReactionTypeFriendly(oTarget))
    {
        //Fire cast spell at event for the specified target
        SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_BIGBYS_CRUSHING_HAND, TRUE));

        //SR
        if(!MyResistSpell(OBJECT_SELF, oTarget))
        {
//edited part.
//if(!MySavingThrow(SAVING_THR OW_REFLEX, oTarget, GetSpellSaveDC(), SAVING_THROW_TYPE_SPELL, OBJECT_SELF, GetRandomDelay()))
{


            int nCasterModifier = GetCasterAbilityModifier(OBJECT_SELF);
            int nCasterRoll = d20(1)
                + GetCasterLevel(OBJECT_SELF)* 2;
            int nTargetRoll = GetAC(oTarget);

            // * grapple HIT succesful,
            if (nCasterRoll >= nTargetRoll)
            {
                // * now must make a GRAPPLE check
                // * hold target for duration of spell

                nCasterRoll = d20(1) + nCasterModifier
                    + GetCasterLevel(OBJECT_SELF);

                nTargetRoll = /*NEED GetBaseAttackBonus*/
                    GetBaseAttackBonus(oTarget) + GetSizeModifier(oTarget)
                    + GetAbilityModifier(ABILITY_STRENGTH);

                if (nCasterRoll >= nTargetRoll)
                {
                    effect eKnockdown = EffectParalyze();
                    effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
                    effect eHand = EffectVisualEffect(VFX_DUR_BIGBYS_CRUSHING_HAND);
                    effect eLink = EffectLinkEffects(eKnockdown, eDur);
                    eLink = EffectLinkEffects(eLink, eHand);

                    ApplyEffectToObject(DURATION_TYPE_TEMPORARY,
                                        eLink, oTarget,
                                        RoundsToSeconds(nDuration));



                    // * now do damage each round
                    nDuration = nDuration * 6;
                    if (GetIsImmune(oTarget, EFFECT_TYPE_PARALYZE) == FALSE)
                    {
                        RunHandImpact(nDuration, oTarget);
                    }

                }
            }
}//
        }
    }
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.

_________________
Alokhan
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 19/02/2005 13:40:06 Sujet du message :

Voilà, ton script compile :

NWScript :
//Confused////////////////////////// ///////////////////
//:: Bigby's Crushing Hand
//:: [x0_s0_bigby5]
//:: Copyright (c) 2002 Bioware Corp.
//Confused////////////////////////// //////////////////
/*
Similar to Bigby's Grasping Hand.
If Grapple succesful then will hold the opponent
and do 2d6 + 12 points of damage EACH round
for 1 round/level

*/

//Confused////////////////////////// //////////////////
//:: Created By: Brent
//:: Created On: September 7, 2002
//Confused////////////////////////// //////////////////
//:: VFX Pass By:
#include "x0_i0_spells"



void RunHandImpact(int nSecondsRemaining, object oTarget)
{
    if (GetIsDead(oTarget) == FALSE)
    {
      if (nSecondsRemaining % 6 == 0)
      {
            int nDam = MaximizeOrEmpower(6,2,GetMetaMagicFeat(), 12);
            effect eDam = EffectDamage(nDam, DAMAGE_TYPE_BLUDGEONING);
            effect eVis = EffectVisualEffect(VFX_IMP_ACID_L);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
      }
      --nSecondsRemaining;
      if (nSecondsRemaining > 0)
      {
          DelayCommand(1.0f,RunHandImpact(nSecondsRemaining,oTarget));
      }
  }
  // Note: if the target is dead during one of these second-long heartbeats,
  // the DelayCommand doesn't get run again, and the whole package goes away.
  // Do NOT attempt to put more than two parameters on the delay command. They
  // may all end up on the stack, and that's all bad. 60 x 2 = 120.
}

void main()
{

    //Declare major variables
    object oTarget = GetSpellTargetObject();
    float nDuration = GetCasterLevel(OBJECT_SELF)* 1.5;
    int nMetaMagic = GetMetaMagicFeat();


    //Check for metamagic extend
    if (nMetaMagic == METAMAGIC_EXTEND) //Duration is +100%
    {
        nDuration = nDuration * 1.5;
    }

    if(!GetIsReactionTypeFriendly(oTarget))
    {
        //Fire cast spell at event for the specified target
        SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_BIGBYS_CRUSHING_HAND, TRUE));

        //SR
        if(!MyResistSpell(OBJECT_SELF, oTarget))
        {
//edited part.
//if(!MySavingThrow(SAVING_THR OW_REFLEX, oTarget, GetSpellSaveDC(), SAVING_THROW_TYPE_SPELL, OBJECT_SELF, GetRandomDelay()))
{


            int nCasterModifier = GetCasterAbilityModifier(OBJECT_SELF);
            float nCasterRoll = d20(1)
                + GetCasterLevel(OBJECT_SELF)* 1.5;
            int nTargetRoll = GetAC(oTarget);

            // * grapple HIT succesful,
            if (nCasterRoll >= IntToFloat(nTargetRoll))
            {
                // * now must make a GRAPPLE check
                // * hold target for duration of spell

                nCasterRoll = d20(1) + IntToFloat(nCasterModifier)
                    + GetCasterLevel(OBJECT_SELF);

                nTargetRoll = /*NEED GetBaseAttackBonus*/
                    GetBaseAttackBonus(oTarget) + GetSizeModifier(oTarget)
                    + GetAbilityModifier(ABILITY_STRENGTH);

                if (nCasterRoll >= IntToFloat(nTargetRoll))
                {
                    effect eKnockdown = EffectParalyze();
                    effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
                    effect eHand = EffectVisualEffect(VFX_DUR_BIGBYS_CRUSHING_HAND);
                    effect eLink = EffectLinkEffects(eKnockdown, eDur);
                    eLink = EffectLinkEffects(eLink, eHand);

                    ApplyEffectToObject(DURATION_TYPE_TEMPORARY,
                                        eLink, oTarget,
                                        RoundsToSeconds(FloatToInt(nDuration)));



                    // * now do damage each round
                    nDuration = nDuration * 6;
                    if (GetIsImmune(oTarget, EFFECT_TYPE_PARALYZE) == FALSE)
                    {
                        RunHandImpact(FloatToInt(nDuration), oTarget);
                    }

                }
            }
}//
        }
    }
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


C'est bien un problème d'entier et de décimal :
1 - si tu multiplie un entier par un nombre décimal ça donne un décimal (float), il faut donc déclarer le résultat comme décimal.
2 - si tu compare un décimal avec un entier ça marche pas, il faut convertir tes entiers en décimal : IntToFloat()
3 - quand tu utilises ton résultat nDuration comme nombre de round, il faut que ce soit ce soit un entier, il faut donc le reconvertir FloatTiInt()

Voilà comme ça ça passe Cool
_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Siléphrael
Grand Chevalier
Inscrit le: 13 Aoû 2004
Messages: 122
Localisation: Toulouse
Répondre en citant
Posté le : 19/02/2005 19:44:01 Sujet du message :

je crains que vous ne me détestiez ... mais j'aimerai que le jet de reflexe ca soit : reflexe de la cible + bonus de Dex CONTRE 3D8 + 1/2 levels de mago + 1/2 bonus de lanceur de sort ...

Je vais tenter d'appliquer les inttofloat et autres ^^ mais je crains encore me planter lamentablement ^^
_________________
* Tenant sous sa lame le jeune prince * Je vais compter jusqu'a trois et tu mourra .... * lui tranche la gorge * mince, j'ai oublié de compter ...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Montrer les messages depuis :
Page 1 sur 1 ¤


Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 81.23ms