poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 9/05/2009 12:41 Sujet du message:
Bon je vien de test tes scripts et je croie que je me suis fait mal comprendre. Le but de la quête donnée par le NPC est de tuer 10 mobs et non d'avoir 10 poulets dans l'inventaire... Je me suis rendu compte de ça en lisant atentivement tes scripts.
Kylban
Inscrit le: 04 Oct 2008
Messages: 73
Posté le: 9/05/2009 15:14 Sujet du message:
Elle sert à proposer de rendre les poulets uniquement si tu les as.
Kylban
Inscrit le: 04 Oct 2008
Messages: 73
Posté le: 9/05/2009 15:16 Sujet du message:
Ha ouai en effet, je dois avoir fais un mixe avec une autre demande.
Bon la première solution, la plus simple, c'est de faire dropper un objet par les lapin, et le PC prouve les meurtres avec les objets.
Sinon bha je modifie les scripts et là ça va devenir beaucoup plus simple, puisqu'il y aura plus à gérer l'inventaire. Par contre je le ferai pas variable local donc ça sera utilisable que sur un module solo.
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 9/05/2009 16:57 Sujet du message:
Ok merci, de toute façon c'est pour test l'éditeur, mais il faut un debut à tout !
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 11/05/2009 17:30 Sujet du message:
Voila j'ai fait comme tu m'a dit : faire drop un item par les lapins et bon, sa marche...
Mais j'aimerais bien voir comment tu écrirais un script pour mon autre
demande (tuer 10 lapins, ect) cela me servirais pour avancer de mon coter et pouvoir esseiller de scriter, ne seraisse qu'un peut .
Et si tu conner un lien vers un topic ou un tuto de création de quête cela me serais égalment bénéfique.
Encor merci pour ton aide !
Waaagh
Inscrit le: 30 Sep 2006
Messages: 83
Posté le: 11/05/2009 17:59 Sujet du message:
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 11/05/2009 18:47 Sujet du message:
Ok merci. Je vais regarder sa !
Kylban
Inscrit le: 04 Oct 2008
Messages: 73
Posté le: 11/05/2009 19:32 Sujet du message:
Script de mort des lapins crétins:
Code: |
void main()
{
object oPC=GetLastKiller();
int iNbrMort=GetLocalInt(oPC, "iNbrMort");
SetLocalInt(oPC, "iNbrMort", iNbrMort + 1);
}
|
Premier script: condition de la phrase unique "Merci de m'avoir aidé"
Code: |
int StartingConditional()
{
object oPC=GetPCSpeaker();
if (GetLocalInt(oPC, "iPouletValid") == TRUE)
return TRUE;
return FALSE;
}
|
Deuxième script: Condition de la réponse "J'ai vos poulets"
Code: |
int StartingConditional(string sObjetTag, int nStackObjet)
{
object oPC=GetPCSpeaker();
int iNbrMort=GetLocalInt(oPC, "iNbrMort");
if (iNbrMort >= 10)
return TRUE;
return FALSE;
}
|
Troisième script: action conséquente de "J'ai vos poulets" (script de réocmpenses)
Code: |
void main(int nGold, int nXP, string sObjetTag, int nStackObjet)
{
object oPC=GetPCSpeaker();
//Récompenses
GiveGoldToCreature(oPC, nGold );
GiveXPToCreature( oPC, nXP);
SetLocalInt(oPC, "iPouletValid", TRUE);
}
|
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 12/05/2009 11:40 Sujet du message:
Ok merci.
Par contre à quoi dois-je atacher le script de mort des rabbits ? (je pense que sa doit étre au moment où le NPC propose la quête au PC, mais bon je préfaire m'en assurer avant de faire des connerie ).
Par contre je croit que tu dois confondre 2 demande diférentes avec la mienne car j'ais rien à faire avec poulet..... mais bon sa peut toujour me servir !
Merci encor
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 12/05/2009 14:13 Sujet du message:
Voila, donc si j'ais bien comprie je dois formuller mon dialogue ainsi :
RACINE :
-Va nicker 10 rabbits dans le champs d'à cotee ! {je met là l'action ga_journal réglée sur les stats de ma quête}{je le mes aussi cette phrase en lisible une fois par partie}
-C'est bon ? {j'atache ici le 1er script de condition :
Code: |
int StartingConditional()
{
object oPC=GetPCSpeaker();
if (GetLocalInt(oPC, "iPouletValid") == TRUE)
return TRUE;
return FALSE;
} |
-Oui voila j'aie tous raser ! {je met là le segond script de condition (je n'en voit pas l'utilité, alor si tu veut bien m'éclairer sur ce piont...) :
Code: |
int StartingConditional(string sObjetTag, int nStackObjet)
{
object oPC=GetPCSpeaker();
int iNbrMort=GetLocalInt(oPC, "iNbrMort");
if (iNbrMort >= 10)
return TRUE;
return FALSE;
} |
{Et je rajoute le script d'action pour la récompence :
Code: |
void main(int nGold, int nXP, string sObjetTag, int nStackObjet)
{
object oPC=GetPCSpeaker();
//Récompenses
GiveGoldToCreature(oPC, nGold );
GiveXPToCreature( oPC, nXP);
SetLocalInt(oPC, "iPouletValid", TRUE);
} |
{je met ce noeud de conversation lisible qu'une fois par partie}
Et c'est là que le dialogue ce finie.
Voila si ce n'est pas comme cela que je doit tourner la chôse dit le moi... De toute façon un plantage de tool est vite repérable!
merci encor de ton aide!
Kylban
Inscrit le: 04 Oct 2008
Messages: 73
Posté le: 12/05/2009 15:42 Sujet du message:
--RACINE
---- [1er script (conditionnel)] [PNJ] Merci de m'avoir aidé
---- [ga_journal] [PNJ] Va tuer les lapins
---- [PNJ] C'est bon?
-------[2eme script (conditionnel)][PJ] Oui
----------[3eme script (action conséquente)][PNJ] Voila ta récompense
--------------[PJ] Aurevoir
-------[PJ] Non
Le script de mort est à placer dans l'événement "A la mort de la créature" du lapin à tuer.
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Kylban
Inscrit le: 04 Oct 2008
Messages: 73
Posté le: 12/05/2009 20:24 Sujet du message:
Je n'ai jamais utilisé ce truc parce que je bosse sur un monde persistant moi.
Sinon tu passes par un script avec des variables comme j'ai fais pour que ton PNJ dise merci au lieu de présenter de nouveau la quête.
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 13/05/2009 13:14 Sujet du message:
OK merci je vait test cet aprém.
poignard
Inscrit le: 06 Mai 2009
Messages: 18
Posté le: 22/05/2009 12:46 Sujet du message:
Veuillez excuser ma lenteur pour répondre, mais je vous signal que je n'est pas encore eu le temps de tester... => BEP oblige ...
Mais je n'oublie pas ! Ya pas de soucies pour sa !