Aelor

Forum officiel du module NeverWinter Nights et role play Aelor.
 
AccueilAccueil  PortailPortail  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  

Partagez
 

 Création du dopple supérieur

Aller en bas 
AuteurMessage
Miltiades
Miltiades, paladin de Tyr
Miltiades

Nombre de messages : 551
Localisation : En train de chatier le mal
Date d'inscription : 16/12/2005

Création du dopple supérieur Empty
MessageSujet: Création du dopple supérieur   Création du dopple supérieur EmptyMar 10 Jan - 22:08

Pourrais-tu créer le dopple qui clone parfaitement le PJ le plus proche stp?

Il pourra servir pour des rp futurs intéressants

merci

_________________
Création du dopple supérieur Selene7gh
Revenir en haut Aller en bas
https://aelor.actifforum.com/index.forum
Ba'elzaden
Maitre d'Aelor
Ba'elzaden

Nombre de messages : 909
Date d'inscription : 15/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyMar 10 Jan - 22:52

Istanir avait un script comme ça mais il marche que une fois sur deux... (soit le dopple restait sans se changer soit le clone était aps hostile enfin ça marchaitr que moyennement)

_________________
"Tout ce qui ne nous tue pas nous rend plus fort"

"On obtient rien sans souffrance"
Revenir en haut Aller en bas
Gimli Oakenshield
L'ignorant en Hardware
Gimli Oakenshield

Nombre de messages : 783
Localisation : Près de mon ordi !
Date d'inscription : 15/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyJeu 12 Jan - 17:16

J'vais voir ce que je peux faire ...

_________________
Nouveau PC Super trop bien d'la balle !
Création du dopple supérieur BoutonRR1
Création du dopple supérieur Gimli8fo
Revenir en haut Aller en bas
Gimli Oakenshield
L'ignorant en Hardware
Gimli Oakenshield

Nombre de messages : 783
Localisation : Près de mon ordi !
Date d'inscription : 15/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyJeu 12 Jan - 17:35

Bon, j'ai peut-être trouvé quelquechose qui peux t'interresser mais il me faut des précisions : le dopple arrive dans quelles condition et faut-il que s'il apperçoit un nouveau pj il change a nouveau de forme ?

_________________
Nouveau PC Super trop bien d'la balle !
Création du dopple supérieur BoutonRR1
Création du dopple supérieur Gimli8fo
Revenir en haut Aller en bas
Miltiades
Miltiades, paladin de Tyr
Miltiades

Nombre de messages : 551
Localisation : En train de chatier le mal
Date d'inscription : 16/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyJeu 12 Jan - 21:08

disons qu'il peut apparaître lors d'une rencontre ou si j'en place un avt que les pj arrivent.

Sinon il prend la forme du premier pj rencontré et n'en change plus.

_________________
Création du dopple supérieur Selene7gh
Revenir en haut Aller en bas
https://aelor.actifforum.com/index.forum
Gimli Oakenshield
L'ignorant en Hardware
Gimli Oakenshield

Nombre de messages : 783
Localisation : Près de mon ordi !
Date d'inscription : 15/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyJeu 12 Jan - 22:45

C'est exactement ça : doppel

_________________
Nouveau PC Super trop bien d'la balle !
Création du dopple supérieur BoutonRR1
Création du dopple supérieur Gimli8fo


Dernière édition par le Mer 25 Jan - 16:35, édité 1 fois
Revenir en haut Aller en bas
Gimli Oakenshield
L'ignorant en Hardware
Gimli Oakenshield

Nombre de messages : 783
Localisation : Près de mon ordi !
Date d'inscription : 15/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyDim 15 Jan - 15:18

Désolé, J'avais oublié une condition et deux ou trois truc dans le .erf précédent .. Voilma maintenant, cela se limite a un script : a mettre dans le OnPerception ...

Code:
////////////////////////////////////////////////////////////
// Here you can assign actions/behavior to the Doppelganger
////////////////////////////////////////////////////////////
void CommandDoppelganger(object oDoppelganger, object oPc)
{
    AssignCommand(oDoppelganger, ActionMoveToObject(oPc, TRUE, 7.0f));
    AssignCommand(oDoppelganger, ActionDoCommand(PlayVoiceChat(VOICE_CHAT_TAUNT, OBJECT_SELF)));
    AssignCommand(oDoppelganger, ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_TAUNT)));
    AssignCommand(oDoppelganger, ActionDoCommand(ActionAttack(oPc, FALSE)));
}

