[WIP] Pipboy destructible

Toutes vos idées pour créer des mods.
Avatar du membre
sagittarius22
Moddeur émérite | Traducteur chevronné
Moddeur émérite | Traducteur chevronné
Messages : 2948

Re: [WIP] Pipboy destructible

Message par sagittarius22 »

Bravo!
Moddeur, Testeur et Traducteur
Avatar du membre
A .
Administrateur | Traducteur aguerri | Moddeur en herbe
Administrateur | Traducteur aguerri | Moddeur en herbe
Messages : 5582

Re: [WIP] Pipboy destructible

Message par A . »

Après plusieurs semaines sans y avoir touché, j'ai repris l'esp. Je suis coincé par la nature même du PipBoy, avec n'importe quel autre objet le mod serait fini depuis bien longtemps déjà ^^

Si vous enlevez le PipBoy, et que vous le rééquipez - ce que fait ce mod - et bien vous n'avez plus « Le » PipBoy, mais PipBoy de PNJ. C'est à dire, avec un écran vert lumineux, avec aucune interaction possible, hormis « sortir et ranger » son bras, avec au passage le droit de se faire exploser les yeux si il est 3h du matin et que vous jouez dans le noir.

Pour palier à ce problème, la commande ResetPipBoyManager est nécessaire. Son but est refaire le lien entre le mesh du PipBoy, et les menus, et de rendre le PipBoy interactif.

Initialement, je l'avais mise à la suite de chaque changement :
► Afficher le texte
Le problème... c'est que ça ne marche que dans 75% des cas, le PipBoy est bien remplacé par sa nouvelle version, mais n'est pas réinitialisé. Je crois d'ailleurs que c'est toujours le même stade qui pose problème (stade 2 ou 3, je vais revérifier), comme si cette ligne en particulier n'était pas lue.
Pour contourner ça, j'ai collé la commande entre un Begin Gamemode [ ] et un End indépendant, afin qu'elle soit exécutée en permanence. Ça marche, seulement quand on reset le PipBoy, on éteint aussi la lumière si elle est active... donc impossible d'éclairer un endroit plus d'une seconde. Ça doit couper la radio également sur le même principe.
Idem en Menumode, le sélecteur rotatif se remet en position haute. Du coup, le mod n'est pas « propre », et ça m'embête beaucoup. :P

Le code n'est pas complet, c'est juste la partie qui me semble défaillante. Avez-vous des suggestions ?
Avatar du membre
sagittarius22
Moddeur émérite | Traducteur chevronné
Moddeur émérite | Traducteur chevronné
Messages : 2948

Re: [WIP] Pipboy destructible

Message par sagittarius22 »

Oui, j'ai une idée; place ce script sur chaque Pipboy:

Code : Tout sélectionner

scn PipBoyOnAddScript

Begin OnAdd player
ResetPipBoyManager
End
Ainsi, à chaque fois que le pipboy sera ajouté au joueur, la commande sera utilisée; et seulement lorsque le PipBoy est ajouté, ce qui t'évitera d'appliquer un script en permanence.
Moddeur, Testeur et Traducteur
Avatar du membre
A .
Administrateur | Traducteur aguerri | Moddeur en herbe
Administrateur | Traducteur aguerri | Moddeur en herbe
Messages : 5582

Re: [WIP] Pipboy destructible

Message par A . »

Ah oui, ça me rappelle j'avais testé également une solution de ce type, avec un OnEquip - sans succès. Mais je n'avais pas dû mettre la référence player. On va voir ce que ça donne, merci :P
Avatar du membre
sagittarius22
Moddeur émérite | Traducteur chevronné
Moddeur émérite | Traducteur chevronné
Messages : 2948

Re: [WIP] Pipboy destructible

Message par sagittarius22 »

Ça ne fonctionne pas avec OnEquip si l'objet a été équipé via un script; en revanche ça devrait fonctionner pour le block OnAdd ;)
Moddeur, Testeur et Traducteur
Avatar du membre
A .
Administrateur | Traducteur aguerri | Moddeur en herbe
Administrateur | Traducteur aguerri | Moddeur en herbe
Messages : 5582

Re: [WIP] Pipboy destructible

Message par A . »

Même résultat, des fois ça marche, des fois non.

Je vais essayer un dernier truc, un doOnce du genre :
- à chaque changement de PipBoy, mettre à 1 une variable.
- dans un Begin Gamemode à part, quand cette variable est à un 1, reset
- puis remise à 0 et End.

Ça fonctionnait bien, c'est juste que je n'ai pas pensé tout de suite à intégrer un doonce pour éviter qu'il réactualise en permanence :embaras:

M'enfin c'est agaçant que la commande ne soit prise que dans certains cas et pas dans d'autres alors que l'architecture est identique. Sur cette base, qu'est-ce qui dit que mes variables sont bien setées quand je le veux :pensif:


Hors-sujet
Au fait, au delà de 1340 caractères dans un messagebox, le CTD est immédiat et sans appel :mrgreen:



Edit : même résultat, bien qu'apriori le bug ne soit concentré plus que sur un seul stade (le premier).
Répondre

Retourner vers « Idées »