Salut, je travaille sur une quete, tout l'aspect graphique est quasiment terminé mais quand j'en suis arrivé a la partie script jme suis pris une grosse claque, j'avais vraiment le souvenirque c'était moins difficile dans fallout, pourtant ça me paraissait simple
je voudrais par exemple que dans ma quete on doivent chercher 5 objet du meme type pour valider le stage, dans les tuto du CK je ne trouve que pour un seul objet, j'ai essayer d'utiliser le meme script en ajoutant moi même une variable INT mais ça ne fonctionne pas je ne suis pas doué pour ces chose la.
Sur votre site j'ai trouvé des scripts mais je ne les comprends pas, la J'AI crée la quete, je sais ce que le script doit faire donc ça m'aidera a le comprendre et a progresser
j'aimerais que il y ai un message a chaque fois que je trouve une occurence de l'objet genre "ramassez des blanc de poulet 1/5" puis "...2/5" etc
j'ignore si il faut faire quelquechose dans les CONDITIONS d'execution du stage, ou directement dans le script de l'objet, je ne comprends rien aux extends enfin c'est la m****** pouvez vous m'aider ??
le script de base est donc Scriptname
MadaraChickenScript
extends ObjectReference
Quest Property MalouCoqalail Auto
Event OnContainerChanged(ObjectReference newContainer, ObjectReference oldContainer)
if (newContainer == Game.GetPlayer())
MalouCoqalail.SetObjectivedisplayed(30)
MalouCoqalail.SetStage(30)
endif
EndEvent
ça marche très bien donc quand je loot un morceaux de poulet, pouvez vous m'aider a faire que je doivent en looter 5 et que ça affiche la progression ??
un grand merci et mon respect a celui qui pourra m'aider
0
Quete Avec Item Multiple
Débuté par
fratermalou
, 12 sept. 2013 - 08:56
5 réponses à ce sujet
#1
Posté 12 septembre 2013 - 08:56
#2
Posté 12 septembre 2013 - 12:45
Bonjour. Tu peut par exemple t'inspirer de la quête CR03
* Dans l'objectif : Trouvez des <Alias=AliasPoulet> (<Global=MaquetePouletsRamasses>/<Global=MaquetePouletsTotal>)
* Dans le script de la quete
Event OnUpdate()
int pouletsdujoueur= Game.GetPlayer().GetItemCount(AliasPoulet)
MaquetePouletsRamasses.value = pouletsdujoueur
UpdateCurrentInstanceGlobal(MaquetePouletsRamasses)
if (pouletsdujoueur>= MaquetePouletsTotal)
SetStage(20) //On a tout les poulets
SetObjectiveCompleted(10, 1)
Finished(true, true)
elseif (GetStageDone(20))
; at one point we had enough, but lost some
SetObjectiveCompleted(10, 0)
SetObjectiveDisplayed(10, 1, True)
Finished(false, false)
else
SetObjectiveDisplayed(10, 1, True)
Finished(false, false)
endif
EndEvent
AliasPoulet pointe sur l'item "poulet"
MaquetePouletsRamasses : Une variable globale qui compte le nombre de poulets dans l'inventaire du perso
MaquetePouletsTotal : Une variable globale qui indique le nombre de poulets à ramasser
Évidemment, j'ai simplifié le script Si un expert passe ici, et que j'ai dit une bêtise, pas taper
* Dans l'objectif : Trouvez des <Alias=AliasPoulet> (<Global=MaquetePouletsRamasses>/<Global=MaquetePouletsTotal>)
* Dans le script de la quete
Citation
Event OnUpdate()
int pouletsdujoueur= Game.GetPlayer().GetItemCount(AliasPoulet)
MaquetePouletsRamasses.value = pouletsdujoueur
UpdateCurrentInstanceGlobal(MaquetePouletsRamasses)
if (pouletsdujoueur>= MaquetePouletsTotal)
SetStage(20) //On a tout les poulets
SetObjectiveCompleted(10, 1)
Finished(true, true)
elseif (GetStageDone(20))
; at one point we had enough, but lost some
SetObjectiveCompleted(10, 0)
SetObjectiveDisplayed(10, 1, True)
Finished(false, false)
else
SetObjectiveDisplayed(10, 1, True)
Finished(false, false)
endif
EndEvent
AliasPoulet pointe sur l'item "poulet"
MaquetePouletsRamasses : Une variable globale qui compte le nombre de poulets dans l'inventaire du perso
MaquetePouletsTotal : Une variable globale qui indique le nombre de poulets à ramasser
Évidemment, j'ai simplifié le script Si un expert passe ici, et que j'ai dit une bêtise, pas taper
#3
Posté 12 septembre 2013 - 16:04
Game.GetPlayer() à remplacer par un playerRef, passé en paramètre, toujours...
"You are the best Septim that's ever ruled. Well, except for that Martin fellow, but he turned into a dragon god, and that's hardly sporting... You know, I was there for that whole sordid affair. Marvelous time! Butterflies, blood, a Fox, a severed head... Oh, and the cheese! To die for."
Shéogorath - Prince de la folie
Vrai Grand Moddeur et FPIA à ses heures...#4
Posté 12 septembre 2013 - 19:59
merci je vais étudier ça, par contre, si j'ai bien compris la logique je ne comprend pas ou tu a définit "MaquetePouletsTotal"
ne devrais je pas la définir plus haut par "int MaquetePouletsTotal=5" ? et dans ce cas dois je remplacer dans ton exemple "MaquetePouletsRamasses" par quelquechose, biensur je pose cette question avant d'avoir lu la quete CR03 donc si j'ai posé une question dont j'ai dors et deja la réponse je te prie de m'excuse, en tout cas ça va m'aider un grand merci
ha oui j'oubliais une chose importante, je ne trouve pas le script de la quete CR03 pour la simple et bonne raison que je ne sait pas ou rentrer ce script ? dois je le rentrer dans l'objet du poulet ???
ne devrais je pas la définir plus haut par "int MaquetePouletsTotal=5" ? et dans ce cas dois je remplacer dans ton exemple "MaquetePouletsRamasses" par quelquechose, biensur je pose cette question avant d'avoir lu la quete CR03 donc si j'ai posé une question dont j'ai dors et deja la réponse je te prie de m'excuse, en tout cas ça va m'aider un grand merci
ha oui j'oubliais une chose importante, je ne trouve pas le script de la quete CR03 pour la simple et bonne raison que je ne sait pas ou rentrer ce script ? dois je le rentrer dans l'objet du poulet ???
#6
Posté 13 septembre 2013 - 11:39
ok merci !!
0 utilisateur(s) li(sen)t ce sujet
0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)