////////////////////////////////////////////////////////////
// The Main script that launches OnEnter
////////////////////////////////////////////////////////////
void main()
{
    object oPC = GetLastPerceived();
    string sName = GetName(oPC);

        if(GetIsPC(oPC) && GetLastPerceptionSeen())
            {
            object oSlot = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
            string sRes = GetResRef(oSlot);
            location lNest = GetLocation(OBJECT_SELF);
            DestroyObject(OBJECT_SELF);
            CopyObject(oPC, lNest, OBJECT_INVALID, "doppelganger_2"); //modified the tag!
            object oDoppelganger = GetNearestObjectByTag("doppelganger_2");
            ChangeToStandardFaction(oDoppelganger, STANDARD_FACTION_HOSTILE);
            object oItem = GetFirstItemInInventory(oDoppelganger);
            while (GetIsObjectValid(oItem) == TRUE)
                {
                SetDroppableFlag(oItem,FALSE);
                oItem = GetNextItemInInventory(oDoppelganger);
                }
            int nHP = GetMaxHitPoints(oDoppelganger);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(nHP), oDoppelganger);
            CommandDoppelganger(oDoppelganger, oPC);
            oSlot = GetItemInSlot(INVENTORY_SLOT_ARMS, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_ARROWS, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BELT, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BOLTS, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BOOTS, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BULLETS, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CARMOUR, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CHEST, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CLOAK, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_HEAD, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_LEFTRING, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_NECK, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            int nGold = GetGold(oDoppelganger);
            TakeGoldFromCreature(nGold-150, oDoppelganger, TRUE);


    }
}

_________________
Nouveau PC Super trop bien d'la balle !
Création du dopple supérieur BoutonRR1
Création du dopple supérieur Gimli8fo
Revenir en haut Aller en bas
Gimli Oakenshield
L'ignorant en Hardware
Gimli Oakenshield

Nombre de messages : 783
Localisation : Près de mon ordi !
Date d'inscription : 15/12/2005

Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur EmptyMer 25 Jan - 16:37

Voila le nouveau script qui fait en sorte que le doppel ne copie pleins de fois :

Code:
////////////////////////////////////////////////////////////
// Here you can assign actions/behavior to the Doppelganger
////////////////////////////////////////////////////////////
void CommandDoppelganger(object oDoppelganger, object oPc)
{
    AssignCommand(oDoppelganger, ActionMoveToObject(oPc, TRUE, 7.0f));
    AssignCommand(oDoppelganger, ActionDoCommand(PlayVoiceChat(VOICE_CHAT_TAUNT, OBJECT_SELF)));
    AssignCommand(oDoppelganger, ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_TAUNT)));
    AssignCommand(oDoppelganger, ActionDoCommand(ActionAttack(oPc, FALSE)));
}

////////////////////////////////////////////////////////////
// The Main script that launches OnEnter
////////////////////////////////////////////////////////////
void main()
{
    object oPC = GetLastPerceived();
    string sName = GetName(oPC);
    int iCopy = GetLocalInt(OBJECT_SELF,"copy");

        if(GetIsPC(oPC) && GetLastPerceptionSeen() && iCopy == FALSE)
            {
            SetLocalInt(OBJECT_SELF,"copy",TRUE);
            object oSlot = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
            string sRes = GetResRef(oSlot);
            location lNest = GetLocation(OBJECT_SELF);
            DestroyObject(OBJECT_SELF);
            CopyObject(oPC, lNest, OBJECT_INVALID, "doppelganger_2"); //modified the tag!
            object oDoppelganger = GetNearestObjectByTag("doppelganger_2");
            ChangeToStandardFaction(oDoppelganger, STANDARD_FACTION_HOSTILE);
            object oItem = GetFirstItemInInventory(oDoppelganger);
            while (GetIsObjectValid(oItem) == TRUE)
                {
                SetDroppableFlag(oItem,FALSE);
                oItem = GetNextItemInInventory(oDoppelganger);
                }
            int nHP = GetMaxHitPoints(oDoppelganger);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(nHP), oDoppelganger);
            CommandDoppelganger(oDoppelganger, oPC);
            oSlot = GetItemInSlot(INVENTORY_SLOT_ARMS, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_ARROWS, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BELT, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BOLTS, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BOOTS, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_BULLETS, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CARMOUR, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CHEST, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CLOAK, oDoppelganger);    SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_HEAD, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_LEFTRING, oDoppelganger);  SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_NECK, oDoppelganger);      SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            oSlot = GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oDoppelganger); SetDroppableFlag(oSlot,FALSE);
            int nGold = GetGold(oDoppelganger);
            TakeGoldFromCreature(nGold-150, oDoppelganger, TRUE);


    }
}

_________________
Nouveau PC Super trop bien d'la balle !
Création du dopple supérieur BoutonRR1
Création du dopple supérieur Gimli8fo
Revenir en haut Aller en bas
Contenu sponsorisé




Création du dopple supérieur Empty
MessageSujet: Re: Création du dopple supérieur   Création du dopple supérieur Empty

Revenir en haut Aller en bas
 
Création du dopple supérieur
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [UPTOBOX] Cheval de Guerre [DVDRiP]

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Aelor :: Archives :: Editeur :: Script-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser