[RESOLU] Existe t-il une fonction "se coucher" ?

Répondre
Partager Rechercher
Dans action conséquente tu écris quelque chose du genre:

Code PHP:

void main()
{
PlayAnimation(ANIMATION_LOOPING_PRONE);

Après faut vérifier les conditions dans lesquelles tu lances le script parce que c'est pas sûr que ça marche impec comme ça. J'ai pas testé mais faut le mettre sur un action conséquente d'une réplique du personnage que tu veux allonger.

Sinon il faut passer par le tag du PNJ à allonger et mettre en action conséquente:

Code PHP:

void main()
{
AssignCommand(GetObjectByTag("Tag_Du_PNJ"), ActionPlayAnimation(ANIMATION_LOOPING_PRONE));

Il existe un hak sur le vault avec tout le matériel qui te permet de faire se coucher un PJ sur un lit dès que tu cliques sur ce dernier (j'ai pas le temps ce matin de te retrouver le lien...)
Si vous ne trouvez pas, je vous ferai un pack avec les lits "marchables" que j'avais fait avec les lignes pour le placeables.2da ... par contre, pour les scripts, faudra les pondre
Les gars c'est pas un hak mais des préfabriqués que l'on met dans l'override.

Mais comment faire coucher le PJ dessus pendant le repos me direz - vous ?

suffit de modifier le 2da animstan.2da à la ligne de KNEELIDLE et de mettre proneb dans les 2 autres cases


Argyl me disait l'autre jour que c'était pas propre mais perso via script j'ai rien trouvé comme manoeuvre qui me plaisait (ça voulait dire en gros remplacer la fonction ActionRest par un truc perso)

Donc ça se discute mais moi cette soluce je la trouve propre et efficace d'autant que avec PlayCustomAnimation on se sert jamais de la constante donc on peut s'agenouiller quand même.

Par ailleurs c'est parfaitement compatible avec le pc tools, j'ai testé et les animations (s'agenouiller qu'on a donc remplacé) marchent comme elles doivent.
de rien en plus comme ce sont des préfabs seul le mappeur en a besoin

ça utilise le walkmesh plat + lits de base mais on a pas besoin de choses en plus et donc de rajouter quoi que ce soit dans la palette ou autre donc pas de hak
Ha d'accord, en effet je pensais à tout autre chose.

J'avais justement pensé à Kemo et son système de chaise. En mettant un lit en plaçable accessible et en créant une animation allongé bis qui se lance quand on utilise le lit, on aurait pu avoir quelque chose de correcte, mais comme pour les KEMO chair ça fait un gros hak.

Le faux walkmesh aussi marche par contre il augmente considérablement le risque de bug de calcul d'après ce que j'ai vu.
Content
Merci a vous, j'essaie cela ce soir dans mes cinématique.

Le script est :
Trois voleur pénètre pendant que les personnage dorme dans leur lit. L'un d'eux se réveil car il a l'atout "ne dort que d'un oeil" et il bondit sur le dernier voleur, pendant que deux autres immobile ce qui reste de voleur.
Je vais de ce pas mettre le sujet comme RESOLU.

Merci a vous tous et toutes
Le problème avec ce pack (et oui, hak était un mot) sont les soucis possible de calcul (ils existent tout de même avec des lits plaçables, mais moins), mais aussi les sons qui sont moyens : pierre ou bois
Moi, pour mes plaçables, j'ai mis "carpet"

Par contre, je ne vois pas en quoi cela fait des haks lourds environ 30ko par lit.
Le pack m'intéresse mais faire re télécharger tous les TRX de toutes les maps où il y a un lit c'est jamais agréable

Pour le hak d'animation spécifiques aux lits, j'ai peut être un peu exagéré puisque je me suis basé sur celui des chaises. Le truc pour les chaises c'est qu'il y avait une bonne dizaines d'animations, multipliée par le nombre de race jouables, ce qui ramenait à 3Mb de données. Enfin bref, mea culpa ^^
En fait tu as deux solutions pour installer le pack.

Soit tu places les .pfb dans ton override et à ce moment là dès le lancement de l'éditeur ils seront accessibles.
Théoriquement tu dois les voir si tu ouvre la fenêtre de blueprint>prefabs, ils sont dans la partie "globale". Simples à reconnaître, ils n'ont pas de nom (enfin chez moi ils n'en avaient pas)

Soit tu places les .pfb dans le dossier de ton module (à supposé que tu travailles en dossier et pas en .mod), à ce moment là tu trouveras les prefabs dans la fenêtre blueprint>prefabs, partie "module".
Bien, alors j'ai essaye ca ce soir

Code PHP:

void main()
{
AssignCommand(GetObjectByTag("Tag_Du_PNJ"), ActionPlayAnimation(ANIMATION_LOOPING_PRONE));

Mais il s'allonge sur le lit pas de problème. Mais il ne reste pas allongé, il se relève.
que faudrait-il pour qu'il reste allongé au moins 30 secondes ?

Merci.
Jette un oeil sur la colonne gauche sur la page d'accueil. Tu trouveras un tutorial sur le script et la liste de toutes les fonctions.

ActionPlayAnimation(...)

void ActionPlayAnimation
(
int nAnimation,
float fSpeed = 1.0f,
float fDurationSeconds = 0.0f
)
Paramètres :
- nAnimation : Constante ANIMATION_* désignant l'animation à effectuer.
- fSpeed : Vitesse à laquelle l'animation s'effectuera (défaut : 1.0f).
- fDurationSeconds : Durée pendant laquelle l'animation s'effectuera (défaut : 0.0f).
Description :
L'objet source effectuera l'animation désignée par nAnimation. Les animations de type "boucle" (ou loop) ne tiendront pas compte du paramètre fSpeed. Les animations préprogrammées (ou fire-and-forget / FNF) ne tiendront pas compte du paramètre fDurationSeconds.
Oui Eldandil laisse faire ceux qui servent à rien d'autres qu'aider sur joL et retourne à tes projets communautaires :P

Si tu veux une minute de dodo tu peux écrire ceci:
Code PHP:

ActionPlayAnimation(ANIMATION_LOOPING_PRONE1.0f60.0f
Par exemple.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés