shrapnel Posté(e) le 4 mai 2009 Partager Posté(e) le 4 mai 2009 bonsoir à tous,Je débute dans le modding de F3, je connais bien le logiciel (mais pas du point de vue script, dialogues etc .. :/ ) J'aimerais créer un script attaché à un objet particulier pour que ce dernier se déplace dans le jeu, une fois actionné par le joueur.exemple : Créer une sorte de passage secret, qui se dévoilerai par le déplacement latéral d'un objet .. Est ce possible ? De quelles façons sont codées les déplacements des portes ? (je pense aux portes animées comme celle des abris ) C'est inclus dans un script ? Finalement je ne comprend pas comment sont gérées ces animations ...Merci Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Suuk Posté(e) le 4 mai 2009 Partager Posté(e) le 4 mai 2009 Tu reponds dans ton post a ta propre question... ^^Il n'y a aucun script qui gere les deplacements des portes lorsque tu les ouvres (si ce n'est dans le code source). C'est juste une ANIMATION, créée avec les logiciels adequates, ce que tu ne peux pas faire avec le GECK.Par contre, tu peux effectivement deplacer un objet dans l'espace grace a un script (faire un ascenseur par exemple). Mais c'est trop long a expliquer du debut a la fin, alors je vais te poster un code que j'avais fait il y a quelques temps pour creer un ascenseur basique, dirigé (haut ou bas), par une console. (l'ascenseur en lui-meme doit etre un Activateur, et non un Static, sinon il ne bougera pas !).En gros, c'est juste un truc de positions dans l'espace (X,Y,Z) que tu modifie dans le temps.Dans mon script, tu t'apercevra que je fais bouger le player en meme temps(sinon il ne bougera pas, meme sil se met sur l'ascenseur et qu'il le fait monter).Voila le code:scn ADCKLiftTestScriptref linkedRefshort posZshort playerPosZshort newPosZshort playerNewPosZshort doOnceshort startfloat timershort etat ; 0 en bas ; 1 en hautshort enMarcheBEGIN OnActivate if (enMarche == 0) set linkedRef to GetLinkedRef set posZ to linkedRef.GetPos Z set playerPosZ to player.GetPos Z set timer to 0 if ( etat == 0) DisablePlayerControls 1 0 1 set newPosZ to (posZ + 10) set playerNewPosZ to (playerPosZ + 10) set start to 1 set enMarche to 1 elseif (etat == 1) DisablePlayerControls 1 0 1 ColMarkREF.Disable set newPosZ to (posZ - 10) set playerNewPosZ to (playerPosZ - 10) set start to 1 set enMarche to 1 endif endifENDBEGIN GameMode if (start == 1) if (etat == 0) if ( newPosZ < (posZ + 500)) if timer < .1 set timer to timer + GetSecondsPassed else if (doOnce == 0) linkedRef.setPos Z newPosZ player.setPos Z playerNewPosZ set timer to 0 set doOnce to 1 else set newPosZ to (newPosZ + 10) set playerNewPosZ to (playerNewPosZ + 10) linkedRef.setPos Z newPosZ player.setPos Z playerNewPosZ set timer to 0 endif endif else set start to 2 set enMarche to 0 set etat to 1 set doOnce to 0 ColMarkREF.enable EnablePlayerControls endif elseif (etat == 1) if ( newPosZ > (posZ - 500)) if timer < .1 set timer to timer + GetSecondsPassed else if (doOnce == 0) linkedRef.setPos Z newPosZ player.setPos Z playerNewPosZ set timer to 0 set doOnce to 1 else set newPosZ to (newPosZ - 10) set playerNewPosZ to (playerNewPosZ - 10) linkedRef.setPos Z newPosZ player.setPos Z playerNewPosZ set timer to 0 endif endif else set start to 2 set enMarche to 0 set etat to 0 set doOnce to 0 EnablePlayerControls endif endif endifENDC'est pas tres complique une fois que tu comprends le principe.Si tu as des questions sur le code ousur quelque chose de precis, je te repondrai! Mais je n'ai ni le temps ni l'envie(surtout en periode d'exams) de faire un tutorial ou une explication complete, desole ^^.Bonne chance! Citer Mes Mods terminés: - Fallout 3:Bear Trap -Fallout New Vegas:Gameplay RevisedBear Trap Lien vers le commentaire Partager sur d’autres sites More sharing options...
shrapnel Posté(e) le 4 mai 2009 Auteur Partager Posté(e) le 4 mai 2009 Merci pour ta réponse, je vais examiner ce code quand j'aurais moi aussi le temps. =) Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.