Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Faire parler une porte (un objet)
Faire parler une porte (un objet)
Par Morethil le 26/10/2002 à 1:10:51 (#2409994)
Le probleme c'est qu'en test l'icone de dialogue n'apparait pas sur la porte. Elle est piégé, et verouillé...
... Je viens de penser que c'est peut etre un pbm de faction (hostile par defaut pour les objets) mais si vous pensez que le pbm viens d'autre chose, dites le moi.
Edit : Je viens de reverifier, ce n'est pas un pbm de faction. J'avais mis la porte sur la meme faction que le personnage de derrière.
Par eMRaistlin le 26/10/2002 à 1:32:18 (#2410091)
Par Morethil le 26/10/2002 à 1:59:10 (#2410189)
Bon, je vois ce qu'il me reste a faire :rolleyes:
par contre il n'y a pas d'emplacement "OnUsed". Enfin bon, vu que c'est un scripte, je chercherait dans la liste des scriptes et je trouverait bien où le mettre :)
Par eMRaistlin le 26/10/2002 à 2:11:03 (#2410227)
Sinon, tu met dans le OnFailToOpen le script suivant :
void main()
{
object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC);
object oPrisonnier = GetObjectByTag("TAG_DU_personnage derrière une porte opaque ");
AssignCommand(oPrisonnier,(BeginConversation("nom_de_la_conversation",oPC));
}
Ca devrait fonctionner de la boulette ^^
Par Morethil le 26/10/2002 à 16:06:03 (#2412560)
Le message est "unknown state in compiler"
:doute:
Par coolstar le 26/10/2002 à 16:24:06 (#2412660)
Par Morethil le 26/10/2002 à 18:21:22 (#2413158)
Provient du message de eMRaistlin
Sinon, tu met dans le OnFailToOpen le script suivant :
void main()
{
object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC);
object oPrisonnier = GetObjectByTag("TAG_DU_personnage
derrière une porte opaque ");
AssignCommand(oPrisonnier,(BeginConversation
("nom_de_la_conversation",oPC));
}
Ca devrait fonctionner de la boulette ^^
J'ai trouvé ça dans la liste des scriptes :
void main()
{
object oPC = GetLastUsedBy();
if (GetIsPC(oPC))
{
ActionStartConversation(oPC, "NomDeLaConversation",TRUE);
}
}
Mais c'est a placer dans le OnUsed (d'un item)
Donc, la question : Est ce que ce scripte là (en dessous) fonctionnerai dans le OnFailToOpen ?
void main()
{
// J'ai changé le object oPC = GetLastUsedBy();
object oPC = GetNearestCreature
if (GetIsPC(oPC))
{
ActionStartConversation(oPC, "NomDeLaConversation",TRUE);
}
}
Bon, je vais essayer en tous cas.
Par Morethil le 26/10/2002 à 19:36:42 (#2413577)
compilation réussie
Ca donne ça, on va voir si ca marche :
void main()
{
object oPC = GetNearestCreature
(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC);
if (GetIsPC(oPC))
{
ActionStartConversation
(oPC, "nom_du_fichier_de_conversation",TRUE);
}
}
Et ca marche.
Merci a ceux qui m'ont aidé :)
PS : N'heistez pas a améliorer si besoin, je suis pas sur de l'aspect indispensable du "if (GetIsPC(oPC))"
Par coolstar le 26/10/2002 à 20:01:23 (#2413701)
JOL Archives 1.0.1
@ JOL / JeuxOnLine