Pour commencer, il faur savoir que les Ms Agents ne fonctionnent qu'avec les logiciel de Microsoft.
Donc pour créer notre première animation, nous allons ouvrir le Bloc Note de Microsoft et copier le code ci-dessous dans son intégralité.
Ensuite il vous faudra l'enregistrer dans votre bécane avec l'extension ".html" (ex: test.html) et ensuite l'ouvrir avec Internet Explorer et pas un autre navigateur, sans quoi vous ne verrez rien!
<object id="AgentControl" width="0" height="0"
classid="CLSID:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F"
codebase="#VERSION=2,0,0,0">
</object>
<object id="L&amp;amp;amp;amp;amp;HTruVoice" width="0" height="0"
classid="CLSID:B8F2846E-CE36-11D0-AC83-00C04FD97575"
codebase="#VERSION=6,0,0,0">
</object>
<script language="JavaScript" type="text/javascript">
<!--//
/*
'_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
''_/ by Neolien pour Code Source : 08.06.05
'_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
*/
// * Objects Caractère
var Merlin;
// * Variables
var UsedChars;
var MerlinID;
var MerlinACS;
var MerlinLoaded;
var LoadReq;
var HideReq;
var MerlinLeftX, MerlinCenterX, MerlinRightX;
var MerlinTopY, MerlinCenterY, MerlinBottomY;
// * Initialisation
UsedChars = "Merlin";
// * Merlin
MerlinID = "Merlin";
MerlinACS = "merlin.acs";
MerlinLoaded = false;
Window_OnLoad();
function Window_OnLoad() {
// Le But: Se lance automatiquement quand la page est chargée
AgentControl.Connected = true;
MerlinLoaded = LoadLocalChar(MerlinID, MerlinACS);
if (!MerlinLoaded) {
// Tentative de chargement du caractère par default
MerlinLoaded = LoadLocalChar(MerlinID, "");
}
if (MerlinLoaded) {
SetCharObj();
}
CheckLoadStatus();
}
function LoadLocalChar(CharID, CharACS) {
// Le but: Tentative de chargement du caractère spécifié
// Retour: true si c'est bon, false si ce ne l'est pas
AgentControl.RaiseRequestErrors = false;
if (CharACS == "") {
LoadReq = AgentControl.Characters.Load(CharID);
}
else {
LoadReq = AgentControl.Characters.Load(CharID, CharACS);
}
AgentControl.RaiseRequestErrors = true;
if (LoadReq.Status != 1) {
return(true);
}
return(false);
}
function SetCharObj() {
// Le but: lancer le caractère référent et l'ID du langage TTS
Merlin = AgentControl.Characters.Character(MerlinID);
Merlin.LanguageID = 0x409;
}
function CheckLoadStatus() {
// Le but: Déterminer si le caractère requis c'est bien chargé.
if (!MerlinLoaded) {
LoadError();
return(false);
}
window.status = "";
AgentIntro();
return(true);
}
function LoadError() {
var strMsg;
window.status = "";
strMsg = "Erreur du chargement du caractère: " + MerlinID + "\n";
strMsg = strMsg + "Ce Microsoft Agent Script a besoin du caractère(s):\n";
strMsg = strMsg + UsedChars;
alert(strMsg);
}
function GetScreenPositions() {
var ScreenWidth = window.screen.width;
var ScreenHeight = window.screen.height;
if ((ScreenWidth == 0) || (ScreenHeight == 0)) {
ScreenWidth = 800;
ScreenHeight = 600;
}
MerlinCenterX = (parseInt(ScreenWidth / 2) - parseInt(Merlin.Width / 2));
MerlinRightX = (ScreenWidth - Merlin.Width);
MerlinCenterY = (parseInt(ScreenHeight / 2) - parseInt(Merlin.Height / 2));
MerlinBottomY = (ScreenHeight - Merlin.Height);
}
function AgentIntro() {
GetScreenPositions();
// *** Le début du contenu du script d'animation Merlin ***
Merlin.Show();
Merlin.Play("Greet");
Merlin.Play("GetAttention");
Merlin.Play("GetAttentionContinued");
Merlin.Play("GetAttentionContinued");
Merlin.Play("GetAttentionContinued");
Merlin.MoveTo(MerlinCenterX, MerlinCenterY);
Merlin.Speak("Salut ! je vois encore des nouveaux!");
Merlin.MoveTo(MerlinRightX, MerlinCenterY);
Merlin.Play("Explain");
Merlin.Speak("Je vous invite à découvrir la programmation.");
Merlin.MoveTo(MerlinCenterX, MerlinTopY);
Merlin.Play("GestureDown");
Merlin.Speak("Grâce à cette animation vous allez faire un peu de code!");
Merlin.Speak("Alors n'hésitez plus !");
Merlin.Play("Search");
Merlin.Play("Surprised");
Merlin.Speak("commençons!");
Merlin.Play("GestureDown");
Merlin.MoveTo(MerlinLeftX, MerlinCenterY);
Merlin.Speak("Mais avant une petite blague!");
Merlin.Speak("E.T. dit à sa mère :");
Merlin.MoveTo(MerlinCenterX, MerlinCenterY);
Merlin.Speak(" ils étaient extra tes restes !");
Merlin.GestureAt(MerlinLeftX, MerlinCenterY);
Merlin.Speak("Bien, Maintenant lisez bien les explications qui suiventdans la rebrique 'Faire du code'! ");
Merlin.Play("Greet");
Merlin.Hide();
// *** la fin du contenu du script animation Merlin ***
}
//-->
</script>
<script language="JavaScript" type="text/javascript" for="AgentControl" event="RequestComplete(RequestObject)">
<!--//
// Le but: Achévement du script ou échec de la requête
//-->
</script>
<script language="JavaScript" type="text/javascript" for="AgentControl" event="Command(UserInput)">
<!--//
// Le but: Determiner la commande sélectionnée par le menu ou la voie et lancer l'application script
//-->
</script>
<script language="JavaScript" type="text/javascript" for="AgentControl" event="Bookmark(BookmarkID)">
<!--//
//-->
</script>
<script language="JavaScript" type="text/javascript" for="AgentControl" event="Click(CharacterID, Button, Shift, X, Y)">
<!--
// Insertion des événements liés aux clics de la souris
-->
</script>
<script language="JavaScript" type="text/javascript" for="AgentControl" event="DblClick(CharacterID, Button, Shift, X, Y)">
<!--
// Le but: Stopper et cacher l'animation avec le double click
Merlin.StopAll();
if (!Merlin.HasOtherClients) {
if (Merlin.Visible) {
HideReq = Merlin.Hide();
}
else {
AgentControl.Characters.Character.Unload(MerlinID);
}
}
//_/_/_/_/_/_/_/_/_/_/_/_/_/_/Merci à Tous et vive Code-Source 2005_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
//-->
</script>