probleme avec les commercant

Répondre
Partager Rechercher
Bon me revoila avec mes bug delirant et incomprehensible.
Je n'arrive plus a creer une boutique c hallucinant.
Le resultats est que la boutique ne s'ouvre pas et en plus que mon script est erroné *se demande si c pas plutot le jeu lol*

Voila mon script: (action consequente dans mon dialogue)
-------------------------------------------
#include "nw_i0_plot"
void main()
{
object oStore = GetNearestObjectByTag("NW_STOREBAR01");
if (GetObjectType(oStore) == OBJECT_TYPE_STORE)
{
gplotAppraiseOpenStore(oStore, GetPCSpeaker());
}
else
{
ActionSpeakStringByStrRef(53090, TALKVOLUME_TALK);
}
}
-----------------------------------------------
resultat: Erreur. 'openstore004' n’est pas compilé.
openstore004.nss(1): ERREUR : INVALID DECLARATION TYPE

Et ceci pour toutes mes shops que je crée
Et en fait je ne trouve plus ds mes script "nw_i0_plot" c ptet ca mon prob???

Bon j'ai meme essayer de creer un nouveau module meme probleme.

J'ai desinstallé et reinstallé meme probleme.

Faut-il que j'envisage le reformatage?

Petit detail avant que je reinstalle le jeu ca marchait tres bien et d'ailleur tous mes vendeurs venant de la premiere installation fonctionne mais maintenant qd j'en creer il me montre pas la shop.

J'espere que quelqu'un pourra m'aider vite (RAT ptet ), mais d'autre aussi ;-) je faisait reference a mon precedent post.

Merci
A priori, le problème est que la fonction gplotAppraiseOpenStore n'est pas déclarée dans ta version de l'include nw_i0_plot. C'est normal si tu n'as pas l'add-on SoU ou si tu fais un module pouvant être joué sans l'add-on.

La solution la plus simple c'est de remplacer la ligne
Code PHP:

gplotAppraiseOpenStore(oStoreGetPCSpeaker()); 

par
Code PHP:

OpenStore(oStoreGetPCSpeaker()); 

Mais cela ouvrira l'inventaire de la boutique sans utiliser le système d'estimation utilisé dans SoU.

Si tu as SoU et que ton module utilise ses fonctionnalités, vérifie que tu n'utilises pas d'ensemble de scripts se servant d'un nw_i0_plot "pré-SoU" modifié.
Bon je vais essayer cela ce midi, mais par contre en effet ce qui est etrange c'est de ne pas trouver ce script dans ma liste de script.

D'autant plus que donc comme tu le precise je te confirme que j'utilise SOU et que mon module tourne en SOU mais je crois que tu as raison quand au fait que c'est de puis que j'ai installé SOU et que c'est la premiere fois que je place des marchants SOU.

Par contre est-ce que quelqu'un peux me copier ce fameux script qui me manque?

nw_i0_plot

Cela serait vraiment cool. Merci encore de votre aide.
Bon j'essaie ce midi et j'ai toujours un prob la:

Voila mon script modifier comme indiquer precedement:

void main()
{
object oStore = GetNearestObjectByTag("NW_STOREBAR01");
if (GetObjectType(oStore) == OBJECT_TYPE_STORE)
{
OpenStore(oStore, GetPCSpeaker());
}
else
{
ActionSpeakStringByStrRef(53090, TALKVOLUME_TALK);
}
}

resultat: Erreur. 'openstore001' n’est pas compilé.
openstore001.nss(1): ERREUR : INVALID DECLARATION TYPE

Franchement je comprend plus rien la :-(
Désolé de ne pas avoir répondu assez vite

mais question comme ça ou places tu ce script???

si j'ai bien compris tu le mets dans un dialogue. Mais dans quel onglet exactement?

C'est peut être une question con , mais je sais que cela m'est déjà arrivé sans faire gaffe ,de placer un script void main () dans l'onglet "condition avant utilisation" au lieu de "Action par conséquence" lol je me souviens plus trop comment les onglets s'appellent réellement, donc désolé si je me trompe.

Car dans le premier, il faut obligatoirement retourner un int, comme c'est une condition et qu'il demande TRUE OU FALSE en réponse. et l'autre, ou il faut mettre un void main().

En attendant, je vais relire ton code pour voir.
Unhappy
Ben c'est cela mon problème je le place dans action par consequence.

De plus je le fabrique meme avec le chapeau qui fais tout tout seul, et ca marche pas alors la c grave :-(

Le pire j'explique reelement ma demarche:
- Je creer un PNJ standart par exemple commercant.
- Click droit dessus -> Creer une boutique.

Bon bref je fais vraiment le truc banal que j'ai toujours fais. Eh ben non mon dialogue commence et qd il doit ouvrir la boutique cela s'ouvre pas


Moi qui voulais reouvrir mon module hier lol a cause de ca je l'ouvre pas mdrrrrr.

Je pense sincerement que c'est un prob avec le script: nw_i0_plot car je ne le trouve pas du tout dans ma liste de script.
si c'est cela, faudra que tu le récupères à ce moment là.

Mais ce qui me gène c'est s'il fait la même erreur même en utilisant OpenStore qui lui ne demande pas obligatoirement d'include.

et qu'il met l'erreur à la ligne 1.

Alors il existe un debugueur normalement maintenant, tu devrais l'essayer.

Sinon ce que je fais quand ça m'arrive, je fous tout en commentaire excepté juste le void main() {}, je compile. Si c bon, je continue en retirant une autre ligne en commentaire.
C'est en gros un debug manuel lol.

Non sérieusement, je lis ton code, et comme ça, je ne vois pas d'erreur donc c'est un peu space.

En rentrant chez moi, après le taf, ce soir vite fait, je regarderai si chez moi ça se compile.

voilou
Citation :
Provient du message de Lady Lysline
Bon j'essaie ce midi et j'ai toujours un prob la:

Voila mon script modifier comme indiquer precedement:
Code PHP:

void main()
{
    
object oStore GetNearestObjectByTag("NW_STOREBAR01");
    if (
GetObjectType(oStore) == OBJECT_TYPE_STORE)
    {
        
OpenStore(oStoreGetPCSpeaker());
    }
    else
    {
        
ActionSpeakStringByStrRef(53090TALKVOLUME_TALK);
    }

resultat: Erreur. 'openstore001' n’est pas compilé.
openstore001.nss(1): ERREUR : INVALID DECLARATION TYPE

Franchement je comprend plus rien la :-(
Ce script ne compile pas chez toi même dans un module vide ? Vérifie que tu n'aies pas de fichier .ncs ou .nss dans ton dossier \NWN\Override.
Le script nw_i0_plot est une ressource de base de NWN, donc il n'apparait pas forcément dans la liste des scripts spécifiques à ton module. Par contre, s'il n'apparait pas non plus dans la liste de touts les scripts du jeu, ça devient vraiment inquiétant

De toutes façons, le problème ne peut pas venir de l'absence d'un quelconque script standard de NWN dans ton module, pas plus que du répertoire override_bak. Fais voir ce que te dis le compilateur à tout hasard, mais si tu veux une solution efficace le mieux serait de réinstaller je pense.
Ba le problème c qu'elle a réinstallé, et idem même souci. et c'est pas un problème avec son module comme même en créant un module de base c'est idem. Et le pire c'est que cela le fait en fait sur tous ses scripts.

Donc c'est quand même très space, je trouve
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés