getting Student ID in Flash
December 27, 2010 12:00 AM
So, here's what I'm working with. I need to get the student ID from Lectora X and put it into Flash AS3.
I've tried several things, and here's my code so far:
stop();
import flash.events.*;
//var studentID:String = "ANAME";
var nameContainer:Sprite = new Sprite();
var horizontalPadding:Number = 1;
//Keeps track of the x location the next letter should be at
var currentX:Number = 18;
var currentY:Number = Math.round(Math.random() * 24);
var minLimit:uint = 14;
var maxLimit:uint = 24;
var range:uint = maxLimit - minLimit;
//var studentID:String = ExternalInterface.call("AICC_Student_ID.getValue");
//ExternalInterface.call("AICC_Student_ID.get()");
//var studentID:String = ExternalInterface.call("AICC_Student_ID.get()");
//var flashStudentId;
//flashStudentId = ExternalInterface.call("VarstudentId.getValue");
import flash.external.*;
//var flashStudentId;
//flashStudentId = ExternalInterface.call("VarstudentId.getValue");
//flashStudentId = ExternalInterface.call("flashStudentId.getValue");
//studentID = ExternalInterface.call("VarstudentId.getValue");
//var studentID:String = flashStudentId;
var studentID = ExternalInterface.call("VarstudentId.getValue()");
if (studentID == null)
{
studentID = "idonotknow";
}
/*for (var i:int = 0; i < studentID.length; i++)
{var letterMC:MovieClip = makeLetter(studentID.charAt(i));
//var letterMC:MovieClip = new iA();
letterMC.x = currentX;
letterMC.y = currentY;
currentX += 30;
//nameContainer.addChild(letterMC);
addChild(letterMC);
}*/
for (var i:int = 0; i < studentID.length; i++)
{
var letterMC:MovieClip = makeLetter(studentID.charAt(i));
letterMC.x = currentX;
letterMC.y = Math.round(Math.random() * range) + minLimit;
currentX += 30
;
//nameContainer.addChild(letterMC);
addChild(letterMC);
}
this.addChild(nameContainer);
function makeLetter(letter:String):MovieClip
{
trace(letter);
switch (letter.toLowerCase())
{
case "a" : return new iA();
case "b" : return new iB();
case "c" : return new iC();
...so on and so forth...
case "9" : return new i9();
//When it's a different letter, return an empty MovieClip
default : return new MovieClip();
}
}
[/CODE]
In Lectora, I have an action setting the AICC_Student_ID set into a variable called studentID. Originally, in Flash, my string was called studentID, but I changed it to flashStudentID. Anyone know what I'm doing wrong? Right now I either keep getting "idontknow" or "object object"[CODE]
stop();
import flash.events.*;
//var studentID:String = "ANAME";
var nameContainer:Sprite = new Sprite();
var horizontalPadding:Number = 1;
//Keeps track of the x location the next letter should be at
var currentX:Number = 18;
var currentY:Number = Math.round(Math.random() * 24);
var minLimit:uint = 14;
var maxLimit:uint = 24;
var range:uint = maxLimit - minLimit;
//var studentID:String = ExternalInterface.call("AICC_Student_ID.getValue");
//ExternalInterface.call("AICC_Student_ID.get()");
//var studentID:String = ExternalInterface.call("AICC_Student_ID.get()");
//var flashStudentId;
//flashStudentId = ExternalInterface.call("VarstudentId.getValue");
import flash.external.*;
//var flashStudentId;
//flashStudentId = ExternalInterface.call("VarstudentId.getValue");
//flashStudentId = ExternalInterface.call("flashStudentId.getValue");
//studentID = ExternalInterface.call("VarstudentId.getValue");
//var studentID:String = flashStudentId;
var studentID = ExternalInterface.call("VarstudentId.getValue()");
if (studentID == null)
{
studentID = "idonotknow";
}
/*for (var i:int = 0; i < studentID.length; i++)
{var letterMC:MovieClip = makeLetter(studentID.charAt(i));
//var letterMC:MovieClip = new iA();
letterMC.x = currentX;
letterMC.y = currentY;
currentX += 30;
//nameContainer.addChild(letterMC);
addChild(letterMC);
}*/
for (var i:int = 0; i < studentID.length; i++)
{
var letterMC:MovieClip = makeLetter(studentID.charAt(i));
letterMC.x = currentX;
letterMC.y = Math.round(Math.random() * range) + minLimit;
currentX += 30
;
//nameContainer.addChild(letterMC);
addChild(letterMC);
}
this.addChild(nameContainer);
function makeLetter(letter:String):MovieClip
{
trace(letter);
switch (letter.toLowerCase())
{
case "a" : return new iA();
case "b" : return new iB();
case "c" : return new iC();
...so on and so forth...
case "9" : return new i9();
//When it's a different letter, return an empty MovieClip
default : return new MovieClip();
}
}
[/CODE]
In Lectora, I have an action setting the AICC_Student_ID set into a variable called studentID. Originally, in Flash, my string was called studentID, but I changed it to flashStudentID. Anyone know what I'm doing wrong? Right now I either keep getting "idontknow" or "object object"
Discussions have been disabled for this post