Nous sommes le 17 Oct 2019, 19:45

Heures au format UTC + 2 heures




Poster un nouveau sujet Répondre au sujet  [ 246 messages ]  Aller à la page Précédente  1 ... 11, 12, 13, 14, 15, 16, 17  Suivante
Auteur Message
 Sujet du message: Re: Éditer des scripts
MessagePosté: 08 Juin 2010, 23:08 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
Bah pourquoi mettre la commande « Human_HaveBody » sans la connaître...

Elle permet seulement de détecter que l'acteur porte un corps, et vu que ça n'existe pas dans le jeu, c'est une commande vaine.


Autant mettre « Up », Arès ; quelqu'un utilisant ce code dans BSV perdra son script.



Ce qu'il faut, c'est utiliser exactement le même système qu'avec le pote de Lucas, les animations sont trop mauvaises pour porter un corps.

Donc l'idée, c'est de garer une bagnole pas loin du blessé, en sortir et lui dire d'y monter.

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 09 Juin 2010, 19:39 
Hors ligne
Scripteur
Avatar de l’utilisateur

Inscription: 23 Aoû 2007, 21:54
Messages: 1534
Localisation: Belgique, Bruxelles
Condor a écrit:
Autant mettre « Up », Arès ; quelqu'un utilisant ce code dans BSV perdra son script.
Je ne comprends pas, là... Ça va planter ? Chez-moi ça fonctionne. Et puis « Up », ça revient au même, on rentre de nouveau dans les accolades.

Elles viennent d'apparaître, les balises [g] ?

Condor a écrit:
Ce qu'il faut, c'est utiliser exactement le même système qu'avec le pote de Lucas, les animations sont trop mauvaises pour porter un corps.

Donc l'idée, c'est de garer une bagnole pas loin du blessé, en sortir et lui dire d'y monter.
C'est ce que je trouve le mieux aussi et c'est beaucoup plus simple.


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 10 Juin 2010, 00:08 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
Disons que si la première ligne n'a que l'accolade, il me semble que BSV supprime l'acteur script comme quand on y met rien.

