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 20:22:38


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
diki666
Novice
Inscrit le: 24 Aoû 2004
Messages: 5
Répondre en citant
Posté le : 24/08/2004 19:57:51 Sujet du message : Téléporter le Henchman et DestroyObject

Bonjour, j'ai quelques questions sur la réalisation de scripts précis. Comment faire en sorte que :

-Lorsque le joueur active un mécanisme, il se téléporte à un autre endroit de la même zone (ça c'est bon) mais le henchman aussi quand il y en a un.

-Quand le henchman meurt, il est téléporté dans une autre zone et ressuscite avec 1 point de vie.

-Quand on ramasse un objet, les étincelles magiques qui l'entouraient disparaissent.

Merci d'avance Very Happy
_________________
Flip or Try !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
diki666
Novice
Inscrit le: 24 Aoû 2004
Messages: 5
Répondre en citant
Posté le : 25/08/2004 18:50:56 Sujet du message :

Est-ce que personne ne sait comment faire ? Surprised ou plutôt est-ce que tout le monde s'en fout lol Embarassed pourtant j'ai essayé pas mal de trucs mais ça marche pas...
_________________
Flip or Try !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
diki666
Novice
Inscrit le: 24 Aoû 2004
Messages: 5
Répondre en citant
Posté le : 25/08/2004 23:34:40 Sujet du message :

C'est bon pour le 3e script, j'ai trouvé en cherchant dans le forum. Par contre pour téléporter un henchman a sa mort en le ressuscitant et pour le téléporter en même temps que le joueur dans une même zone j'y arrive toujours pas Embarassed ah oui j'ai aussi un autre petit souci : un script qui fasse que quand le joueur essaie d'ouvrir une porte, un garde se tourne vers lui et lui dise quelque chose. J'ai essayé ce script dans le OnFailToOpen de la porte mais ça marche pas :

NWScript :
void main()
{
object oPC = GetLastUsedBy();
object oGarde = GetObjectByTag("TagDuGarde");
AssignCommand(oGarde, SetFacingPoint(GetPosition(oPC)));
AssignCommand(oGarde, SpeakString("Vous ne pouvez pas passer."));
}
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.

_________________
Flip or Try !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Longbow
Grand Sage du Conseil
Inscrit le: 10 Déc 2003
Messages: 638
Localisation: Orléans
Répondre en citant
Posté le : 26/08/2004 01:36:59 Sujet du message :

Hum, hum...

Bon, le HenchMan qui suit... Normalement il ne suit pas automatiquement ??
Sinon... Voici un script qui demande à être vérifier notamment au niveau du test if (GetHenchman(oPC) == oHench)

NWScript :
void main()
{
object oPC = GetLastUsedBy();
object oHench = GetNearestObjectByTag("TagduHench");

AssignCommand (oPC , ActionJumpToObject (GetWaypointByTag("TagduWP")));

if (GetHenchman(oPC) == oHench)
{AssignCommand (oHench , ActionJumpToObject (GetWaypointByTag("TagduWP")));}
}
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.



Citation :
-Quand le henchman meurt, il est téléporté dans une autre zone et ressuscite avec 1 point de vie.
J'ai pensé à une solution de clonage dans le OnDeath.
NWScript :
// A placer ds le OnDead du Hench
void main()
{
// localisation du point de chute du futur Hench
location lLoc = GetLocation(GetWaypointByTag("TagdeDestination"));

// clonage du Hench au point de chute
object oNew = CopyObject(OBJECT_SELF, lLoc);

// resurrection du clone (sinon il meurt lui aussi) et se retrouve avec 1 Pt de vie
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectResurrection(), oNew);
}
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.


Ca fonctionne parfaitement. Mais il me semble pouvoir bidouiller le script de mort officiel des Hench pour qu'ils ressucitent automatiquement...
_________________
Rex illeteratus
Quasi Asinus Coronatus
Jean de Salisbury
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
diki666
Novice
Inscrit le: 24 Aoû 2004
Messages: 5
Répondre en citant
Posté le : 27/08/2004 13:47:40 Sujet du message :

Merci pour tes réponses, avc quelques petites retouches j'ai réussi pour la "résurrection" du hench par contre l'autre ne marche pas, je pense aussi que c'est if (GetHenchman(oPC) == oHench) qui pose problème, je vais essayer de trouver une solution. Au fait le henchman suit seulement quand le joueur est téléporté dans une autre zone, et moi je veux juste les faire traverser un mur, mais le henchman reste du mauvais côté ^^. Sinon est-ce que quelqu'un sait pour le garde qui se tourne vers le joueur quand il arrive pas à ouvrir une porte ?
_________________
Flip or Try !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Longbow
Grand Sage du Conseil
Inscrit le: 10 Déc 2003
Messages: 638
Localisation: Orléans
Répondre en citant
Posté le : 27/08/2004 20:16:34 Sujet du message :

Hum, hum...

Pour le SetFacing, voici un extrait d'une cutscène du Grand Veneur

NWScript :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.
_________________
Rex illeteratus
Quasi Asinus Coronatus
Jean de Salisbury
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
diki666
Novice
Inscrit le: 24 Aoû 2004
Messages: 5
Répondre en citant
Posté le : 27/08/2004 21:21:32 Sujet du message :

C'est bon j'ai trouvé pour téléporter le henchman ! En fait il manquait juste un ClearAllActions ! Voilà ce que ça donne :

NWScript :
void main()
{
object oPC = GetLastUsedBy() ;
object oHench = (GetHenchman(oPC));
AssignCommand(oPC, ActionJumpToObject(GetWaypointByTag("Tag_WP_joueur")));
AssignCommand(oHench, ClearAllActions());
AssignCommand(oHench , ActionJumpToObject (GetWaypointByTag("Tag_WP_hench")));
}

//Merci a Longbow pour son aide.
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.


Au fait ce que je veux faire pour le garde, c'est que quand le joueur essaye d'ouvrir une porte (qui est fermée bien sûr ^^) le garde se tourne vers lui et lui dit qu'il ne peut pas passer.
_________________
Flip or Try !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Longbow
Grand Sage du Conseil
Inscrit le: 10 Déc 2003
Messages: 638
Localisation: Orléans
Répondre en citant
Posté le : 27/08/2004 23:24:30 Sujet du message :

Hum, hum...
Ceci devrait t'aider pour la porte et le gardien.

NWScript :

// A placer dans le OnFailToOpen de la porte
void main()
{
object oDag = GetObjectByTag("Dag");
object oPC = GetClickingObject();
vector vDir = GetPosition(oPC);

    if (GetIsObjectValid(oPC))
    {
    AssignCommand(oDag, ClearAllActions());
    AssignCommand(oDag, SetFacingPoint(vDir));
    AssignCommand(oDag, SpeakString(""));
    DelayCommand(1.0, AssignCommand(oPC, SpeakString("Sans blague...")));
    }
}
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.

_________________
Rex illeteratus
Quasi Asinus Coronatus
Jean de Salisbury
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur 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 43.79ms