La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/11/2024 19:46:03


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
ElMathos
Novice
Inscrit le: 13 Mar 2004
Messages: 15
Répondre en citant
Posté le : 14/05/2004 17:28:09 Sujet du message : Problème script (modification)

Ce serait pour retirer la restriction d
e classe (ici paladin) pour la faire universelle... Merci d'avance. Smile
NWScript :
void main()
{
    object oPC = GetItemActivator();
    int nPalLevel = GetLevelByClass(CLASS_TYPE_PALADIN, oPC);

    // If activator is not a PC, or is not at least a level 5 paladin, do nothing
    if(!GetIsPC(oPC) || (nPalLevel < 5))
    {
        FloatingTextStringOnCreature("Nothing happens", oPC);
        return;
    }

    // Get type of horse PC has chosen
    // 1 = blue roan
    // 2 = red roan
    // 3 = grullo
    // 4 = leopard appaloosa
    int nHorseType = GetLocalInt(oPC, "HorseType");

    // If PC hasn't chosen a horse type; default to blue roan
    if(nHorseType < 1 || nHorseType > 4) nHorseType = 1;

    // Get level of horse for PC
    int nHorseLevel;
    if(nPalLevel > 18)
    {
        nHorseLevel = 6;
    }
    else if(nPalLevel > 16)
    {
        nHorseLevel = 5;
    }
    else if(nPalLevel > 14)
    {
        nHorseLevel = 4;
    }
    else if(nPalLevel > 10)
    {
        nHorseLevel = 3;
    }
    else if(nPalLevel > 7)
    {
        nHorseLevel = 2;
    }
    else
    {
        nHorseLevel = 1;
    }
    string sHorseResRef = "paladinhorse" + IntToString(nHorseType) + "0" + IntToString(nHorseLevel);

    // Summon the horse
    effect eSummon = EffectSummonCreature(sHorseResRef, VFX_FNF_SUMMON_MONSTER_3);
    ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSummon, oPC, 86400.0);

    // Set up the horse
    DelayCommand(3.0, ExecuteScript("horsesetup", oPC));
}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé 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 : 14/05/2004 17:36:20 Sujet du message :

NWScript :
void main()
{
    object oPC = GetItemActivator();
    int nLevel = GetLevelByPosition(1, oPC);

    // If activator is not a PC, or is not at least a level 5 paladin, do nothing
    if(!GetIsPC(oPC))
    {
        FloatingTextStringOnCreature("Nothing happens", oPC);
        return;
    }

    // Get type of horse PC has chosen
    // 1 = blue roan
    // 2 = red roan
    // 3 = grullo
    // 4 = leopard appaloosa
    int nHorseType = GetLocalInt(oPC, "HorseType");

    // If PC hasn't chosen a horse type; default to blue roan
    if(nHorseType < 1 || nHorseType > 4) nHorseType = 1;

    // Get level of horse for PC
    int nHorseLevel;
    if(nLevel > 18)
    {
        nHorseLevel = 6;
    }
    else if(nLevel > 16)
    {
        nHorseLevel = 5;
    }
    else if(nLevel > 14)
    {
        nHorseLevel = 4;
    }
    else if(nLevel > 10)
    {
        nHorseLevel = 3;
    }
    else if(nLevel > 7)
    {
        nHorseLevel = 2;
    }
    else
    {
        nHorseLevel = 1;
    }
    string sHorseResRef = "paladinhorse" + IntToString(nHorseType) + "0" + IntToString(nHorseLevel);

    // Summon the horse
    effect eSummon = EffectSummonCreature(sHorseResRef, VFX_FNF_SUMMON_MONSTER_3);
    ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSummon, oPC, 86400.0);

    // Set up the horse
    DelayCommand(3.0, ExecuteScript("horsesetup", oPC));
}
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.


J'ai été vite, j'espere ne pas avoir fais d'erreur... -,-" Embarassed
_________________
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
 
maremick
Acolyte
Inscrit le: 18 Mai 2004
Messages: 25
Répondre en citant
Posté le : 25/05/2004 13:34:31 Sujet du message :

Pour le level du perso, il vaut mieux prendre le nombre de dés de vie.
Et à la place des elseif, c'est déjà plus joli de mettre un switch/case, mais y a encore mieux.

NWScript :

void main()
{
    object oPC = GetItemActivator();
    int nLevel = GetHitDice(oPC);

    // If activator is not a PC do nothing
    if(!GetIsPC(oPC) | nLevel<5) // Faut pas oublier qu'il faut etre level 5 minimum
    {
        FloatingTextStringOnCreature("Nothing happens", oPC);
        return;
    }

    // Get type of horse PC has chosen
    // 1 = blue roan
    // 2 = red roan
    // 3 = grullo
    // 4 = leopard appaloosa
    int nHorseType = GetLocalInt(oPC, "HorseType");

    // If PC hasn't chosen a horse type; default to blue roan
    if(nHorseType < 1 || nHorseType > 4) nHorseType = 1;

    // Get level of horse for PC
    int nHorseLevel;
    if(nLevel < 19)
    nHorseLevel = (nLevel-2)/3; // un calcul assez simple
    else // (15-2)/3 = 13/3 = 4 je retiens 1 mais on se sert pas de la retenue.
    nHorseLevel = 6; // et comme les level 5 n'arrivent pas jusqu'ici dans le prog, le reste est &gt; 18

    // seul inconvenient, un level 14 aura un cheval 4 au lieu de 3


    string sHorseResRef = "paladinhorse" + IntToString(nHorseType) + "0" + IntToString(nHorseLevel);

    // Summon the horse
    effect eSummon = EffectSummonCreature(sHorseResRef, VFX_FNF_SUMMON_MONSTER_3);
    ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSummon, oPC, 86400.0);

    // Set up the horse
    DelayCommand(3.0, ExecuteScript("horsesetup", oPC));
}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
ElMathos
Novice
Inscrit le: 13 Mar 2004
Messages: 15
Répondre en citant
Posté le : 06/06/2004 16:12:16 Sujet du message :

Merci pour vous 2 pour vos réponses, j'ai enfin eu ce que je voulais Very Happy

PS : Dsl pour la réponse tardive Confused
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé 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 47.44ms