Aller au contenu


Faire Bouger Plusieur Pièces Simultanément


  • Veuillez vous connecter pour répondre
7 réponses à ce sujet

#1 eventstorm

eventstorm

Posté 01 juin 2010 - 21:12

bonjour à toutes et tous

toujours pour mon mot je crée une salle de téléporteur

http://img532.imageshack.us/img532/9964/screenshot10smal.jpg

dans ce lieu sont regroupés 12 triolth et leurs caches

Mon idée est...
Quand le joueur arrive dans la salle, il marche sur un tapis (activateur).
S’il dispose d'une bague, il activera les 12 caches simultanément.

je pensais utiliser un type de script comme les herses, mais ça ne marche pas

Donc,
j’ai créé un script global (Atl_activation_triolith_State).
Les 12 caches ont le même nom (Atl_active_triolith_Lb1a) avec le script (LocalState).
le tapis a le script des herses  et les noms ont été modifiés

mais une seule s'ouvre

de plus le script des herses fait monté puis après un certain temps descendre la pièce moi je veux juste que les pièces descendent
une idée ?
merci a vous

#2 Dallara

Dallara

    Fortificateur fortiche


Posté 01 juin 2010 - 21:38

Salut,

Je pense que tu devrait faire enfaite un ID par cache.

Comme cela:

 "Id de cache_01"
 "Id de cache_02"
 "Id de cache_03"
 	......... jusqu'à 12

là je t'ai fait un petit exemple avec comme base le script des herses de la Porte des Âmes...
Spoiler

Et tu fais comme ça avec toutes les instructions (mouvements, sons,etc...) et à chaque fois que il y a l'ID de la herse (Si tu reprends le script) En l'occurrence (GG_OpenGate1).
Je n'ai pas essayer donc je peux pas t'assurer que sa marche...

Quant a l'activation par anneau je pense que il faut mettre un truc du genre : If ( GetItemCount, "ID_objet" >= 1 ) tu pourras lire plus de détailes sur cette fonction à la page 38 du MSfD8.

Dallara

Modifié par Dallara, 01 juin 2010 - 21:42.

Heureux qui comme la rivière peu suivre son cours sans quitter son lit.

Le travail c'est la santé, laisse le au malade.

Mieux vaut arriver en retard qu'en corbillard!

VGM

#3 Korfandar

Korfandar

    Ch'ti dragon normand...dans son trou


Posté 02 juin 2010 - 09:36

Une autre solution est de gérer le mouvement des triolith directement sur eux même.
Sur le tapis, tu mets un script qui si le joueur passe dessus et a la bague mets une variable globale à 1.
Tu crées une seule id de triolith portant un script qui si la variable globale vaut 1 gère le mouvement du triolith.

L'abus de SMS est dangereux pour l'élocution mentale

Le mod qui révèle (presque) tout sur les dwemers : Dwarmor

Fervent Partisan de l'Instabilité Avatarienne
Quart du quarteron des VGM...


#4 eventstorm

eventstorm

Posté 02 juin 2010 - 10:54

Dallara
nan mais sa j'ai déjà utilisé dans une de mes cache après l'activation et le if de la bague pas trop de soucie

mais je voudrai essayer un truc plus simple

car la le script va faire deux page lol

Korfandar

je suis nul en script mais si j'ai bien compris ceci réduirai considérablement la taille du script

pourrai tu me faire un exemple ?
j'avoue que les exemples me parle plus. Je comprend mieux
dans tous les cas merci de vous intéresser a mon cas

#5 Korfandar

Korfandar

    Ch'ti dragon normand...dans son trou


Posté 02 juin 2010 - 14:12

Si je n'ai pas fait d'exemple, c'est que je n'ai malheureusement pas trop le temps pour ça. Je verrai si je trouve un instant mais je ne promets rien...

L'abus de SMS est dangereux pour l'élocution mentale

Le mod qui révèle (presque) tout sur les dwemers : Dwarmor