(oui, je viens de les mettre ; c'est plus rapide et elles comportent les espaces insécables)



Pour le script, je donne une base.


Dans l'humain nommé « Paulie » :

Code:
Enemy_Vidim 0 // La vue du personnage est désactivée pour empêcher son IA de réagir

Dim_Act 3 // Alloue 3 acteurs dans la mémoire
FindActor 0 // Déclare l'acteur 0 comme étant l'acteur courant, n'ayant pas d'appel
GetActivePlayer 1 // Déclare le joueur
FindActor 2, "Agonie_Paulie" // Déclare l'acteur du script satellite Agonie_Paulie

Human_SetProperty 0, 19.5, Speed // Redéfinit la vitesse de l'acteur humain 0 (Paulie)
Enemy_ChangeAnim "Run1.i3d", "sam zraneny chuze.i3d" // Échange une animation inée du personnage courant pour qu'il titube
Enemy_ChangeAnim "Walk1.i3d", "sam zraneny chuze.i3d"
Enemy_ChangeAnim "Right1.i3d", "sam zraneny chuze.i3d"
Enemy_ChangeAnim "Left1.i3d", "sam zraneny chuze.i3d"
Enemy_ChangeAnim "breath01a.i3d", "sam zraneny stativ.i3d"
Enemy_PlayAnim "SamZrSedS.i3d" // Joue l'animation assis sur le sol, souffrant

Dim_Flt 1 // Alloue une variable (un flottant) dans la mémoire

{ Down // Permet au retour d'un évènement de jouer après l'accolade fermante
Label AuSecours
GetActorsDist 1, 0, 0 // Détermine dans la variable 0 la distance en mètres entre les acteurs 1 et 0
If Flt[0] < 5, -1, AuSecours
Act_SetState 2, Inactive // Désactive le script de l'agonie pour empêcher de l'entendre gémir pendant qu'il parle
Human_Talk 0, 35940022 // Au secours, un médecin...
}

Act_SetState 2, Active // Réactive le script des gémissements
Human_EraseAB 0 // Désactive l'action possible sur l'acteur 0 (Paulie)
Human_StopTalk 0 // Interrompt son dialogue s'il n'avait pas fini
Enemy_PlayAnim "SamZrToStoj.i3d", 0, Simple // 0 est un flottant avec la durée de l'animation mais non utilisé dans ce script ; il ne sert qu'à utiliser le paramètre Simple servant à joue l'animation sans boucle
Wait 15160 // Pause de 15 160 millisecondes, le temps de l'animation
Enemy_PlayAnim "SamZrStojS.i3d"
Human_CreateAB 0 // Réactive l'action possible
Let Flt[0] = 1 // Détermine la valeur 1 à la variable 0

{ Up // Permet au retour d'un évènement de jouer après l'accolade ouvrante
If Flt[0] = 1, -1, BFA
Enemy_Action_Follow 1, 0.75 // Le personnage courant suit l'acteur 1 et s'arrête à 75 cm de son guide
Label BFA
Wait 86400 // Boucle fermée d'attente d'une journée
GoTo BFA
}


Event Use_AB, 7970005 // Parle à Paulie
Event_Use_CB 1 // Permet l'utilisation de l'accolade interrompue au retour

GoTo Flt[0] // Va à l'étiquette portant le nombre de la valeur de la variable 0

Label 0
Human_Talk 1, 11990731 // Suis-moi !
Let Flt[0] = 1
Return

Label 1
Enemy_ForceScript 0 // Oblige le script de l'acteur 0, pour sortir du blocage de l'IA
Human_Talk 1, 11990741 // Attends ici !
Let Flt[0] = 0
Return


Event 1 // Évènement
If Flt[0] = 1, -1, Revenir
Enemy_KickDriver 1 // Fauche le conducteur 1 de son véhicule
Label Revenir
Return




Dans un script à part nommé « Agonie_Paulie » :

Code:
Dim_Act 4
GetActivePlayer 0
FindActor 1, "Paulie"
SetNullActor 3 // Déclare « l'extérieur » d'un véhicule


Dim_Flt 1

Label Bagnole
Human_GetOwner 0, 2 // Déclare 2 comme le véhicule occupé par l'acteur 0 (le joueur)
Car_GetSeatCount 2, 0 // Détermine dans la variable 0 le nombre de place du véhicule 2
If Flt[0] < 2, -1, Agonie
CompareOwnerWithEx 0, 3, Agonie, -1 // Vérifie que le joueur se trouve dehors pour passer à l'étiquette Agonie, sinon, passe à la suite
SetEvent 1, 1, -1 // Joue l'évènement 1 dans l'acteur 1 (script Agonie_Paulie)
Human_Talk 1, 950014 // Tu crois que je vais y aller à pinces ?

Label Agonie
Rnd 0, 4 // Détermine un nombre aléatoire entre 0 et 4 dans la variable 0
GoSub Flt[0] // Va à l'étiquette qui porte la valeur de la variable 0 et revient en rencontrant la commande Return
Rnd 0, 10
Let Flt[0] = Flt[0] + 2 // Détermine le résultat de l'opération dans la variable 0.
Let Flt[0] = Flt[0] * 500
Wait Flt[0] // Met le script en pause pendant la durée déterminée dans la variable 0
GoTo Bagnole // Va à l'étiquette Bagnole

Label 0
Human_Talk 1, 11940064
Return
Label 1
Human_Talk 1, 11940098
Return
Label 2
Human_Talk 1, 11940099
Return
Label 3
Human_Talk 1, 11940101
Return
Label 4
Human_Talk 1, 11940104
Return



PS : Pense à écrire tes termes en français (ou catalan), catala ; je vois ton « PaulieDEAD », c'est ridicule. Un peu de fierté culturelle, bon sang !

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 10 Juin 2010, 17:26 
Hors ligne
Avatar de l’utilisateur

Inscription: 09 Jan 2009, 21:38
Messages: 105
Tu ne perds pas en concession de portabilité en n'allouant tes instances que par blocs contigus ?

Réfléchis bien si tu me réponds le piaf.




Taser

_________________
Mafia 2 : jeu de bombe ultime.
Hope da cops will survive héhé next time !! Taser here to be !


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 10 Juin 2010, 19:08 
Hors ligne
Avatar de l’utilisateur

Inscription: 31 Mai 2010, 18:49
Messages: 44
ok sympa condor, mais il est censé faire quoi le script ?

Car moi, il me fait juste le mec qui se tient les cotes sans gemir, et je peux juste lui dire " suis moi " et il monte ou descend de la bagnole ..

_________________
usap.top-forum.net


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 10 Juin 2010, 19:20 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
Tu devrais l'entendre gémir, si t'as bien nommé le personnage en « Paulie » et le script en « Agonie_Paulie ».

Et oui, il ne fait que te suivre.


Taser Mafiosi a écrit:
Tu ne perds pas en concession de portabilité en n'allouant tes instances que par blocs contigus ?
Je sens que j'ai affaire à un spécialiste.

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 14:39 
Hors ligne
Avatar de l’utilisateur

Inscription: 31 Mai 2010, 18:49
Messages: 44
Bonne année a tous !

Je reviens dans la mafia ! Et j'aurais besoins d'aide ? c'est faisable ?
voila j'ai fait un petit script ou un gars doit aller d'un point a un autre ... mais ce con il tourne en rond ... il ne veut pas aller d'un point a l'autre ... vous pouvez m'aider ?

_________________
usap.top-forum.net


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 14:44 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
Bonne année aussi !


Il faudrait voir le script, déjà. :o

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 15:03 
Hors ligne
Avatar de l’utilisateur

Inscription: 31 Mai 2010, 18:49
Messages: 44
le voici :


Code:
dim_act 1
dim_frm 2

findactor 0,"Norman2,0945"

findframe 0,"Interro1"
findframe 1,"Arm2"

human_setproperty 0, 500, Energy

Label Boucle
Enemy_PlayAnim "GestikulaceNew02.I3D"
Wait 86400000
GoTo Boucle

Event Use_AB, 10970007
Enemy_Talk 19950003
Enemy_Wait
enemy_move_to_frame 0,1
enemy_move_to_frame 0,0
enemy_playanim "GestikulaceNew02.I3D"
Wait 86400000
Return


En sachant que "Interro1" est un "other" avec script mais vide et qui ne coltiner que les coordonnée du lieu ou Norman doit aller ... et Arm1 est un "other" sans script avec les coordonnée du lieu par ou Norman devait passer ( au debut il etait dans son bureau, mais il n'arrivait pas à en sortir... donc je lui dit de passer par la, et bien sur sa marche tjrs pas ...)

bon maintenant, je dois avouer que c'est un script de sagouin, mais ça fait tellement longtemps que j'ai pas scripté que j'ai absolument tout oublié .... :oops:

_________________
usap.top-forum.net


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 15:19 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
Pas étonnant qu'il tourne en rond, il va de Interro1 à Interro1 d'une distance d'un mètre.

T'as inversé l'identifiant de l'armature avec la distance d'affectation.


Code:
Enemy_Move_To_Frame 1, 0, Walk
Enemy_Move_To_Frame 0, 0, Walk




Édition :


Ce que t'appelles other, c'est une armature, en terme correcte. L'auteur de BSV est assez crade dans sa façon de nommer les choses.


Code:
Dim_Frm 2
Dim_Act 1

FindFrame 0, "Interro1"
FindFrame 1, "Arm2"

FindActor 0, "Norman2,0945"
Human_SetProperty 0, 500, Energy


{ Up
Enemy_PlayAnim "GestikulaceNew02.I3D"
Label Boucle
Wait 86400000
GoTo Boucle
}

Event Use_AB, 10970007
Enemy_Talk 19950003
Enemy_Wait
Enemy_Move_To_Frame 1, 0, Walk
Enemy_Move_To_Frame 0, 0, Walk
Return


Avec ça, il va de Arm2 à Interro1.

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 16:39 
Hors ligne
Avatar de l’utilisateur

Inscription: 31 Mai 2010, 18:49
Messages: 44
Ok merci condor ! je teste ça !

_________________
usap.top-forum.net


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 17:29 
Hors ligne
Avatar de l’utilisateur

Inscription: 31 Mai 2010, 18:49
Messages: 44
Non il tourne toujours en rond :

voila le script ( j'ai virer l'Arm1 en voyant qu'avec, il tournait en rond ....)


Code:
Dim_Frm 1
Dim_Act 1

FindFrame 0, "Interro1"

FindActor 0, "Norman2,0945"

Human_SetProperty 0, 500, Energy


{ Up
Enemy_PlayAnim "GestikulaceNew02.I3D"
Label Boucle
Wait 86400000
GoTo Boucle
}

Event Use_AB, 10970007
Enemy_Talk 19950003
Enemy_Wait
Enemy_Move_To_Frame 0, 0, Walk // et a partir de la , il tourne en rond ...
Return



un autre test :
Code:
Dim_Frm 2
Dim_Act 1

FindFrame 0, "Interro1"
FindFrame 1, "Depart"

FindActor 0, "Norman2,0945"

Human_SetProperty 0, 500, Energy


{ Up
enemy_playanim "GestZamStativ.I3D"
wait 1500
rnd 0, 4
if flt[0] = 1, -1, 1
enemy_playanim "GestZamOtoceni.I3D", 0
wait flt[0]
label boucle
Wait 86400000
goto boucle
}

Event Use_AB, 10970007
Enemy_Talk 19950003
Enemy_Wait
Enemy_Move_To_Frame 1, 0, Walk
Wait 86400000
Return

_________________
usap.top-forum.net


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 17:53 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
catala a écrit:
Ok merci condor ! je teste ça !
Là, ça donnerait : « D'accord, merci Condor ! J'essaie ça ! »


C'est sûrement un problème de parcours, tu pourrais faire une capture de l'endroit concerné ?

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 18:30 
Hors ligne
Avatar de l’utilisateur

Inscription: 31 Mai 2010, 18:49
Messages: 44
Eh bien, vu que ce personnage ne faisait point avancer mon histoire, il fut simplement déplacé au point ou il devait se rendre à l'origine ....

Mais, une question taraude mon esprit :

Quel est la fonction qui permet a une action de se lancer quand il détecte que le joueur est à moins de X mètres ?

_________________
usap.top-forum.net


Haut
 Profil  
 
 Sujet du message: Re: Éditer des scripts
MessagePosté: 16 Jan 2011, 19:30 
Hors ligne
Son Excellence
Avatar de l’utilisateur

Inscription: 22 Aoû 2004, 23:09
Messages: 12259
Localisation: France
C'est con de ne pas persister ; si tu retrouves ce problème ailleurs, comment vas-tu le régler ?

Citation:
GetActorsDist Act1, Act2, Flt(, Bool)

Récupère dans Flt la distance en mètres de Act2 par rapport à Act1. Bool signe Flt dans le cas où Act2 est détruit.


Tiens, au passage, quand tu t'adresses à un personnage, c'est mieux qu'il regarde le joueur pour lui parler.

Citation:
Human_LookToActor Act1(, Act2(, Bool))

L'acteur humain Act1 va regarder une fois dans la direction de l'acteur Act2, dans les yeux si c'est un humain, les vitres si c'est un véhicule. Bool permet de maintenir la cible.

Cesse si seul Act1 est déterminé.

_________________
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 246 messages ]  Aller à la page Précédente  1 ... 11, 12, 13, 14, 15, 16, 17  Suivante

Heures au format UTC + 2 heures


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traduction par: phpBB-fr.com