Fervent Partisan de l'Instabilité Avatarienne
Quart du quarteron des VGM...


#6 Kira

Kira

    Top-modeleuse...


Posté 02 juin 2010 - 14:34

Bonjour...
J'en profite pour ajouter une observation personnelle sur les déplacements d'objets dans Morrowind...
Il est couramment conseillé d'utiliser pour gérer les déplacements le timer, qui est un décompte des secondes... Hors, ce timer, et je m'en suis rendue compte en créant un objet qui devait se déplacer de z600 à z15000, n'est pas fiable à cent pour cent, et un objet qui, par exemple, doit faire des allers-retours entre deux points finira toujours par se décaler de ses positions d'origines...
Donc, j'ai supprimé le timer dans mon mouvement, et je l'ai remplacé par un test de la valeur z qui laisse le mouvement se poursuivre tant que cette hauteur n'est pas atteinte ou dépassée, et ensuite, à la frame juste après l'arrêt, je repositionne exactement l'objet sur la valeur z correcte, par précaution...
J'ai, pour le tester, laissé tourner mon script en jeu pendant une journée (en fait, j'ai placé mon personnage dans la cellule et je suis, moi, allée faire une promenade), et, à la fin de la journée, les positions de départ et d'arrivée étaient toujours parfaites...
Tout n'est qu'illusion... Surtout le fait de le penser.....
Image IPB
(Wiwi d'or de la plus serviable et de la plus cool... Merci à vous tous...)

#7 eventstorm

eventstorm

Posté 02 juin 2010 - 14:49

Korfandar
je suis demandeur donc patient lol
Kira

j'avais aussi observer ce truc avec un ascenseur mais vue mon niveau je n'avais pas chercher la raison

pour mon cas ici présent il n'y a pas d'aller retour juste une descente

je sais qu'il suffirait de donner 12 ID différentes et de faire un script type herse ce que j'ai fait dans la cache de muriela avec des mouvements différant pour certaine pièces.
mais je cherche plutôt a simplifier cette approche
ce qui chez moi aurai l'avantage de diminuer le nombre d'ID nouvelles (j'en suis a 650 Env rien que pour les static)lol

Ps kira lis tes Pm mdr

#8 Finraïl

Finraïl

    Modèle de wiwilandais nanotechnologique


Posté 02 juin 2010 - 20:48

Voir le messageKira, le 02 juin 2010 - 14:34, dit :

Il est couramment conseillé d'utiliser pour gérer les déplacements le timer, qui est un décompte des secondes... Hors, ce timer, et je m'en suis rendue compte en créant un objet qui devait se déplacer de z600 à z15000, n'est pas fiable à cent pour cent, et un objet qui, par exemple, doit faire des allers-retours entre deux points finira toujours par se décaler de ses positions d'origines...
Je ne dirai pas qu'il n'est pas fiable, juste qu'il est imprécis, en tout cas pas suffisamment pour ce que tu veux faire. Car tu vas tester des valeurs de temps toutes les frames, or les frames ne font toutes le même temps, car dépendent des scripts à gérer, entre autres, et les scripts ne font pas toujours la même chose. Du coup, un test de temps peux prendre X frames une première fois, puis y frames la seconde, le nombre de frames d'écart va provoquer un décalage de ton objet. Ce genre de script est suffisant pour des choses qui ne reviennent pas constamment à leur place, et qui ne sont pas utilisées des millions de fois. Ou alor,il faut optimiser tes temps pour que sur le million de fois ta position soit la moyenne, tu auras des écarts de temps en temps, mais au final pas de décalage "violent".

Not Quite Dead, le 22.06.2006 à 19:42, dit :

[...]un changement avatarien, même infime, est PAS BIEN et nuisible [...]
Les lisez-moi c'est bon, mangez-en !! Image IPB

Fervent Partisan de l'Immuabilité Avatarienne.

Morrowind Renaissance





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)