Seite 8 von 19

Verfasst: 22. Mai 2005, 08:39
von Pjotr
Brothers31 hat geschrieben:
GGTharos hat geschrieben:
Maybe you guys can cooperate with Jabog as well - Jabog hasn't done much ATC-like, but they are more of an 'awacs' type console ... so perhaps if you guys used the same server (loatcserver? I don't know what jabog does and how) we could get the saem info displayed in different ways ... it might be better to build one big product thanoffering competing versions of the same.[/quote9bh]


Off course, really not a pb for me ( In fact i really love there view in web )

[/quote9bh]

Zillion, was meinst du? Das wäre doch eine super Ergänzung.


EDIT: Also jetzt muss ich es doch nochmals loswerden. Das Ding ist so was von endgeil! Hab mir kurz eine Mission gebastelt und beobachte wie sich die Punkte bewegen und Höhen ändern :D *freu* Das könnte ich Stundenlang machen ;)

Was mir dabei aufgefallen ist, dass es scheinbar Probleme gibt, wenn eine Ki-Rotte auf der RWY startet. Es wird nur die erste Maschine korrekt erfasst. Die zweite wird irgendwo in der Mitte der Map angezeigt.

Verfasst: 29. Mai 2005, 03:11
von Zillion
zu spät für lange worte...

Nummer 66 is aktuell und upgeloaded

https://www.virtual-jabog32.de/atc/ATC_66.swf

einfach mal ausprobieren und bugs melden

später

zillion

EDIT:

Bitte alle die export.lua die oben verlinkt ist rausnehmen, spart mir stundenlanges kopfzerbrechen

EDIT2:

AWACS Support geht noch nicht, das dann also nicht melden...
:roll:

Verfasst: 29. Mai 2005, 23:55
von Zillion
[url=http://www.virtual-jabog32.de/atc/ATC_68.swf7fc][b7fc][size=2007fc][color=blue7fc]BETA STATUS[/color7fc][/size7fc][/b7fc][/url7fc]

:P

Neu:

-Bullseye Modus und Karte abschaltbar
-Neues Bullseye Lineal. Taste "B"
-AWACS Modus funktioniert
-Dynamisches rejoinen der Kontakte

To Do:

-Echte Flughäfen ab höherer Zoomstufe
-Sector Modus
-ILS Glideslope & Return Fix
-TS Tastenkürzel Einstell Menü und entsprechende Comm Regler

usw..

-Installer und Doku

Könnte ewig weiterschreiben...

Zillion

Verfasst: 31. Mai 2005, 01:30
von Zillion
Nummer 69 is aktuell und upgeloaded

https://www.virtual-jabog32.de/atc/ATC_69.swf

einfach mal ausprobieren und bugs melden

Histories sind implementiert

später

zillion


[img4t4]http://www.polymoon.org/tobi/privat/ATC4.jpg[/img4t4]


[img4t4]http://www.polymoon.org/tobi/privat/ATC5.jpg[/img4t4]

Verfasst: 31. Mai 2005, 13:55
von Chrissi
Hi Zillion :D

Sauber! Sieht echt gut aus! :D


Bez. den Histories:
Ich würde in jeder Zoomstufe den Histories eine einheitliche Größe geben, genauso wie dem eigentlichen Flugzeugsymbol. Wenn man weit rausgezoomt hat kann man die kleinen Pünktchen nämlich kaum erkennen ;)

EDIT: Auf deinem Screenshot sieht das irgendwie besser aus wie bei mir ;) Ich werd das nochmal durchchecken :)

Verfasst: 2. Jun 2005, 09:29
von Zillion
Hi,

Habe gestern eigentlich kaum gearbeitet sondern, nur getestet. Was mir aufgefallen ist, ist das der JavaServer regelmässig abkackt. Das stellt sich so dar, dass er wunderbar funktioniert nachdem er neu gestartet wurde, für, ich würd mal sagen vielleicht 10 minuten läuft alles inklusive funktionierenden Histories. Danach fängt er an die histories abzuhacken und durchzunudeln und ein wenig später kann es auch passieren das clients vollkommen disconnected werden und die Flugzeuge über die Ukraine warpen als wären sie UFO's.

Daher suche ich nach einer alternative...

Da habe ich dann diese Liste gefunden...

https://www.flashmove.com/forum/showthread.php?t=10573

Ist eine Liste von vielen Flash kompatiblen kommerziellen und freeware XML Servern...

https://www.shovemedia.com/multiserver/ <--- Dieser sieht ganz gut aus auf Java Basis

https://swocket.sourceforge.net/ <---- Auch dieser in Phyton sieht nett aus

Gibt da auch noch mehrere andere zum testen.

Desweitern würde ich sehr gerne endlich mal erproben ob es auf unserem 100 Mbit Game Server besser läuft... Wenn ich ehrlich bin ists mir ziemlich wurscht ob im RadarServerIP Feld virtual-jabog32.de steht oder nicht...

Können wir ja mal abquatschen und testen heut abend Chrissie, hoff ich.

Später

Zillion.

Verfasst: 3. Jun 2005, 00:40
von Zillion
Alles nochmal überarbeitet...

Player rejoinen jetzt wieder richtig... Version ist nachwievor die 70er

Hab mich entschlossen mal den Quelltext zu posten... erstens seht ihr dann mal die Arbeit die drin steckt und zweitens kann vielleicht noch einer was peilen und bugfixen...

Der Java Server ist ein wenig instabil, wills auf jeden Fall nochmal auf dem dedi direkt probieren, aber ich denke wir bleiben dabei. Wenn ich einen anderen her nehme geht wieder das umschreiben los, und das ist schlimmer als neu schreiben...

[quote]
Scene 1
actions for frame 1
stop();
Symbol Definition(s)
__COMM SERVER__ //<---HAUPTSCHLEIFE
actions for frame 1
// -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
// JaBoG32 ATC
// version 1.0
//
// java server by derek clayton
// -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
// *** general init
starter = false;
PilotsSampleFull = false;
BlueMode = false;
RedMode = false;
AwacsMode = false;
FreeMode = false;
AwacsPlane = "";
IDTotal = new Array();
Alive = true;
counter = 0;
SelectedPilots = new Array();
miles = 1; //0.5399568034557235
feet = 1; //3.2808398950131234
var incomingUpdated = false; // trace whether or not we need to scroll to the end of the incoming window
incoming = ""; // clear the HTML text field so it doesn't start with a blank <P> tag
// attach the scroll manager movie (see its child movie's enterframe event for scroll code)
// note that we only need the scroll manager because of text field bugs in r30 of the flash 5 player
attachMovie("processScroll", "processScroll", 0);
var click = new Sound(); // sound to play when user receives a message
click.attachSound("click");
var welcomeSound = new Sound(); // sound to play when user joins or leaves
welcomeSound.attachSound("welcome");
// turn off ugly yellow highlight on buttons
_focusrect = 0;
// *** creates a new socket and attempts to connect to the server
function connect () {
mySocket = new XMLSocket();
mySocket.onConnect = handleConnect;
mySocket.onClose = handleClose;
mySocket.onXML = handleIncoming;
// specify your server and port number here
if (!mySocket.connect(serverIP, 3245))
gotoAndStop("connectionFailed");
mySocket.host = host;
mySocket.port = port;
}
// *** event handler to respond to the completion of a connection attempt
function handleConnect (succeeded) {
if(succeeded) {
mySocket.connected = true;
gotoAndStop("menu");
} else {
gotoAndStop("connectionFailed");
//trace("connection failed");
}
}
// *** event handler called when server kills the connection
function handleClose () {
incoming += ("the server at " + mySocket.host + " has terminated the connection.\n");
incomingUpdated = true;
mySocket.connected = false;
numClients = 0;
}
// *** event handler to receive and display incoming messages
function handleIncoming (messageObj) {
// display the received xml data in the output window
//trace("--------new data received-----------");
//trace(">>" + messageObj.toString() + "<<");
//trace("-------- end of new data -----------");
// tell the text field manager it's time to scroll
incomingUpdated = true;
lastScrollPos = _root.commserver.UI.incoming2.scroll;
// check the time
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds();
hours = (hours < 10 ? "0" : "") + hours;
minutes = (minutes < 10 ? "0" : "") + minutes;
seconds = (seconds < 10 ? "0" : "") + seconds;
// the server sends NUMCLIENTS any time a client connects or disconnects.
// if we find NUMCLIENTS in the xml object...
if (messageObj.firstChild.nodeName == "NUMCLIENTS") {
// ...then check if the incoming messages window is empty. if it is...
if(incoming == "") {
// ...then the user is new, so welcome them
incoming += ("<FONT COLOR='#507373'><B>welcome to JaBoG32 ATC 1.0, "
+ convertTags(userID) + "\n"
+ "connection time:</B> " + hours + ":" + minutes + ":" + seconds + "\n");
}
/* else {
// otherwise, someone has arrived or departed, so tell the user
if(parseInt(messageObj.firstChild.firstChild.nodeValue) > numClients) {
// report the client arrival in the chat window
incoming += ("<FONT COLOR='#507373'><B>" + hours + ":" + minutes + ":"
+ seconds + " A new user has connected." + "</B></FONT>" + "\n");
} else if (parseInt(messageObj.firstChild.firstChild.nodeValue) < numClients) {
// report the client departure in the chat window
incoming += ("<FONT COLOR='#507373'><B>" + hours + ":" + minutes + ":"
+ seconds + " A user disconnected." + "</B></FONT>" + "\n");
}
}*/
// finally, keep track of the number of clients and play a welcome sound
//welcomeSound.setVolume(100);
//welcomeSound.start();
numClients = messageObj.firstChild.firstChild.nodeValue;
} else {
// CONTROLLER node was found, so this is just a regular message.
if(messageObj.firstChild.nodeName == "C") {
// grab the user name and message from our xml object
var user = messageObj.firstChild.firstChild.nodeValue;
var message = messageObj.childNodes[1].firstChild.nodeValue;
// add the message to the chat window, with a time stamp
incoming += ("<FONT COLOR='#507373'>" + hours + ":" + minutes + ":"
+ seconds + "<B>" + unescape(user) + "</B>>> " + addLinks(unescape(message)) + "\n");
// now do the new message click. if it's been more than 30 secs since the last message,
// sound a loud click. otherwise sound a quiet click
/*trace("time since last message: "+(now-lastIncomingMessageTime));
if (lastIncomingMessageTime && now-lastIncomingMessageTime>30000) {
trace("BEEEP")
} else {
trace("beeep")
}
click.start();
*/
// the server sends PILOT if its a Pilots Data Message
// if we find PILOT in the xml object...
} else {

if(messageObj.firstChild.nodeName == "P") {

var ID = messageObj.firstChild.firstChild.nodeValue;
var ConvertData = messageObj.childNodes[1].firstChild.nodeValue.split(":");
var ModelTime = ConvertData[0]
var Pilot = ConvertData[1]
var inLatitudeGrad = ConvertData[3];
var inLongitudeGrad = ConvertData[4];
latlong2xz (inLongitudeGrad,inLatitudeGrad);

if(ConvertData[2] == "Allies"){
var Coalition = "R";
}else if(ConvertData[2] == "Enemies"){
var Coalition = "B";}

Data = ConvertData[0]+":"+ConvertData[1]+":"+Coalition+":"+returns+":"+ConvertData[5];

if(_root.commserver.starter == false){
CreatePilotList(ID, Data);
PushData(ID, Data);
}

if(_root.commserver.starter == true){

if(_root.commserver.BlueMode == true && AwacsMode == false && Coalition == "B"){

xsist = false;
RemoveDead(ModelTime)
UpdatePilotList(ID);
AddItem(xsist,ID, Data);
PushData(ID, Data)
plotData();
}else if(_root.commserver.RedMode == true && AwacsMode == false && Coalition == "R"){
xsist = false;
RemoveDead(ModelTime)
UpdatePilotList(ID);
AddItem(xsist,ID, Data);
PushData(ID, Data)
plotData();
}else if(_root.commserver.FreeMode == true){
xsist = false;
RemoveDead(ModelTime)
UpdatePilotList(ID);
AddItem(xsist,ID, Data);
PushData(ID, Data)
plotData();
}else if(_root.commserver.RedMode == true && AwacsMode == true){
xsist = false;
CheckForAWACS(ModelTime)
RemoveDead(ModelTime)
if(Alive == true){
UpdatePilotList(ID);
AddItem(xsist,ID, Data);
PushData(ID, Data)
plotData();
}
}else if(_root.commserver.BlueMode == true && AwacsMode == true){
xsist = false;
CheckForAWACS(ModelTime)
RemoveDead(ModelTime)
if(Alive == true){
UpdatePilotList(ID);
AddItem(xsist,ID, Data);
PushData(ID, Data)
plotData();
}
}
}

//incoming += (hours + ":" + minutes + ":" + seconds + "<B>" + unescape(Pilot) + "</B>>> " + addLinks(unescape(Data)) + "\n");


} else {

if(messageObj.firstChild.nodeName == "S") {
var user = messageObj.firstChild.firstChild.nodeValue;
var message = messageObj.childNodes[1].firstChild.nodeValue;
incoming += ("<FONT COLOR='#F90000'><B>" + unescape(user) + "</B>>> " + addLinks(unescape(message)) + "\n");
}
}
}
}
// truncate the contents of the incoming messages window if it's longer than 5000 characters
//if(incoming.length > 5000) {
// var nearestNewline = incoming.indexOf("\n", incoming.length - 5000);
// incoming = incoming.substring(nearestNewline, incoming.length);
//}
// remember when this message arrived for next time
}
function sendSMessage(Smessage) {
// create the message to send as an xml source fragment. we're sending html so we
// have to escape our text and change < and > to entities via convertTags
var message = '<S>%20SERVER</S><M>'
+ escape(convertTags(Smessage)) + '%20</M>'; // note that the forced spaces (%20) are required so
// MESSAGE and USER always have a text child node
// convert the message into an xml object hierarchy
messageObj = new XML();
messageObj.parseXML(message);
// check what we're sending
//trace("Sending: " + messageObj);
// if a socket object has been created and is connected, send the xml message
// otherwise warn the user that they need to connect
if (mySocket && mySocket.connected) {
mySocket.send(messageObj);
outgoing = "";
} else {
// the server must have kicked us off...
incoming += "<FONT COLOR='#507373'><B>you are no longer connected. please reconnect."
+ "</B></FONT>\n";
incomingUpdated = true;
}
}
// *** sends a new xml object to the server
function sendMessage() {
// create the message to send as an xml source fragment. we're sending html so we
// have to escape our text and change < and > to entities via convertTags
var message = '<C>%20' + escape(convertTags(userID)) + '</C><M>'
+ escape(convertTags(outgoing)) + '%20</M>'; // note that the forced spaces (%20) are required so
// MESSAGE and USER always have a text child node
// convert the message into an xml object hierarchy
messageObj = new XML();
messageObj.parseXML(message);
// check what we're sending
//trace("Sending: " + messageObj);
// if a socket object has been created and is connected, send the xml message
// otherwise warn the user that they need to connect
if (mySocket && mySocket.connected) {
mySocket.send(messageObj);
outgoing = "";
} else {
// the server must have kicked us off...
incoming += "<FONT COLOR='#507373'><B>you are no longer connected. please reconnect."
+ "</B></FONT>\n";
incomingUpdated = true;
}
}
// *** closes the connection to the server
function quit() {
if (mySocket.connected) {
mySocket.close();
mySocket.connected = false;
numClients = 0;
incoming = "";
gotoAndStop("login");
}
}
// *** changes < and > to < and >
function convertTags(theString) {
var tempString = "";
for(var i = 0; i < theString.length; i++) {
if(theString.charAt(i) == "<") {
tempString += "<";
} else if (theString.charAt(i) == ">") {
tempString += ">";
} else {
tempString += theString.charAt(i);
}
}
//trace("tempString: " + tempString);
return tempString;
}
// *** inserts <A> tags into a string anywhere a "www" occurs
function addLinks (theString) {
var startIndex = 0;
var tempString = "";
var linkString;
var URL;
var beginURL;
var endURL;
if(theString.indexOf("www") != -1) {
while(theString.indexOf("www", startIndex) != -1) {
tempString += theString.substring(startIndex, theString.indexOf("www", startIndex));
beginURL = theString.indexOf("www", startIndex);
endURL = (theString.indexOf(" ", beginURL) != -1) ? theString.indexOf(" ", beginURL) : theString.length;
URL = theString.substring(beginURL, endURL);
linkString = "<A HREF='https://" + URL + "' TARGET='_blank'><U><FONT COLOR='#FFFFCC'>" + URL + "</FONT></U></A>";
tempString += linkString;
startIndex = endURL;
}
tempString += theString.substring(endURL, theString.length);
return tempString;
} else {
return theString;
}
}
function latlong2xz (inLongitudeGrad,inLatitudeGrad) {
//trace(inLongitudeGrad+" : "+inLatitudeGrad)
var ToDegree = 180/Math.PI;
var zeroX = 5000000;
var zeroZ = 6600000;
var centerX = 11465000-zeroX;
var centerZ = 6500000-zeroZ;
var pn40x24_X = 4468608.57-zeroX; // point 40dgN : 24dgE
var pn40x24_Z = 5730893.72-zeroZ;
var pn48x24_X = 5357858.31-zeroX; // point 48dgN : 24dgE
var pn48x24_Z = 5828649.53-zeroZ;
var pn40x42_X = 4468608.57-zeroX; // point 40dgN : 42dgE
var pn40x42_Z = 7269106.20-zeroZ;
var pn48x42_X = 5357858.31-zeroX; // point 48dgN : 42dgE
var pn48x42_Z = 7171350.00-zeroZ;
// distances from the circle center to 48dgN and 40dgN
var lenNorth = Math.sqrt((pn48x24_X-centerX)*(pn48x24_X-centerX)+(pn48x24_Z-centerZ)*(pn48x24_Z-centerZ));
var lenSouth = Math.sqrt((pn40x24_X-centerX)*(pn40x24_X-centerX)+(pn40x24_Z-centerZ)*(pn40x24_Z-centerZ));
var lenN_S = lenSouth-lenNorth;
var RealAngleMaxLongitude = Math.atan((pn40x24_Z-centerZ)/(pn40x24_X-centerX))*ToDegree;
// Map bounds. Degrees!
var EndWest = 24;
var EndEast = 42;
var EndNorth = 48;
var EndSouth = 40;
var MiddleLongitude = (EndWest+EndEast)/2;
var ToLengthN_S = (EndNorth-EndSouth)/lenN_S;
var ToAngleW_E = (MiddleLongitude-EndWest)/RealAngleMaxLongitude;
var realAng = (inLongitudeGrad-MiddleLongitude)/ToAngleW_E/ToDegree;
var realLen = lenSouth-(inLatitudeGrad-EndSouth)/ToLengthN_S;
var outX = centerX-realLen*Math.cos(realAng);
var outZ = centerZ+realLen*Math.sin(realAng);
returns = outX+":"+outZ;
return returns;
}
function CreatePilotList(ID, Data) {
if (IDTotal[0][0] != ID && PilotsSampleFull == false){
var pdata = ""
IDTotal.push([ID,pdata]);
IDTotal[IDTotal.length -1][1] = new Array();
var Datalist = Data.split(":")
_root.commserver.menu2.PlayersList.addItem(DataList[2]+" - "+DataList[1]);
}else if (IDTotal[0][0] == ID) {
PlayerCount = IDTotal.length;
PilotsSampleFull = true;
return PlayerCount;
}
}
function AddItem(xsist,ID,Data) {
if (xsist == false){
var pdata = ""
IDTotal.push([ID,pdata]);
IDTotal[IDTotal.length -1][1] = new Array();
IDTotal[IDTotal.length -1][1].push(Data)
xsist = true;
newPlane = IDTotal.length -1;
CreateNewPlane(newPlane);
AssignNewValues(newPlane);
}
}
function UpdatePilotList(ID) {
for(var i=0; i<IDTotal.length; i++){
if (IDTotal[0] == ID){
xsist = true
}
}
}
function RemoveDead(ModelTime) {
for(var i=0; i<IDTotal.length; i++){
var last = IDTotal[1][IDTotal[1].length-1].split(":")
if(ModelTime - last[0] > 10){
//trace("player left");
//_root.commserver.mapZoomer.map2.ED[IDTotal[0]]._visible = false;
_root.commserver.mapZoomer.map2.ED[IDTotal[0]].removeMovieClip();
_root.commserver.mapZoomer.map2.ED[IDTotal[0]+"H1"].removeMovieClip();
_root.commserver.mapZoomer.map2.ED[IDTotal[0]+"H2"].removeMovieClip();
_root.commserver.mapZoomer.map2.ED[IDTotal[0]+"H3"].removeMovieClip();
_root.commserver.mapZoomer.map2.ED[IDTotal[0]+"H4"].removeMovieClip();
_root.commserver.mapZoomer.map2.ED[IDTotal[0]+"H5"].removeMovieClip();
IDTotal[i].splice(0);
}
}
}
function CheckForAWACS(ModelTime) {
for(var i=0; i<IDTotal.length; i++){
var last = IDTotal[i][1][IDTotal[i][1].length-1].split(":")
if(AwacsPlane == last[1] && ModelTime - last[0] > 10){
for(var i=0; i<IDTotal.length; i++){
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].removeMovieClip();
IDTotal[i].splice(0);
}
Alive = false;
gotoAndStop("AWACS");
return Alive;
}
}
}
function PushData(ID, Data) {
for(var i=0; i<IDTotal.length; i++){
if(ID == IDTotal[i][0]){
IDTotal[i][1].push(Data);
}
if(IDTotal[i][1].length > 6){
IDTotal[i][1].splice(0,1)
}
}
}
function CreatePlanes() {
for(i=0, j=5; i<IDTotal.length; i++, j++){
_level0.commserver.mapZoomer.map2.ED.attachMovie("PlaneX", IDTotal[i][0], j*j);
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[i][0]+"H1", j*j+1)
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[i][0]+"H2", j*j+2)
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H2"]._alpha = 90
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[i][0]+"H3", j*j+3)
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H3"]._alpha = 70
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[i][0]+"H4", j*j+4)
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H4"]._alpha = 50
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[i][0]+"H5", j*j+5)
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H5"]._alpha = 40
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].gid = IDTotal[i][0]
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H5"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H5"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H4"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H4"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H3"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H3"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H2"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H2"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H1"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H1"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
}
}
function CreateNewPlane(newPlane) {
_root.commserver.j += 1;
_level0.commserver.mapZoomer.map2.ED.attachMovie("PlaneX", IDTotal[newPlane][0], j*j);
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].gid = IDTotal[newPlane][0]
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[newPlane][0]+"H1", j*j+1)
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[newPlane][0]+"H2", j*j+2)
_root.commserver.mapZoomer.map2.ED[IDTotal[newPlane][0]+"H2"]._alpha = 90
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[newPlane][0]+"H3", j*j+3)
_root.commserver.mapZoomer.map2.ED[IDTotal[newPlane][0]+"H3"]._alpha = 70
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[newPlane][0]+"H4", j*j+4)
_root.commserver.mapZoomer.map2.ED[IDTotal[newPlane][0]+"H4"]._alpha = 50
_level0.commserver.mapZoomer.map2.ED.attachMovie("History", IDTotal[newPlane][0]+"H5", j*j+5)
_root.commserver.mapZoomer.map2.ED[IDTotal[newPlane][0]+"H5"]._alpha = 40
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H5"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H5"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H4"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H4"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H3"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H3"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H2"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H2"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H1"]._xscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[newPlane][0]+"H1"]._yscale = 100 * (1 / (Math.round(_level0.commserver.mapZoomer._xscale)/100));
}
function AssignConstantValues() {
for(var i=0; i<IDTotal.length; i++){
if (_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].gid == IDTotal[i][0]){
//Hole entsprechenden Namen aus SelectedPilotArray und trenne Flugzeug Typ und Name auf "(" in 2 Elemente
NData = IDTotal[i][1][0].split(":")
var typeName = NData[1].split("(")
var Coalition = NData[2]
//Entferne ")" vom Flugzeug Typ
if(typeName[1].substring(0,typeName[1].length-1) != "Me"){
var Name = typeName[1].substring(0,typeName[1].length-1);
}else if(typeName[1].substring(0,typeName[1].length-1) == "Me"){
var Name = typeName[2].substring(0,typeName[2].length-1);
}
//Weise dem namensFeld den Namen zu
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.id = Name
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.coalition_type = Coalition +"/"+ typeName[0]
}
}
}
function AssignNewValues(newPlane) {
//Hole entsprechenden Namen aus SelectedPilotArray und trenne Flugzeug Typ und Name auf "(" in 2 Elemente
var NData = IDTotal[newPlane][1][0].split(":")
var typeName = NData[1].split("(")
var Coalition = NData[2]
//Entferne ")" vom Flugzeug Typ
if(typeName[1].substring(0,typeName[1].length-1) != "Me"){
Name = typeName[1].substring(0,typeName[1].length-1);
}else if(typeName[1].substring(0,typeName[1].length-1) == "Me"){
Name = typeName[2].substring(0,typeName[2].length-1);
}
//Weise dem namensFeld den Namen zu
_root.commserver.mapZoomer.map2.ED[IDTotal[newPlane][0]].DataLine.P2.id = Name
_root.commserver.mapZoomer.map2.ED[IDTotal[newPlane][0]].DataLine.P2.coalition_type = Coalition +"/"+ typeName[0]
}
function plotData(){
//Für jeden Piloten:
for(var i=0;i<IDTotal.length;i++){
//Wenn dynamisch erzeugtes Flugzeug dem Array Element entspricht UND dessen Data Array länge 5 Stellen hat
if (_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]].gid == _root.commserver.IDTotal[i][0] && _root.commserver.IDTotal[i][1].length == 6){
//Nimm die 5. Stelle des Data Arrays des entsprechenden Piloten und teile auf ":" in 4 Elemte (Enemy oder Allies / Lat / Long / Alt)
var dataTmpO5 = IDTotal[i][1][0].split(":");
var dataTmpO4 = IDTotal[i][1][1].split(":");
var dataTmpO3 = IDTotal[i][1][2].split(":");
var dataTmpO2 = IDTotal[i][1][3].split(":");
var dataTmpO1 = IDTotal[i][1][4].split(":");
var dataTmp = IDTotal[i][1][5].split(":");
//Die Alte Höhe & Aktuelle Höhe durch 100 teilen runden Variable zuweisen
var CurrAlt = Math.round((dataTmp[5] * feet) /100)
var OldAlt = Math.round((dataTmpO2[5] * feet) /100)
var ShownAlt
if(CurrAlt < 10){ShownAlt = "00"+CurrAlt;}else if(CurrAlt >= 10 && CurrAlt < 100){ShownAlt = "0"+CurrAlt;}else if(CurrAlt >= 100){ShownAlt = CurrAlt;}
if(CurrAlt > OldAlt){
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.ArrowUp._visible = true;
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.ArrowDown._visible = false;
}else if (CurrAlt < OldAlt){
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.ArrowUp._visible = false;
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.ArrowDown._visible = true;
}else if (CurrAlt == OldAlt){
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.ArrowUp._visible = false;
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.ArrowDown._visible = false;
}
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.curr_alt = ShownAlt;
//Last not Least die Position Plotten
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]]._y = (dataTmp[3]*_root.commserver.mapZoomer.map2.ED.Faktor*-1)-135.4
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]]._x = (dataTmp[4]*_root.commserver.mapZoomer.map2.ED.Faktor)-750.2
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H1"]._y = (dataTmpO1[3]*_root.commserver.mapZoomer.map2.ED.Faktor*-1)-135.4
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H1"]._x = (dataTmpO1[4]*_root.commserver.mapZoomer.map2.ED.Faktor)-750.2
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H2"]._y = (dataTmpO2[3]*_root.commserver.mapZoomer.map2.ED.Faktor*-1)-135.4
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H2"]._x = (dataTmpO2[4]*_root.commserver.mapZoomer.map2.ED.Faktor)-750.2
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H3"]._y = (dataTmpO3[3]*_root.commserver.mapZoomer.map2.ED.Faktor*-1)-135.4
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H3"]._x = (dataTmpO3[4]*_root.commserver.mapZoomer.map2.ED.Faktor)-750.2
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H4"]._y = (dataTmpO4[3]*_root.commserver.mapZoomer.map2.ED.Faktor*-1)-135.4
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H4"]._x = (dataTmpO4[4]*_root.commserver.mapZoomer.map2.ED.Faktor)-750.2
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H5"]._y = (dataTmpO5[3]*_root.commserver.mapZoomer.map2.ED.Faktor*-1)-135.4
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]+"H5"]._x = (dataTmpO5[4]*_root.commserver.mapZoomer.map2.ED.Faktor)-750.2
CalcGroundSpeed(dataTmpO3[0], dataTmp[0], dataTmpO3[3], dataTmpO3[4], dataTmp[3], dataTmp[4]);
Speed = SpeedR.split("/")
_root.commserver.mapZoomer.map2.ED[IDTotal[i][0]].DataLine.P2.grnd_speed = Speed[0];
}
}
}
function CalcGroundSpeed(P1T, P2T, P1y, P1x, P2y, P2x){
var TimeFaktor = 3600 / (P2T - P1T)
var Distance = Math.sqrt((P2x - P1x) * (P2x - P1x)+(P2y - P1y) * (P2y - P1y));
var SpeedVisible = TimeFaktor * Distance
var SpeedKMH = TimeFaktor * Distance / 10000 * miles
var SpeedReturn_Tmp = Math.round(SpeedKMH)*1;
SpeedR = SpeedReturn_Tmp+"/"+SpeedVisible
return SpeedR[/colorfey]
}
actions for frame 5
if (_framesloaded > 0 && _framesloaded == _totalframes) {
gotoAndStop("login");
}
actions for frame 6
gotoAndPlay("loadCheck");
actions for frame 14
Alive = true;
actions for frame 42
_root.commserver.CreatePlanes();
_root.commserver.AssignConstantValues();
actions for frame 29
_level0.commserver.UI_Menu.Connecting._visible = false;
_level0.commserver.UI_Menu.ConnFail._visible = true;
actions for frame 47
starter = false;
PilotsSampleFull = false;
BlueMode = false;
RedMode = false;
AwacsMode = false;
FreeMode = false;
AwacsPlane = "";
IDTotal = new Array();

UI //<---User Interfaces & Zoom usw.
actions for UI
onClipEvent (load) {
Stage.scaleMode = "noScale";
_root.commserver.UI._width = Stage.width;
_root.commserver.UI._height = Stage.height ;
}
actions for UI
onClipEvent (load) {
Stage.scaleMode = "noScale";
_root.commserver.UI._width = Stage.width;
_root.commserver.UI._height = Stage.height ;
}
actions for UI_Menu
onClipEvent(enterFrame){
Stage.scaleMode = "noScale";
this._width = Stage.width * 1;
this._height = Stage.height * 1;
}
actions for frame 14
_level0.commserver.UI_Menu.connecting._visible = false;
_level0.commserver.UI_Menu.BBall._visible = false;
_level0.commserver.UI_Menu.ConnFail._visible = false;
actions for UI_Menu
onClipEvent (load) {
Stage.scaleMode = "noScale";
_root.commserver.UI_Menu._width = Stage.width;
_root.commserver.UI_Menu._height = Stage.height ;
}
actions for UI_Menu2
onClipEvent (load) {
Stage.scaleMode = "noScale";
this._width = Stage.width;
this._height = Stage.height;
_root.commserver.menu2.PlayersList._visible = false;
_root.commserver.menu2.startButton._visible = false;
//AwacsSupport._visible = false;
info = "Please select your Team or choose Fun Mode after Players have been checked."
}
onClipEvent (enterFrame) {
if (_level0.commserver.PilotsSampleFull == true){
//_root.commserver.menu2.PlayersList.sortItemsBy("label", "ASC");
checking._visible = false;
BBall._visible = false;
}
}
waitAtFrame
actions for frame 1
_visible = 0;
_parent.stop();
startTime = getTimer();
function checkTime() {
currentTime = getTimer();
if (currentTime - startTime >= delay) {
if (playAfterDelay == "yes") {
_parent.gotoAndPlay(destination);
} else {
_parent.gotoAndStop(destination);
}
}
}
actions for processClip
onClipEvent(enterframe) {
_parent.checkTime();
}

actions for frame 1
Zoom = Math.round(_level0.commserver.mapZoomer._xscale);
ZoomF = 1 / (Zoom/100);
Stage.addListener(this);
this.onResize = function() {
_root.commserver.UI._width = Stage.width;
_root.commserver.UI._height = Stage.height ;
};
Bullseye = false;
coastline = true;
actions for ZoomIn
on (press) {
Zoomin = true
}
on (release) {
Zoomin = false}
on (releaseOutside){
Zoomin = false}
actions for ZoomOut
on (press) {
Zoomout = true
}
on (release) {
Zoomout = false
}
on (releaseOutside){
Zoomout = false}
actions for scrollButton
onClipEvent (enterFrame) {
if (scrollOn) {
_root.commserver.UI.incoming2.scroll++;
}
}
actions for scrollButton
onClipEvent (enterFrame) {
if (scrollOn) {
_root.commserver.UI.incoming2.scroll--;
}
}
actions for button: send
on (press) {
_root.commserver.UI.incoming2.scroll++;
_parent.sendMessage();
}
on (keyPress "<ENTER>") {
if (Selection.getFocus() == "_level0.commserver.UI.outgoing2" ) {
_root.commserver.UI.incoming2.scroll++;
_parent.sendMessage();
}
}
actions for button: quit
on (press) {
_parent.starter = false;
_parent.PilotsSampleFull = false;
_parent.BlueMode = false;
_parent.RedMode = false;
_parent.AwacsMode = false;
_parent.FreeMode = false;
_parent.AwacsPlane = "";
_parent.IDTotal = new Array();
_parent.Alive = true;
_parent.quit();
}
actions for ZoomInSmooth
onClipEvent (enterFrame) {
if(_root.commserver.UI.Zoomin == true) {
Zoom = Math.round(_level0.commserver.mapZoomer._xscale);
ZoomF = 1 / (Zoom/100);
_level0.commserver.mapZoomer._xscale += Zoom/20;
_level0.commserver.mapZoomer._yscale += Zoom/20;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P1._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P1._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P2._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P2._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED.RingDrawer.ringdragger._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED.RingDrawer.ringdragger._yscale = 100 * ZoomF;
for (var i=0; i < _root.commserver.IDTotal.length; i++){
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H5"]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H5"]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H4"]._xscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H4"]._yscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H3"]._xscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H3"]._yscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H2"]._xscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H2"]._yscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H1"]._xscale = 100 * ZoomF;;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H1"]._yscale = 100 * ZoomF;;
}
//trace(_level0.map._width+" , "+_level0.map._height+"/"+_level0.map._xscale+" , "+_level0.map._yscale);
}
}
actions for ZoomOutSmooth
onClipEvent (enterFrame) {
if (_level0.commserver.mapZoomer._xscale > 80 && _root.commserver.UI.Zoomout == true ) {
Zoom = Math.round(_level0.commserver.mapZoomer._xscale);
ZoomF = 1 / (Zoom/100);
_level0.commserver.mapZoomer._xscale -= Zoom/20;
_level0.commserver.mapZoomer._yscale -= Zoom/20;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P1._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P1._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P2._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.Ruler.P2._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED.RingDrawer.ringdragger._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED.RingDrawer.ringdragger._yscale = 100 * ZoomF;
for (var i=0; i < _root.commserver.IDTotal.length; i++){
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H5"]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H5"]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H4"]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H4"]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H3"]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H3"]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H2"]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H2"]._yscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H1"]._xscale = 100 * ZoomF;
_root.commserver.mapZoomer.map2.ED[_root.commserver.IDTotal[i][0]+"H1"]._yscale = 100 * ZoomF;
}
//trace(_level0.map._width+" , "+_level0.map._height+"/"+_level0.map._xscale+" , "+_level0.map._yscale);
}
}
actions for Imperial
on (press) {
_parent.miles = 0.5399568034557235
_parent.feet = 3.2808398950131234
}
actions for metric
on (press) {
_parent.miles = 1
_parent.feet = 1
}
actions for BullseyeB
on (press) {
if(Bullseye == false){
Bullseye = true;
_root.commserver.mapZoomer.map2.RingDrawer._visible = true;
}else if(Bullseye == true){
Bullseye = false;
_root.commserver.mapZoomer.map2.RingDrawer._visible = false;
}
}
actions for MapB
on (press) {
if(Coastline == false){
Coastline = true;
_root.commserver.mapZoomer.map2.ED.Coastline._visible = true;
}else if(Coastline == true){
Coastline = false;
_root.commserver.mapZoomer.map2.ED.Coastline._visible = false;
}
}
UI_Menu
actions for frame 1
//StageListener = new Object();
//StageListener.onResize = function () {
//this._width = Stage.width;
//this._height = Stage.height ;
//}
//Stage.addListener(StageListener);
Stage.addListener(this);
this.onResize = function() {
_root.commserver.UI_Menu._width = Stage.width;
_root.commserver.UI_Menu._height = Stage.height ;
};
actions for button: log in
on (release, keyPress "<ENTER>") {
if(_parent.userID == "" || _parent.userID == undefined) {
_parent.userID = "Controller"
}
if(_parent.serverIP == "" || _parent.serverIP == undefined) {
_parent.serverIP = "www.virtual-jabog32.de";
}
_root.commserver.gotoAndStop("connecting");
_root.commserver.connect();
connecting._visible = true;
BBall._visible = true;
}
UI_Menu2
actions for frame 1
Stage.addListener(this);
this.onResize = function() {
this._width = Stage.width;
this._height = Stage.height;
};
startButton._visible = false;
AwacsSupport._visible = false;
PlayersList.setStyleProperty("background", 0x000000);
PlayersList.setStyleProperty("arrow", 0x000000);
PlayersList.setStyleProperty("face", 0x666666);
PlayersList.setStyleProperty("scrollTrack", 0x666666);
PlayersList.setStyleProperty("textColor", 0xCCFFFF);
actions for start
on (release) {
var TAwacsPlane = PlayersList.getSelectedItem();
_root.commserver.AwacsPlane = TAwacsPlane.label.substring(4);
if(_level0.commserver.RedMode == true && _level0.commserver.AwacsMode == false){
Smessage = _parent.userID + " has joined in Red Team without AWACS Support.";
}else if(_level0.commserver.BlueMode == true && _level0.commserver.AwacsMode == false){
Smessage = _parent.userID + " has joined in Blue Team without AWACS Support.";
}else if(_level0.commserver.RedMode == true && _level0.commserver.AwacsMode == true){
Smessage = _parent.userID + " has joined in Red Team with AWACS Support.\n Selected AWACS is "+TAwacsPlane.label;
}else if(_level0.commserver.BlueMode == true && _level0.commserver.AwacsMode == true){
Smessage = _parent.userID +" has joined in Blue Team with AWACS Support.\n Selected AWACS is "+TAwacsPlane.label;
}else if(_level0.commserver.FreeMode == true){
Smessage = _parent.userID +" has joined in Free Mode"
}else if(_level0.commserver.RedMode == true && _level0.commserver.AwacsMode == true && _root.commserver.AwacsPlane == ""){
Smessage = _parent.userID + " has joined in Red Team without AWACS Support.";
}else if(_level0.commserver.BlueMode == true && _level0.commserver.AwacsMode == true && _root.commserver.AwacsPlane == ""){
Smessage = _parent.userID +" has joined in Blue Team without AWACS Support.";
}
_root.commserver.starter = true;
_parent.sendSMessage(Smessage);
_root.commserver.gotoAndStop("chat");
}
actions for AwacsMode
on (release) {
_root.commserver.AwacsMode = true;
info = "You have enabled AWACS Support. Please select your AWACS or Ground Controlled Intercept Radar from the list below.";
var amount = PlayersList.getLength();
var stay = new Array();
for(var i=0; i < amount; i++){
var TempName = PlayersList.getItemAt(i);
var indexK = TempName.label.indexOf("(")
newName = TempName.label.substring(0, indexK)
if(_root.commserver.BlueMode == true){
if(newName == "B - E-3A" ){
stay.push(TempName.label);
}else if(newName == "B - E-2C"){
stay.push(TempName.label);
}else if(newName == "B - A-50"){
stay.push(TempName.label);
}
}
if(_root.commserver.RedMode == true){
if(newName == "R - E-3A" ){
stay.push(TempName.label);
}else if(newName == "R - E-2C"){
stay.push(TempName.label);
}else if(newName == "R - A-50"){
stay.push(TempName.label);
}
}
}
PlayersList.removeAll();
PlayersList.setDataProvider(stay)
var All = stay.length;
if(All == 0){
info = "You have enabled AWACS Support. Unfortunatly there are no AWACS Planes in your team, therefore AWACS Support has been disabled"
_root.commserver.AwacsMode = false;
}if(All != 0){
PlayersList._visible = true;
}
}


actions for ListBox
onClipEvent (load) {
this._visible = false;
}
actions for button: quit
on (press) {
_parent.starter = false;
_parent.PilotsSampleFull = false;
_parent.BlueMode = false;
_parent.RedMode = false;
_parent.AwacsMode = false;
_parent.FreeMode = false;
_parent.AwacsPlane = "";
_parent.IDTotal = new Array();
_parent.Alive = true;
_parent.quit();
}
actions for TeamRedMode
on (release, releaseOutside) {
_root.commserver.RedMode = true;
_root.commserver.BlueMode = false;
_root.commserver.FreeMode = false;
if (_level0.commserver.PilotsSampleFull == true){
info = "You are now Controlling the Red Team, press AWACS Support if you wish to select an AWACS Plane for your Team.";
FreeMode._visible = false;
AwacsSupport._visible = true;
//PlayersList._visible = true;
_root.commserver.menu2.startButton._visible = true;
}
}
actions for TeamBlueMode
on (release, releaseOutside) {
if (_level0.commserver.PilotsSampleFull == true){
_root.commserver.RedMode = false;
_root.commserver.BlueMode = true;
_root.commserver.FreeMode = false;
info = "You are now Controlling the Blue Team, press AWACS Support if you wish to select an AWACS Plane for your Team.";
FreeMode._visible = false;
AwacsSupport._visible = true;
//PlayersList._visible = true;
_root.commserver.menu2.startButton._visible = true;
}
}
actions for FreeMode
on (release, releaseOutside) {
_root.commserver.FreeMode = true;
_root.commserver.RedMode = false;
_root.commserver.BlueMode = false;
if (_level0.commserver.PilotsSampleFull == true){
info = "You are now Controlling all Planes, without restrictions";
AwacsSupport._visible = false;
_root.commserver.menu2.startButton._visible = true;
}
}
scrollButton
actions for button: scroll arrow
on (press) {
scrollOn = true;
}
on (release) {
scrollOn = false;[/colorfey]

ListBox //<--- Alles in Olive Grün ist unwichtig und nicht von mir...
actions for frame 1
#initclip 3
/*
FListBoxClass
EXTENDS FSelectableListClass
IMPLEMENTS FListItemClass
This class is the manager of the items within it.
*/
function FListBoxClass()
{
this.itemSymbol = "FListItemSymbol";
this.init();
// Test any params for undefined; if so, set defaults
this.permaScrollBar = true;
for (var i=0; i<this.labels.length; i++) {
this.addItem(this.labels[i], this.data[i]);
}
this.boundingBox_mc.gotoAndStop(1);
this.width = this._width;
this.height = this._height;
this._yscale = this._xscale = 100;
this.setSize(this.width, this.height);
if (this.changeHandler.length>0) {
this.setChangeHandler(this.changeHandler);
}
}
FListBoxClass.prototype = new FScrollSelectListClass();
Object.registerClass("FListBoxSymbol", FListBoxClass);
// ::: PUBLIC METHODS
FListBoxClass.prototype.getSelectedIndices = function()
{
var tmpArray = new Array();
for (var i in this.selected) {
tmpArray.push(this.selected[i].sIndex);
}
return (tmpArray.length>0) ? tmpArray : undefined;
}
FListBoxClass.prototype.getSelectedItems = function()
{
var indices = this.getSelectedIndices();
var tmpArray= new Array();
for (var i=0; i<indices.length; i++) {
tmpArray.push(this.getItemAt(indices[i]));
}
return (tmpArray.length>0) ? tmpArray : undefined;
}
FListBoxClass.prototype.getSelectMultiple = function()
{
return this.selectMultiple;
}
FListBoxClass.prototype.getRowCount = function()
{
return this.numDisplayed;
}
FListBoxClass.prototype.setSelectedIndices = function(indexArray)
{
this.clearSelected();
for (var i=0; i<indexArray.length; i++) {
this.selectItem(indexArray[i], true);
}
this.updateControl();
}
FListBoxClass.prototype.setSelectMultiple = function(flag)
{
this.selectMultiple = flag;
}
FListBoxClass.prototype.setRowCount = function(count)
{
var hgt = count *(this.itmHgt-2) + 2;
this.setSize(this.width, hgt);
}
FListBoxClass.prototype.setWidth = function(wdt)
{
this.setSize(wdt, this.height);
}
FListBoxClass.prototype.setSize = function(w,h)
{
if (!this.enable) {
return;
}
w = Math.max(w, 20);
h = Math.max(h, 40);
this.container_mc.removeMovieClip();
this.container_mc = this.createEmptyMovieClip("container", 3);
this.measureItmHgt();
this.numDisplayed = Math.floor(h / (this.itmHgt-2));
this.height = this.numDisplayed * (this.itmHgt-2) + 2;
super.setSize(w, this.height);
}
FListBoxClass.prototype.removeItemAt = function(index)
{
this.selectHolder = this.getSelectedIndices();
return super.removeItemAt(index);
}
// ::: PRIVATE METHODS
FListBoxClass.prototype.selectionHandler = function(itemNum)
{
if (this.clickFilter) {
var index = this.topDisplayed + itemNum;
if (this.getItemAt(index)==undefined) {
this.changeFlag=false;
return;
} else {
this.changeFlag = true;
}
if ( ( !this.selectMultiple && !Key.isDown(Key.CONTROL) ) || ( !Key.isDown(Key.SHIFT) && !Key.isDown(Key.CONTROL) ) ) {
//Clear all other selections, this is a single click
this.clearSelected();
this.selectItem(index, true);
this.lastSelected = index;
this.container_mc["fListItem" + itemNum + "_mc"].drawItem(this.getItemAt(index), this.isSelected(index));
}
else if ( Key.isDown(Key.SHIFT) && this.selectMultiple) {
if (this.lastSelected==-1) {
this.lastSelected=index;
}
var incr = (this.lastSelected<index) ? 1 : -1;
this.clearSelected();
for (var i=this.lastSelected; i!=index; i+=incr) {
this.selectItem(i, true);
if (i>=this.topDisplayed && i<this.topDisplayed+this.numDisplayed) {
this.container_mc["fListItem" + (i-this.topDisplayed) + "_mc"].drawItem(this.getItemAt(i), this.isSelected(i));
}
}
this.selectItem(index, true);
this.container_mc["fListItem" + (index-this.topDisplayed) + "_mc"].drawItem(this.getItemAt(index), this.isSelected(index));
}
else if (key.isDown(Key.CONTROL)) {
var selectedFlag = this.isSelected(index);
if (!this.selectMultiple) {
this.clearSelected();
}
if (!(!this.selectMultiple && selectedFlag)) {
this.selectItem(index, !selectedFlag);
this.container_mc["fListItem" + itemNum + "_mc"].drawItem(this.getItemAt(this.topDisplayed + itemNum), this.isSelected(this.topDisplayed+itemNum));
}
this.lastSelected=index;
}
} else {
this.clickFilter = true;
}
}
FListBoxClass.prototype.moveSelBy = function(itemNum)
{
super.moveSelBy(itemNum);
this.releaseHandler();
}
#endinitclip
this.deadPreview._visible = false;
[/colorfey]

map
actions for frame 1
Mouse.addListener(this);
this.onMouseDown = function() {
startDrag("", false);
this.onMouseUp = function() {
stopDrag();
};
};
actions for ElementsDrawer //<---- Airports
onClipEvent (load) {
Anapa22="-4324.8:244090.9:-6497.0:242169.8"
Anapa04="-6497.0:242169.8:-4324.8:244090.9"
Belbek25="-48587.2:-52865.6:-49627.9:-55889.1"
Belbek07="-49627.9:-55889.1:-48587.2:-52865.6"
Dzhankoy23="64134.0:11856.0:62445.5:9878.7"
Dzhankoy05="62445.5:9878.7:64134.0:11856.0"
Gelendzhik22="-49711.2:298970.3:-51087.2:297811.8"
Gelendzhik04="-51087.2:297811.8:-49711.2:298970.3"
Gudauta33="-197810.8:517061.1:-195624.1:515850.1"
Gudauta15="-195624.1:515850.1:-197810.8:517061.1"
Gvardeyskoe19="-539.5:-23429.3:-3657.5:-24148.8"
Gvardeyskoe01="-3657.5:-24148.8:-539.5:-23429.3"
Kerch23="36318.6:155621.3:33888.2:153103.6"
Kerch05="33888.2:153103.6:36318.6:155621.3"
Khersones19="-60764.6:-68353.4:-62536.0:-68666.2"
Khersones01="-62536.0:-68666.2:-60764.6:-68353.4"
Kirovskoe28="5294.7:73606.0:6070.5:70492.2"
Kirovskoe10="6070.5:70492.2:5294.7:73606.0"
KrasnodarCenter27="11750.6:369202.7:11619.6:366706.6"
KrasnodarCenter09="11619.6:366706.6:11750.6:369202.7"
KrasnodarPashkovskiy24R="8437.9:385862.9:6895.2:384209.2"
KrasnodarPashkovskiy05L="6895.2:384209.2:8437.9:385862.9"
KrasnodarPashkovskiy24L="8762.7:389001.7:6653.5:386739.8"
KrasnodarPashkovskiy05R="6653.5:386739.8:8762.7:389001.7"
Krasnogvardeyskoye23="51450.5:1780.8:49176.8:-879.9"
Krasnogvardeyskoye05="49176.8:-879.9:51450.5:1780.8"
Krymsk22="-5580.8:295210.1:-7586.7:293556.3"
Krymsk04="-7586.7:293556.3:-5580.8:295210.1"
Maykop22="-25199.0:459051.1:-27686.1:457038.6"
Maykop04="-27686.1:457038.6:-25199.0:459051.1"
Novorossisk22="-40251.6:279856.8:-41589.8:278653.0"
Novorossisk04="-41589.8:278653.0:-40251.6:279856.8"
Octyabrskoe24="23123.0:-13030.3:21268.0:-16028.3"
Octyabrskoe06="21268.0:-16028.3:23123.0:-13030.3"
Razdolnoe36="66150.7:-58929.0:69359.7:-58929.8"
Razdolnoe18="69359.7:-58929.8:66150.7:-58929.0"
Saki22L="-3613.7:-50729.9:-6019.0:-53135.1"
Saki04R="-6019.0:-53135.1:-3613.7:-50729.9"
Saki22R="-3793.3:-51616.3:-6196.6:-54018.4"
Saki04L="-6196.6:-54018.4:-3793.3:-51616.3"
Simpheropol19R="-7028.0:-22653.4:-10827.3:-23528.7"
Simpheropol01L="-10827.3:-23528.7:-7028.0:-22653.4"
Simpheropol19L="-10584.3:-21599.0:-13249.0:-22021.1"
Simpheropol01R="-13249.0:-22021.1:-10584.3:-21599.0"
Suhumi12="-219989.3:563267.6:-221086.0:565513.5"
Suhumi30="-221086.0:565513.5:-219989.3:563267.6"
Sochi06="-165212.8:460872.1:-163751.7:463620.6"
Sochi24="-163751.7:463620.6:-165212.8:460872.1"
Sochi02="-165428.4:462537.9:-163443.5:463484.4"
Sochi20="-163443.5:463484.4:-165428.4:462537.9"
Faktor = 2045/604135.7;
Anapa22_tmp=this.Anapa22.split(":");
Anapa22R.P1._x=Anapa22_tmp[1]*Faktor;
Anapa22R.P1._y=Anapa22_tmp[0]*Faktor*-1;
Anapa22R.P2._x=Anapa22_tmp[3]*Faktor;
Anapa22R.P2._y=Anapa22_tmp[2]*Faktor*-1;
Anapa04_tmp=this.Anapa04.split(":");
Anapa04R.P1._x=Anapa04_tmp[1]*Faktor;
Anapa04R.P1._y=Anapa04_tmp[0]*Faktor*-1;
Anapa04R.P2._x=Anapa04_tmp[3]*Faktor;
Anapa04R.P2._y=Anapa04_tmp[2]*Faktor*-1;
Belbek25_tmp=this.Belbek25.split(":");
Belbek25R.P1._x=Belbek25_tmp[1]*Faktor;
Belbek25R.P1._y=Belbek25_tmp[0]*Faktor*-1;
Belbek25R.P2._x=Belbek25_tmp[3]*Faktor;
Belbek25R.P2._y=Belbek25_tmp[2]*Faktor*-1;
Belbek07_tmp=this.Belbek07.split(":");
Belbek07R.P1._x=Belbek07_tmp[1]*Faktor;
Belbek07R.P1._y=Belbek07_tmp[0]*Faktor*-1;
Belbek07R.P2._x=Belbek07_tmp[3]*Faktor;
Belbek07R.P2._y=Belbek07_tmp[2]*Faktor*-1;
//
Dzhankoy23_tmp=this.Dzhankoy23.split(":");
Dzhankoy23R.P1._x=Dzhankoy23_tmp[1]*Faktor;
Dzhankoy23R.P1._y=Dzhankoy23_tmp[0]*Faktor*-1;
Dzhankoy23R.P2._x=Dzhankoy23_tmp[3]*Faktor;
Dzhankoy23R.P2._y=Dzhankoy23_tmp[2]*Faktor*-1;
Dzhankoy05_tmp=this.Dzhankoy05.split(":");
Dzhankoy05R.P1._x=Dzhankoy05_tmp[1]*Faktor;
Dzhankoy05R.P1._y=Dzhankoy05_tmp[0]*Faktor*-1;
Dzhankoy05R.P2._x=Dzhankoy05_tmp[3]*Faktor;
Dzhankoy05R.P2._y=Dzhankoy05_tmp[2]*Faktor*-1;
//
Gelendzhik22_tmp=this.Gelendzhik22.split(":");
Gelendzhik22R.P1._x=Gelendzhik22_tmp[1]*Faktor;
Gelendzhik22R.P1._y=Gelendzhik22_tmp[0]*Faktor*-1;
Gelendzhik22R.P2._x=Gelend

Verfasst: 3. Jun 2005, 00:43
von Zillion
[quote]

Gelendzhik22_tmp=this.Gelendzhik22.split(":");
Gelendzhik22R.P1._x=Gelendzhik22_tmp[1]*Faktor;
Gelendzhik22R.P1._y=Gelendzhik22_tmp[0]*Faktor*-1;
Gelendzhik22R.P2._x=Gelendzhik22_tmp[3]*Faktor;
Gelendzhik22R.P2._y=Gelendzhik22_tmp[2]*Faktor*-1;
Gelendzhik04_tmp=this.Gelendzhik04.split(":");
Gelendzhik04R.P1._x=Gelendzhik04_tmp[1]*Faktor;
Gelendzhik04R.P1._y=Gelendzhik04_tmp[0]*Faktor*-1;
Gelendzhik04R.P2._x=Gelendzhik04_tmp[3]*Faktor;
Gelendzhik04R.P2._y=Gelendzhik04_tmp[2]*Faktor*-1;
Gudauta33_tmp=this.Gudauta33.split(":");
Gudauta33R.P1._x=Gudauta33_tmp[1]*Faktor;
Gudauta33R.P1._y=Gudauta33_tmp[0]*Faktor*-1;
Gudauta33R.P2._x=Gudauta33_tmp[3]*Faktor;
Gudauta33R.P2._y=Gudauta33_tmp[2]*Faktor*-1;
Gudauta15_tmp=this.Gudauta15.split(":");
Gudauta15R.P1._x=Gudauta15_tmp[1]*Faktor;
Gudauta15R.P1._y=Gudauta15_tmp[0]*Faktor*-1;
Gudauta15R.P2._x=Gudauta15_tmp[3]*Faktor;
Gudauta15R.P2._y=Gudauta15_tmp[2]*Faktor*-1;
//
Gvardeyskoe19_tmp=this.Gvardeyskoe19.split(":");
Gvardeyskoe19R.P1._x=Gvardeyskoe19_tmp[1]*Faktor;
Gvardeyskoe19R.P1._y=Gvardeyskoe19_tmp[0]*Faktor*-1;
Gvardeyskoe19R.P2._x=Gvardeyskoe19_tmp[3]*Faktor;
Gvardeyskoe19R.P2._y=Gvardeyskoe19_tmp[2]*Faktor*-1;
Gvardeyskoe01_tmp=this.Gvardeyskoe01.split(":");
Gvardeyskoe01R.P1._x=Gvardeyskoe01_tmp[1]*Faktor;
Gvardeyskoe01R.P1._y=Gvardeyskoe01_tmp[0]*Faktor*-1;
Gvardeyskoe01R.P2._x=Gvardeyskoe01_tmp[3]*Faktor;
Gvardeyskoe01R.P2._y=Gvardeyskoe01_tmp[2]*Faktor*-1;
//
Kerch23_tmp=this.Kerch23.split(":");
Kerch23R.P1._x=Kerch23_tmp[1]*Faktor;
Kerch23R.P1._y=Kerch23_tmp[0]*Faktor*-1;
Kerch23R.P2._x=Kerch23_tmp[3]*Faktor;
Kerch23R.P2._y=Kerch23_tmp[2]*Faktor*-1;
Kerch05_tmp=this.Kerch05.split(":");
Kerch05R.P1._x=Kerch05_tmp[1]*Faktor;
Kerch05R.P1._y=Kerch05_tmp[0]*Faktor*-1;
Kerch05R.P2._x=Kerch05_tmp[3]*Faktor;
Kerch05R.P2._y=Kerch05_tmp[2]*Faktor*-1;
//
Khersones19_tmp=this.Khersones19.split(":");
Khersones19R.P1._x=Khersones19_tmp[1]*Faktor;
Khersones19R.P1._y=Khersones19_tmp[0]*Faktor*-1;
Khersones19R.P2._x=Khersones19_tmp[3]*Faktor;
Khersones19R.P2._y=Khersones19_tmp[2]*Faktor*-1;
Khersones01_tmp=this.Khersones01.split(":");
Khersones01R.P1._x=Khersones01_tmp[1]*Faktor;
Khersones01R.P1._y=Khersones01_tmp[0]*Faktor*-1;
Khersones01R.P2._x=Khersones01_tmp[3]*Faktor;
Khersones01R.P2._y=Khersones01_tmp[2]*Faktor*-1;
//
Kirovskoe28_tmp=this.Kirovskoe28.split(":");
Kirovskoe28R.P1._x=Kirovskoe28_tmp[1]*Faktor;
Kirovskoe28R.P1._y=Kirovskoe28_tmp[0]*Faktor*-1;
Kirovskoe28R.P2._x=Kirovskoe28_tmp[3]*Faktor;
Kirovskoe28R.P2._y=Kirovskoe28_tmp[2]*Faktor*-1;
Kirovskoe10_tmp=this.Kirovskoe10.split(":");
Kirovskoe10R.P1._x=Kirovskoe10_tmp[1]*Faktor;
Kirovskoe10R.P1._y=Kirovskoe10_tmp[0]*Faktor*-1;
Kirovskoe10R.P2._x=Kirovskoe10_tmp[3]*Faktor;
Kirovskoe10R.P2._y=Kirovskoe10_tmp[2]*Faktor*-1;
//
KrasnodarCenter27_tmp=this.KrasnodarCenter27.split(":");
KrasnodarCenter27R.P1._x=KrasnodarCenter27_tmp[1]*Faktor;
KrasnodarCenter27R.P1._y=KrasnodarCenter27_tmp[0]*Faktor*-1;
KrasnodarCenter27R.P2._x=KrasnodarCenter27_tmp[3]*Faktor;
KrasnodarCenter27R.P2._y=KrasnodarCenter27_tmp[2]*Faktor*-1;
KrasnodarCenter09_tmp=this.KrasnodarCenter09.split(":");
KrasnodarCenter09R.P1._x=KrasnodarCenter09_tmp[1]*Faktor;
KrasnodarCenter09R.P1._y=KrasnodarCenter09_tmp[0]*Faktor*-1;
KrasnodarCenter09R.P2._x=KrasnodarCenter09_tmp[3]*Faktor;
KrasnodarCenter09R.P2._y=KrasnodarCenter09_tmp[2]*Faktor*-1;
//
KrasnodarPashkovskiy24R_tmp=this.KrasnodarPashkovskiy24R.split(":");
KrasnodarPashkovskiy24RR.P1._x=KrasnodarPashkovskiy24R_tmp[1]*Faktor;
KrasnodarPashkovskiy24RR.P1._y=KrasnodarPashkovskiy24R_tmp[0]*Faktor*-1;
KrasnodarPashkovskiy24RR.P2._x=KrasnodarPashkovskiy24R_tmp[3]*Faktor;
KrasnodarPashkovskiy24RR.P2._y=KrasnodarPashkovskiy24R_tmp[2]*Faktor*-1;
KrasnodarPashkovskiy05L_tmp=this.KrasnodarPashkovskiy05L.split(":");
KrasnodarPashkovskiy05LR.P1._x=KrasnodarPashkovskiy05L_tmp[1]*Faktor;
KrasnodarPashkovskiy05LR.P1._y=KrasnodarPashkovskiy05L_tmp[0]*Faktor*-1;
KrasnodarPashkovskiy05LR.P2._x=KrasnodarPashkovskiy05L_tmp[3]*Faktor;
KrasnodarPashkovskiy05LR.P2._y=KrasnodarPashkovskiy05L_tmp[2]*Faktor*-1;
KrasnodarPashkovskiy24L_tmp=this.KrasnodarPashkovskiy24L.split(":");
KrasnodarPashkovskiy24LR.P1._x=KrasnodarPashkovskiy24L_tmp[1]*Faktor;
KrasnodarPashkovskiy24LR.P1._y=KrasnodarPashkovskiy24L_tmp[0]*Faktor*-1;
KrasnodarPashkovskiy24LR.P2._x=KrasnodarPashkovskiy24L_tmp[3]*Faktor;
KrasnodarPashkovskiy24LR.P2._y=KrasnodarPashkovskiy24L_tmp[2]*Faktor*-1;
KrasnodarPashkovskiy05R_tmp=this.KrasnodarPashkovskiy05R.split(":");
KrasnodarPashkovskiy05RR.P1._x=KrasnodarPashkovskiy05R_tmp[1]*Faktor;
KrasnodarPashkovskiy05RR.P1._y=KrasnodarPashkovskiy05R_tmp[0]*Faktor*-1;
KrasnodarPashkovskiy05RR.P2._x=KrasnodarPashkovskiy05R_tmp[3]*Faktor;
KrasnodarPashkovskiy05RR.P2._y=KrasnodarPashkovskiy05R_tmp[2]*Faktor*-1;
//
Krasnogvardeyskoye23_tmp=this.Krasnogvardeyskoye23.split(":");
Krasnogvardeyskoye23R.P1._x=Krasnogvardeyskoye23_tmp[1]*Faktor;
Krasnogvardeyskoye23R.P1._y=Krasnogvardeyskoye23_tmp[0]*Faktor*-1;
Krasnogvardeyskoye23R.P2._x=Krasnogvardeyskoye23_tmp[3]*Faktor;
Krasnogvardeyskoye23R.P2._y=Krasnogvardeyskoye23_tmp[2]*Faktor*-1;
Krasnogvardeyskoye05_tmp=this.Krasnogvardeyskoye05.split(":");
Krasnogvardeyskoye05R.P1._x=Krasnogvardeyskoye05_tmp[1]*Faktor;
Krasnogvardeyskoye05R.P1._y=Krasnogvardeyskoye05_tmp[0]*Faktor*-1;
Krasnogvardeyskoye05R.P2._x=Krasnogvardeyskoye05_tmp[3]*Faktor;
Krasnogvardeyskoye05R.P2._y=Krasnogvardeyskoye05_tmp[2]*Faktor*-1;
//
Krymsk22_tmp=this.Krymsk22.split(":");
Krymsk22R.P1._x=Krymsk22_tmp[1]*Faktor;
Krymsk22R.P1._y=Krymsk22_tmp[0]*Faktor*-1;
Krymsk22R.P2._x=Krymsk22_tmp[3]*Faktor;
Krymsk22R.P2._y=Krymsk22_tmp[2]*Faktor*-1;
Krymsk04_tmp=this.Krymsk04.split(":");
Krymsk04R.P1._x=Krymsk04_tmp[1]*Faktor;
Krymsk04R.P1._y=Krymsk04_tmp[0]*Faktor*-1;
Krymsk04R.P2._x=Krymsk04_tmp[3]*Faktor;
Krymsk04R.P2._y=Krymsk04_tmp[2]*Faktor*-1;
//
Maykop22_tmp=this.Maykop22.split(":");
Maykop22R.P1._x=Maykop22_tmp[1]*Faktor;
Maykop22R.P1._y=Maykop22_tmp[0]*Faktor*-1;
Maykop22R.P2._x=Maykop22_tmp[3]*Faktor;
Maykop22R.P2._y=Maykop22_tmp[2]*Faktor*-1;
Maykop04_tmp=this.Maykop04.split(":");
Maykop04R.P1._x=Maykop04_tmp[1]*Faktor;
Maykop04R.P1._y=Maykop04_tmp[0]*Faktor*-1;
Maykop04R.P2._x=Maykop04_tmp[3]*Faktor;
Maykop04R.P2._y=Maykop04_tmp[2]*Faktor*-1;
//
Novorossisk22_tmp=this.Novorossisk22.split(":");
Novorossisk22R.P1._x=Novorossisk22_tmp[1]*Faktor;
Novorossisk22R.P1._y=Novorossisk22_tmp[0]*Faktor*-1;
Novorossisk22R.P2._x=Novorossisk22_tmp[3]*Faktor;
Novorossisk22R.P2._y=Novorossisk22_tmp[2]*Faktor*-1;
Novorossisk04_tmp=this.Novorossisk04.split(":");
Novorossisk04R.P1._x=Novorossisk04_tmp[1]*Faktor;
Novorossisk04R.P1._y=Novorossisk04_tmp[0]*Faktor*-1;
Novorossisk04R.P2._x=Novorossisk04_tmp[3]*Faktor;
Novorossisk04R.P2._y=Novorossisk04_tmp[2]*Faktor*-1;
//
Octyabrskoe24_tmp=this.Octyabrskoe24.split(":");
Octyabrskoe24R.P1._x=Octyabrskoe24_tmp[1]*Faktor;
Octyabrskoe24R.P1._y=Octyabrskoe24_tmp[0]*Faktor*-1;
Octyabrskoe24R.P2._x=Octyabrskoe24_tmp[3]*Faktor;
Octyabrskoe24R.P2._y=Octyabrskoe24_tmp[2]*Faktor*-1;
Octyabrskoe06_tmp=this.Octyabrskoe06.split(":");
Octyabrskoe06R.P1._x=Octyabrskoe06_tmp[1]*Faktor;
Octyabrskoe06R.P1._y=Octyabrskoe06_tmp[0]*Faktor*-1;
Octyabrskoe06R.P2._x=Octyabrskoe06_tmp[3]*Faktor;
Octyabrskoe06R.P2._y=Octyabrskoe06_tmp[2]*Faktor*-1;
//
Razdolnoe36_tmp=this.Razdolnoe36.split(":");
Razdolnoe36R.P1._x=Razdolnoe36_tmp[1]*Faktor;
Razdolnoe36R.P1._y=Razdolnoe36_tmp[0]*Faktor*-1;
Razdolnoe36R.P2._x=Razdolnoe36_tmp[3]*Faktor;
Razdolnoe36R.P2._y=Razdolnoe36_tmp[2]*Faktor*-1;
Razdolnoe18_tmp=this.Razdolnoe18.split(":");
Razdolnoe18R.P1._x=Razdolnoe18_tmp[1]*Faktor;
Razdolnoe18R.P1._y=Razdolnoe18_tmp[0]*Faktor*-1;
Razdolnoe18R.P2._x=Razdolnoe18_tmp[3]*Faktor;
Razdolnoe18R.P2._y=Razdolnoe18_tmp[2]*Faktor*-1;
//
Saki22L_tmp=this.Saki22L.split(":");
Saki22LR.P1._x=Saki22L_tmp[1]*Faktor;
Saki22LR.P1._y=Saki22L_tmp[0]*Faktor*-1;
Saki22LR.P2._x=Saki22L_tmp[3]*Faktor;
Saki22LR.P2._y=Saki22L_tmp[2]*Faktor*-1;
Saki04R_tmp=this.Saki04R.split(":");
Saki04RR.P1._x=Saki04R_tmp[1]*Faktor;
Saki04RR.P1._y=Saki04R_tmp[0]*Faktor*-1;
Saki04RR.P2._x=Saki04R_tmp[3]*Faktor;
Saki04RR.P2._y=Saki04R_tmp[2]*Faktor*-1;
Saki22R_tmp=this.Saki22R.split(":");
Saki22RR.P1._x=Saki22R_tmp[1]*Faktor;
Saki22RR.P1._y=Saki22R_tmp[0]*Faktor*-1;
Saki22RR.P2._x=Saki22R_tmp[3]*Faktor;
Saki22RR.P2._y=Saki22R_tmp[2]*Faktor*-1;
Saki04L_tmp=this.Saki04L.split(":");
Saki04LR.P1._x=Saki04L_tmp[1]*Faktor;
Saki04LR.P1._y=Saki04L_tmp[0]*Faktor*-1;
Saki04LR.P2._x=Saki04L_tmp[3]*Faktor;
Saki04LR.P2._y=Saki04L_tmp[2]*Faktor*-1;
//
Simpheropol19R_tmp=this.Simpheropol19R.split(":");
Simpheropol19RR.P1._x=Simpheropol19R_tmp[1]*Faktor;
Simpheropol19RR.P1._y=Simpheropol19R_tmp[0]*Faktor*-1;
Simpheropol19RR.P2._x=Simpheropol19R_tmp[3]*Faktor;
Simpheropol19RR.P2._y=Simpheropol19R_tmp[2]*Faktor*-1;
Simpheropol01L_tmp=this.Simpheropol01L.split(":");
Simpheropol01LR.P1._x=Simpheropol01L_tmp[1]*Faktor;
Simpheropol01LR.P1._y=Simpheropol01L_tmp[0]*Faktor*-1;
Simpheropol01LR.P2._x=Simpheropol01L_tmp[3]*Faktor;
Simpheropol01LR.P2._y=Simpheropol01L_tmp[2]*Faktor*-1;
Simpheropol19L_tmp=this.Simpheropol19L.split(":");
Simpheropol19LR.P1._x=Simpheropol19L_tmp[1]*Faktor;
Simpheropol19LR.P1._y=Simpheropol19L_tmp[0]*Faktor*-1;
Simpheropol19LR.P2._x=Simpheropol19L_tmp[3]*Faktor;
Simpheropol19LR.P2._y=Simpheropol19L_tmp[2]*Faktor*-1;
Simpheropol01R_tmp=this.Simpheropol01R.split(":");
Simpheropol01RR.P1._x=Simpheropol01R_tmp[1]*Faktor;
Simpheropol01RR.P1._y=Simpheropol01R_tmp[0]*Faktor*-1;
Simpheropol01RR.P2._x=Simpheropol01R_tmp[3]*Faktor;
Simpheropol01RR.P2._y=Simpheropol01R_tmp[2]*Faktor*-1;
//
Suhumi12_tmp=this.Suhumi12.split(":");
Suhumi12R.P1._x=Suhumi12_tmp[1]*Faktor;
Suhumi12R.P1._y=Suhumi12_tmp[0]*Faktor*-1;
Suhumi12R.P2._x=Suhumi12_tmp[3]*Faktor;
Suhumi12R.P2._y=Suhumi12_tmp[2]*Faktor*-1;
Suhumi30_tmp=this.Suhumi30.split(":");
Suhumi30R.P1._x=Suhumi30_tmp[1]*Faktor;
Suhumi30R.P1._y=Suhumi30_tmp[0]*Faktor*-1;
Suhumi30R.P2._x=Suhumi30_tmp[3]*Faktor;
Suhumi30R.P2._y=Suhumi30_tmp[2]*Faktor*-1;
//
Sochi06_tmp=this.Sochi06.split(":");
Sochi06R.P1._x=Sochi06_tmp[1]*Faktor;
Sochi06R.P1._y=Sochi06_tmp[0]*Faktor*-1;
Sochi06R.P2._x=Sochi06_tmp[3]*Faktor;
Sochi06R.P2._y=Sochi06_tmp[2]*Faktor*-1;
Sochi24_tmp=this.Sochi24.split(":");
Sochi24R.P1._x=Sochi24_tmp[1]*Faktor;
Sochi24R.P1._y=Sochi24_tmp[0]*Faktor*-1;
Sochi24R.P2._x=Sochi24_tmp[3]*Faktor;
Sochi24R.P2._y=Sochi24_tmp[2]*Faktor*-1;
Sochi02_tmp=this.Sochi02.split(":");
Sochi02R.P1._x=Sochi02_tmp[1]*Faktor;
Sochi02R.P1._y=Sochi02_tmp[0]*Faktor*-1;
Sochi02R.P2._x=Sochi02_tmp[3]*Faktor;
Sochi02R.P2._y=Sochi02_tmp[2]*Faktor*-1;
Sochi20_tmp=this.Sochi20.split(":");
Sochi20R.P1._x=Sochi20_tmp[1]*Faktor;
Sochi20R.P1._y=Sochi20_tmp[0]*Faktor*-1;
Sochi20R.P2._x=Sochi20_tmp[3]*Faktor;
Sochi20R.P2._y=Sochi20_tmp[2]*Faktor*-1;
}
actions for RulerDrawer
onClipEvent (load) {
_root.commserver.mapZoomer.map2.Ruler.P1._visible = false;
_root.commserver.mapZoomer.map2.Ruler.P2._visible = false;
_root.commserver.mapZoomer.map2.Ruler.line._visible = false;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._visible = false;
}
actions for RingDrawer
onClipEvent (load) {
this._visible = false
this.R5._xscale = 50000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R5._yscale = 50000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R10._xscale = 100000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R10._yscale = 100000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R15._xscale = 150000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R15._yscale = 150000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R20._xscale = 200000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R20._yscale = 200000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R25._xscale = 250000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R25._yscale = 250000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R30._xscale = 300000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R30._yscale = 300000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R35._xscale = 350000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R35._yscale = 350000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R40._xscale = 400000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R40._yscale = 400000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R45._xscale = 450000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
this.R45._yscale = 450000 * _root.commserver.mapZoomer.map2.ED.Faktor*2
}[/colorprp]

FBoundingBox <---UNWICHTIG
actions for frame 1
var component = _parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(boundingBox, "background");
stop();
actions for frame 2
component.registerSkinElement(boundingBox2,"backgroundDisabled");
stop();
FScrollSelectList
actions for frame 1
#initclip 2
/*
FScrollSelectListClass
EXTENDS FSelectableListClass
adds scroll support to the list class.
*/
function FScrollSelectListClass()
{
this.init();
}
FScrollSelectListClass.prototype = new FSelectableListClass();
// ::: PUBLIC METHODS
FScrollSelectListClass.prototype.getScrollPosition = function()
{
return this.topDisplayed;
}
FScrollSelectListClass.prototype.setScrollPosition = function(pos)
{
if (this.enable) {
pos = Math.min(pos, this.getLength()-this.numDisplayed);
pos = Math.max(pos,0);
this.scrollBar_mc.setScrollPosition(pos);
}
}
FScrollSelectListClass.prototype.setAutoHideScrollBar = function(flag)
{
this.permaScrollBar = !flag;
this.setSize(this.width, this.height);
}
FScrollSelectListClass.prototype.setEnabled = function(enabledFlag)
{
super.setEnabled(enabledFlag);
this.scrollBar_mc.setEnabled(this.enable);
}
FScrollSelectListClass.prototype.setSize = function(w,h)
{
var pos = this.getScrollPosition();
super.setSize(w,h);
if (this.scrollBar_mc!=undefined) {
this.removed = true;
}
this.scrollBar_mc = undefined;
this.initScrollBar();
this.setScrollPosition(pos);
}
// ::: PRIVATE METHODS
FScrollSelectListClass.prototype.modelChanged = function(eventObj)
{
super.modelChanged(eventObj);
this.invalidate("initScrollBar");
}
FScrollSelectListClass.prototype.initScrollBar = function()
{
if (!this.permaScrollBar && this.getLength()<=this.numDisplayed) {
if (this.removed) {
this.scrollBar_mc.removeMovieClip();
this.scrollBar_mc = undefined;
this.scrollOffset=undefined;
this.invalidate("setSize");
}
} else {
if (this.scrollBar_mc==undefined) {
this.container_mc.attachMovie("FScrollBarSymbol","scrollBar_mc",3000, {hostStyle:this.styleTable}); // 3000 is arbitrarily high
this.scrollBar_mc = this.container_mc.scrollBar_mc;
this.scrollBar_mc.setChangeHandler("scrollHandler", this);
this.scrollBar_mc.setSize(this.height);
this.scrollBar_mc._x = this.width - this.scrollBar_mc._width;
this.scrollBar_mc._y = 0;
this.scrollBar_mc.setLargeScroll(this.numDisplayed-1);
this.scrollOffset = this.scrollBar_mc._width;
this.invalidate("setSize");
}
this.scrollBar_mc.setScrollProperties(this.numDisplayed, 0, this.getLength()-this.numDisplayed);
}
}
FScrollSelectListClass.prototype.scrollHandler = function(scrollBar)
{
var pos = scrollBar.getScrollPosition();
this.topDisplayed=pos;
if (this.lastPosition!=pos) {
this.updateControl();
}
this.lastPosition = pos;
}
FScrollSelectListClass.prototype.clickHandler = function(itmNum)
{
super.clickHandler(itmNum);
if (this.dragScrolling==undefined && this.scrollBar_mc!=undefined) {
this.dragScrolling = setInterval(this, "dragScroll", 15);
}
}
FScrollSelectListClass.prototype.releaseHandler = function()
{
clearInterval(this.dragScrolling);
this.dragScrolling = undefined;
super.releaseHandler();
}
FScrollSelectListClass.prototype.dragScroll = function()
{
clearInterval(this.dragScrolling);
if (this.container_mc._ymouse<0) {
this.setScrollPosition(this.getScrollPosition()-1);
this.selectionHandler(0);
this.scrollInterval = Math.max(25, -23.8*(0-this.container_mc._ymouse) + 500);
this.dragScrolling = setInterval(this, "dragScroll", this.scrollInterval);
}
else if (this.container_mc._ymouse>(this.itmHgt-2)*this.numDisplayed) {
this.setScrollPosition(this.getScrollPosition() +1);
this.selectionHandler(this.numDisplayed-1);
this.scrollInterval = Math.max(25, -23.8*Math.abs((this.container_mc._ymouse-(this.itmHgt-2)*this.numDisplayed - 2)) + 500);
this.dragScrolling = setInterval(this, "dragScroll", this.scrollInterval);
} else {
this.dragScrolling = setInterval(this, "dragScroll", 15);
}
}
FScrollSelectListClass.prototype.myOnKeyDown= function()
{
if (this.focused) {
this.keyCodes = new Array(Key.DOWN, Key.UP, Key.PGDN, Key.PGUP, Key.HOME, Key.END);
this.keyIncrs = new Array(1, -1, this.numDisplayed-1, -(this.numDisplayed-1), -this.getLength(), this.getLength());
for (var i=0; i<this.keyCodes.length; i++) {
if (Key.isDown(this.keyCodes)) {
this.moveSelBy(this.keyIncrs);
return;
}
}
this.findInputText();
}
}
FScrollSelectListClass.prototype.findInputText = function()
{
var tmpCode = Key.getAscii();
if (tmpCode>=33 && tmpCode<=126) {
this.findString(String.fromCharCode(tmpCode));
}
}
FScrollSelectListClass.prototype.findString = function(str)
{
if (this.getLength()==0) return;
var itemNum = this.getSelectedIndex();
var jump = 0;
for (var i=itemNum+1; i!=itemNum; i++) {
var itmStr = this.getItemAt(i).label.substring(0,str.length);
if (str==itmStr || str.toUpperCase()==itmStr.toUpperCase()) {
var jump = i - itemNum;
break;
}
if (i>=this.getLength()-1) {
i=-1;
}
}
if (jump!=0) {
this.moveSelBy(jump);
}
}
#endinitclip
actions for ScrollBar
onClipEvent(load) {
this._width = this._height = 1;
}
FListBoxItem
actions for frame 1
#initclip 3
/*
FListItemClass
EXTENDS FSelectableItemClass
This is mostly a code stubb for extension purposes.
*/
function FListItemClass()
{
this.init();
}
FListItemClass.prototype = new FSelectableItemClass();
Object.registerClass("FListItemSymbol", FListItemClass);
#endinitclip[/colorprp]
RulerDrawer //<---LINEAL
actions for frame 1
dx = P2._x-P1._x;
dy = P2._y-P1._y;
line._x = P1._x;
line._y = P1._y;
line._xscale = dx;
line._yscale = dy;
HeadingText._x = P2._x;
HeadingText._y = P2._y;
var DistancePX;
var HDG;
DistancePX = Math.sqrt((P2._x - P1._x) * (P2._x - P1._x)+(P2._y - P1._y) * (P2._y - P1._y));
if (P2._x >= P1._x)(
HDG = 90 + (180 / Math.PI * Math.asin( (P2._y - P1._y) / DistancePX))
)
else if (P2._x <= P1._x )(
HDG = 270 - (180 / Math.PI * Math.asin( (P2._y - P1._y) / DistancePX))
)
HeadingIntegerI = Math.round(HDG);
Distance = "" add (DistancePX / _root.commserver.mapZoomer.map2.ED.Faktor/1000) * _root.commserver.miles;
HeadingIntegerT = "" add HeadingIntegerI
if(HeadingIntegerT.length == 2){
HeadingInteger = "0"+HeadingIntegerT
}else if(HeadingIntegerT.length == 3){
HeadingInteger = HeadingIntegerT
}
var DistanceP_temp = Distance.indexOf(".");
var DistanceP = Distance.substring (0, DistanceP_temp+2);
HeadingText.Text = HeadingInteger+"°/"+DistanceP;
if(Key.isDown( 82 ) == true && Selection.getFocus() == null) {
state = "Set 1st Ruler Point";
clicked = true
_root.commserver.mapZoomer.map2.Ruler.P1._x = _xmouse
_root.commserver.mapZoomer.map2.Ruler.P1._y = _ymouse
_root.commserver.mapZoomer.map2.Ruler.P1._visible = true;
_root.commserver.mapZoomer.map2.Ruler.P2._visible = false;
_root.commserver.mapZoomer.map2.Ruler.line._visible = false;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._visible = false;
}else if(Key.isDown( 66 ) == true && Selection.getFocus() == null) {
state = "First Ruler Point is in Bullseye";
clicked = true
_root.commserver.mapZoomer.map2.Ruler.P1._x = _root.commserver.mapZoomer.map2.RingDrawer._x+1000
_root.commserver.mapZoomer.map2.Ruler.P1._y = _root.commserver.mapZoomer.map2.RingDrawer._y+500
_root.commserver.mapZoomer.map2.Ruler.P1._visible = true;
_root.commserver.mapZoomer.map2.Ruler.P2._visible = false;
_root.commserver.mapZoomer.map2.Ruler.line._visible = false;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._visible = false;
}else if(clicked == true){
state = "Set 2nd Ruler Point"
_root.commserver.mapZoomer.map2.Ruler.P2._visible = false;
_root.commserver.mapZoomer.map2.Ruler.line._visible = false;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._visible = false;
}
actions for RulerPoint2
onClipEvent (mouseDown) {
if(_parent.clicked == true) {
this._x = _parent._xmouse;
this._y = _parent._ymouse;
//trace(_parent._xmouse+" / "+_parent._ymouse)
//trace(this._x+" / "+this._y)
_parent.state = "";
_parent.clicked = false
this._visible = true;
_root.commserver.mapZoomer.map2.Ruler.line._visible = true;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._visible = true;
}
}
actions for frame 2
gotoAndPlay (_currentframe-1);
actions for RulerPoint2
onClipEvent (mouseDown) {
if(_parent.clicked == true) {
this._x = _parent._xmouse;
this._y = _parent._ymouse;
//trace(_parent._xmouse+" / "+_parent._ymouse)
//trace(this._x+" / "+this._y)
_parent.state = "";
_parent.clicked = false
this._visible = true;
_root.commserver.mapZoomer.map2.Ruler.line._visible = true;
_root.commserver.mapZoomer.map2.Ruler.HeadingText._visible = true;
}
}[/colorprp]
RingDrawer
actions for RingDragger
on (press) {
startDrag("", true);
}
on (release) {
stopDrag();[/colorprp]
FSelectableList // <---- UNWICHTIG
actions for frame 1
#initclip 1
/*
FSelectableListClass
EXTENDS FUIComponentClass
This is superClass for all selectable lists in the tree.
*/
function FSelectableListClass()
{
this.init();
}
FSelectableListClass.prototype = new FUIComponentClass();
FSelectableListClass.prototype.init = function()
{
super.init();
this.enable = true;
this.selected = new Array();
this.topDisplayed = this.numDisplayed = 0;
this.lastSelected = 0;
this.tabChildren = false;
if (this._name!=undefined) {
this.dataProvider = new DataProviderClass();
this.dataProvider.addView(this);
}
}
// ::: PUBLIC METHODS
FSelectableListClass.prototype.addItemAt = function(index, label, data)
{
if (index<0 || !this.enable) return;
this.dataProvider.addItemAt(index, {label:label, data:data});
}
FSelectableListClass.prototype.addItem = function(label, data)
{
if (!this.enable) return;
this.dataProvider.addItem({label:label, data:data});
}
FSelectableListClass.prototype.removeItemAt = function(index)
{
this.selectHolder = this.getSelectedIndex();
var item = this.getItemAt(index);
this.dataProvider.removeItemAt(index);
return item;
}
FSelectableListClass.prototype.removeAll = function()
{
this.dataProvider.removeAll();
}
FSelectableListClass.prototype.replaceItemAt = function(index, newLabel, newData)
{
this.dataProvider.replaceItemAt(index, {label:newLabel, data:newData} );
}
FSelectableListClass.prototype.sortItemsBy = function(fieldName, order)
{
this.lastSelID = this.dataProvider.getItemID(this.lastSelected);
this.dataProvider.sortItemsBy(fieldName, order);
}
FSelectableListClass.prototype.getLength = function()
{
return this.dataProvider.getLength();
}
FSelectableListClass.prototype.getSelectedIndex = function()
{
for (var uniqueID in this.selected) {
var tmpInd = this.selected[uniqueID].sIndex;
if (tmpInd!=undefined) {
return tmpInd;
}
}
}
FSelectableListClass.prototype.getSelectedItem = function()
{
return this.getItemAt(this.getSelectedIndex());
}
FSelectableListClass.prototype.getItemAt = function(index)
{
return this.dataProvider.getItemAt(index);
}
FSelectableListClass.prototype.getEnabled = function()
{
return this.enable;
}
FSelectableListClass.prototype.getValue = function()
{
var item = this.getSelectedItem();
return (item.data==undefined) ? item.label : item.data;
}
// Sets the indices specified, executes change handler
FSelectableListClass.prototype.setSelectedIndex = function(index, flag)
{
if (index>=0 && index<this.getLength() && this.enable) {
this.clearSelected();
this.selectItem(index, true);
this.lastSelected = index;
this.invalidate("updateControl");
if (flag!=false) {
this.executeCallBack();
}
}
}
FSelectableListClass.prototype.setDataProvider = function(obj)
{
this.setScrollPosition(0);
this.clearSelected();
if (obj instanceof Array) {
this.dataProvider = new DataProviderClass();
for (var i=0; i<obj.length; i++) {
var value = (typeof(obj)=="string") ? {label:obj} : obj;
this.dataProvider.addItem(value);
}
} else {
this.dataProvider = obj;
}
this.dataProvider.addView(this);
}
FSelectableListClass.prototype.setItemSymbol = function(linkID)
{
this.tmpPos = this.getScrollPosition();
this.itemSymbol = linkID;
this.invalidate("setSize");
this.setScrollPosition(this.tmpPos);
}
FSelectableListClass.prototype.setEnabled = function(enabledFlag)
{
// this ensures there is something displayed before disabling
this.cleanUI();
super.setEnabled(enabledFlag);
this.enable = enabledFlag;
this.boundingBox_mc.gotoAndStop( (this.enable) ? "enabled" : "disabled" );
var limit = Math.min(this.numDisplayed, this.getLength());
for (var i=0; i<limit; i++) {
this.container_mc["fListItem" + i + "_mc"].setEnabled(this.enable);
}
if (this.enable) {
this.invalidate("updateControl");
}
}
//update all the items based on position
FSelectableListClass.prototype.updateControl = function()
{
for (var i=0; i<this.numDisplayed; i++) {
//drawItem() IMPLEMENTED IN FSelectableIemClass
this.container_mc["fListItem" + i + "_mc"].drawItem(this.getItemAt(this.topDisplayed + i), this.isSelected(this.topDisplayed+i));
}
}
FSelectableListClass.prototype.setSize = function(w, h)
{
super.setSize(w,h);
this.boundingBox_mc._xscale = this.boundingBox_mc._yscale = 100;
this.boundingBox_mc._xscale = this.width * 100 / this.boundingBox_mc._width;
this.boundingBox_mc._yscale = this.height * 100 / this.boundingBox_mc._height;
for (var i=0; i<this.numDisplayed; i++) {
this.container_mc.attachMovie(this.itemSymbol, "fListItem" + i + "_mc", 10 + i, {controller:this,itemNum:i});
var item_mc = this.container_mc["fListItem" + i + "_mc"];
var offset = (this.scrollOffset==undefined) ? 0 : this.scrollOffset;
item_mc.setSize(this.width-offset, this.itmHgt);
item_mc._y = (this.itmHgt-2)*i;
}
this.updateControl();
}
// ::: PRIVATE METHODS
FSelectableListClass.prototype.modelChanged = function(eventObj)
{
var firstRow = eventObj.firstRow;
var lastRow = eventObj.lastRow;
var event = eventObj.event;
if (event=="addRows") {
for (var i in this.selected) {
if (this.selected.sIndex!=undefined && this.selected.sIndex>=firstRow) {
this.selected.sIndex+=lastRow-firstRow+1;
this.setSelectedIndex(this.selected.sIndex, false);
}
}
} else if (event=="deleteRows") {
if (firstRow==lastRow) {
var index = firstRow;
if (this.selectHolder==index) {
this.selectionDeleted = true;
}
// only one was deleted
// if the view is scrolled but hasn't enough to display, scroll back
if (this.topDisplayed+this.numDisplayed>=this.getLength() && this.topDisplayed>0) {
this.topDisplayed--;
if (this.selectionDeleted && index-1>=0) {
this.setSelectedIndex(index-1, false);
}
} else if (this.selectionDeleted) {
var len = this.getLength();
if ( ( index==len-1 && len>1 || index>len/2)) {
this.setSelectedIndex(index-1, false);
} else {
this.setSelectedIndex(index, false);
}
}
for (var i in this.selected) {
if (this.selected.sIndex>firstRow) {
this.selected[i].sIndex--;
}
}
} else {
// for now, assume all rows were deleted
this.clearSelected();
this.topDisplayed = 0;
}
} else if (event=="sort") {
// rehash selections
var len = this.getLength();
for (var i=0; i<len; i++) {
if (this.isSelected(i)) {
var id = this.dataProvider.getItemID(i);
if (id == this.lastSelID) {
this.lastSelected = i;
}
this.selected[String(id)].sIndex = i;
}
}
}
this.invalidate("updateControl");
}
FSelectableListClass.prototype.measureItmHgt = function()
{
this.attachMovie(this.itemSymbol, "tmpItem_mc", 0, {controller:this});
this.tmpItem_mc.drawItem( {label:"Sizer: PjtTopg"}, false);
this.itmHgt = this.tmpItem_mc._height;
this.tmpItem_mc.removeMovieClip();
}
FSelectableListClass.prototype.selectItem = function(index, selectedFlag)
{
if (selectedFlag && !this.isSelected(index)) {
this.selected[String( this.dataProvider.getItemID(index) )] = { sIndex : index };
}
else if (!selectedFlag) {
delete this.selected[String( this.dataProvider.getItemID(index) )];
}
}
FSelectableListClass.prototype.isSelected = function(index)
{
return (this.selected[String( this.dataProvider.getItemID(index) )].sIndex!=undefined);
}
FSelectableListClass.prototype.clearSelected = function()
{
for (var uniqueID in this.selected) {
var index = this.selected[uniqueID].sIndex;
if (index!=undefined && this.topDisplayed<=index && index<this.topDisplayed+this.numDisplayed) {
this.container_mc["fListItem"+(index-this.topDisplayed)+"_mc"].drawItem(this.getItemAt(index), false);
}
}
delete this.selected;
this.selected = new Array();
}
FSelectableListClass.prototype.selectionHandler = function(itemNum)
{
var tmpInd = this.topDisplayed + itemNum;
if (this.getItemAt(tmpInd==undefined)) {
this.changeFlag = false;
return;
} else {
this.changeFlag = true;
}
this.clearSelected();
this.selectItem(tmpInd, true);
this.container_mc["fListItem" + itemNum + "_mc"].drawItem(this.getItemAt(tmpInd), this.isSelected(tmpInd));
}

FSelectableListClass.prototype.moveSelBy = function(incr)
{
var itmNum = this.getSelectedIndex();
var newItm = itmNum + incr;
newItm = Math.max(0, newItm);
newItm = Math.min(this.getLength()-1, newItm);
if (newItm==itmNum) {
return;
}
if (itmNum<this.topDisplayed || itmNum>=this.topDisplayed+this.numDisplayed) {
this.setScrollPosition(itmNum); // VIRTUAL Function -- EXTEND me
}
if (newItm>=this.topDisplayed+this.numDisplayed || newItm<this.topDisplayed) {
this.setScrollPosition(this.topDisplayed+incr); // VIRTUAL Function -- EXTEND me
}
this.selectionHandler(newItm-this.topDisplayed);
}
FSelectableListClass.prototype.clickHandler = function(itmNum)
{
this.focusRect.removeMovieClip();
if (!this.focused) {
this.pressFocus();
}
this.selectionHandler(itmNum);
this.onMouseUp = this.releaseHandler;
}
FSelectableListClass.prototype.releaseHandler = function()
{
if (this.changeFlag) {
this.executeCallBack();
}
this.changeFlag=false;
this.onMouseUp=undefined;
}
FSelectableListClass.prototype.myOnSetFocus = function()
{
super.myOnSetFocus();
for (var i=0; i<this.numDisplayed; i++) {
this.container_mc["fListItem"+i+"_mc"].highlight_mc.gotoAndStop("enabled");
}
}
FSelectableListClass.prototype.myOnKillFocus = function()
{
super.myOnKillFocus();
for (var i=0; i<this.numDisplayed; i++) {
this.container_mc["fListItem"+i+"_mc"].highlight_mc.gotoAndStop("unfocused");
}
}
#endinitclip
ScrollBar
actions for frame 1
#initclip 1
/*
FScrollBarClass
EXTENDS FUIComponentClass
*/
FScrollBarClass = function()
{
if (this._height==4) {
return ;
}
this.init();
this.minPos = this.maxPos = this.pageSize = this.largeScroll = 0;
this.smallScroll = 1;
this.width = (this.horizontal) ? this._width : this._height;
this._xscale = this._yscale = 100;
this.setScrollPosition(0);
this.tabEnabled = false;
if ( this._targetInstanceName.length > 0 ) {
this.setScrollTarget(this._parent[this._targetInstanceName]);
}
this.tabChildren = false;
this.setSize(this.width);
}
FScrollBarClass.prototype = new FUIComponentClass();
// ::: PUBLIC METHODS
FScrollBarClass.prototype.setHorizontal = function(flag)
{
if (this.horizontal && !flag) {
this._xscale = 100;
this._rotation = 0;
} else if (flag && !this.horizontal) {
this._xscale = -100;
this._rotation = -90;
}
this.horizontal = flag;
}
// updates the thumb, turns the bar on and off
FScrollBarClass.prototype.setScrollProperties = function(pSize, mnPos, mxPos)
{
if (!this.enable) {
return ;
}
this.pageSize = pSize;
this.minPos = Math.max(mnPos, 0);
this.maxPos = Math.max(mxPos,0);
this.scrollPosition = Math.max(this.minPos, this.scrollPosition);
this.scrollPosition = Math.min(this.maxPos, this.scrollPosition);
if (this.maxPos-this.minPos<=0) { // turn it off
this.scrollThumb_mc.removeMovieClip();
this.upArrow_mc.gotoAndStop(3);
this.downArrow_mc.gotoAndStop(3);
this.downArrow_mc.onPress = this.downArrow_mc.onRelease = this.downArrow_mc.onDragOut = null;
this.upArrow_mc.onPress = this.upArrow_mc.onRelease = this.upArrow_mc.onDragOut = null;
this.scrollTrack_mc.onPress = this.scrollTrack_mc.onRelease = null;
this.scrollTrack_mc.onDragOut = this.scrollTrack_mc.onRollOut = null;
this.scrollTrack_mc.useHandCursor = false;
} else { // turn it on
var tmp = this.getScrollPosition();
this.upArrow_mc.gotoAndStop(1);
this.downArrow_mc.gotoAndStop(1);
this.upArrow_mc.onPress = this.upArrow_mc.onDragOver = this.startUpScroller;
this.upArrow_mc.onRelease = this.upArrow_mc.onDragOut = this.stopScrolling;
this.downArrow_mc.onPress = this.downArrow_mc.onDragOver = this.startDownScroller;
this.downArrow_mc.onRelease = this.downArrow_mc.onDragOut = this.stopScrolling;
this.scrollTrack_mc.onPress = this.scrollTrack_mc.onDragOver = this.startTrackScroller;
this.scrollTrack_mc.onRelease = this.stopScrolling;
this.scrollTrack_mc.onDragOut = this.stopScrolling;
this.scrollTrack_mc.onRollOut = this.stopScrolling;
this.scrollTrack_mc.useHandCursor = false;
this.attachMovie("ScrollThumb", "scrollThumb_mc", 3);
this.scrollThumb_mc._x = 0;
this.scrollThumb_mc._y = this.upArrow_mc._height;
this.scrollThumb_mc.onPress = this.startDragThumb;
this.scrollThumb_mc.controller = this;
this.scrollThumb_mc.onRelease = this.scrollThumb_mc.onReleaseOutside = this.stopDragThumb;
this.scrollThumb_mc.useHandCursor=false;
this.thumbHeight = this.pageSize / (this.maxPos-this.minPos+this.pageSize) * this.trackSize;
this.thumbMid_mc = this.scrollThumb_mc.mc_sliderMid;
this.thumbTop_mc = this.scrollThumb_mc.mc_sliderTop;
this.thumbBot_mc = this.scrollThumb_mc.mc_sliderBot;
this.thumbHeight = Math.max (this.thumbHeight, 6); // 6 is the smallest a thumb should be
this.midHeight = this.thumbHeight - this.thumbTop_mc._height - this.thumbBot_mc._height;
this.thumbMid_mc._yScale = this.midHeight * 100 / this.thumbMid_mc._height;
this.thumbMid_mc._y = this.thumbTop_mc._height;
this.thumbBot_mc._y = this.thumbTop_mc._height + this.midHeight;
this.scrollTop = this.scrollThumb_mc._y;
this.trackHeight = this.trackSize - this.thumbHeight;
this.scrollBot = this.trackHeight + this.scrollTop;
tmp = Math.min(tmp, this.maxPos);
this.setScrollPosition(Math.max(tmp, this.minPos));
}
}
FScrollBarClass.prototype.getScrollPosition = function ()
{
return this.scrollPosition;
}
FScrollBarClass.prototype.setScrollPosition = function(pos)
{
this.scrollPosition = pos;
if (this.scrollThumb_mc!=undefined) {
pos = Math.min(pos, this.maxPos);
pos = Math.max(pos, this.minPos);
}
this.scrollThumb_mc._y = ((pos-this.minPos) * this.trackHeight / (this.maxPos-this.minPos)) + this.scrollTop;
this.executeCallBack();
}
FScrollBarClass.prototype.setLargeScroll = function(lScroll)
{
this.largeScroll = lScroll;
}
FScrollBarClass.prototype.setSmallScroll = function(sScroll)
{
this.smallScroll = sScroll;
}
FScrollBarClass.prototype.setEnabled = function(enabledFlag)
{
var wasEnabled = this.enable;
if (enabledFlag && !wasEnabled) {
this.enable = enabledFlag;
if (this.textField!=undefined) {
this.setScrollTarget(this.textField);
} else {
this.setScrollProperties(this.pageSize,
this.cachedMinPos, this.cachedMaxPos);
this.setScrollPosition(this.cachedPos);
}
this.clickFilter = undefined;
} else if (!enabledFlag && wasEnabled) {
this.textField.removeListener(this);
this.cachedPos = this.getScrollPosition();
this.cachedMinPos = this.minPos;
this.cachedMaxPos = this.maxPos;
if (this.clickFilter==undefined) {
this.setScrollProperties(this.pageSize,0,0);
} else {
this.clickFilter=true;
}
this.enable = enabledFlag;
}
}
// stretches the track, creates + positions arrows
FScrollBarClass.prototype.setSize = function(hgt)
{
if (this._height==1) return;
this.width = hgt;
this.scrollTrack_mc._yscale = 100;
this.scrollTrack_mc._yscale = 100 * this.width / this.scrollTrack_mc._height;
if (this.upArrow_mc==undefined) {
this.attachMovie("UpArrow", "upArrow_mc", 1); //1 is arbitrary
this.attachMovie("DownArrow", "downArrow_mc", 2); //2 is arbitrary
this.downArrow_mc.controller = this.upArrow_mc.controller = this;
this.upArrow_mc.useHandCursor = this.downArrow_mc.useHandCursor = false;
this.upArrow_mc._x = this.upArrow_mc._y = 0;
this.downArrow_mc._x = 0;
}
this.scrollTrack_mc.controller = this;
this.downArrow_mc._y = this.width - this.downArrow_mc._height;
this.trackSize = this.width - (2 * this.downArrow_mc._height);
if (this.textField!=undefined) {
this.onTextChanged();
} else {
this.setScrollProperties(this.pageSize, this.minPos, this.maxPos);
}
}
// ::: PRIVATE METHODS
FScrollBarClass.prototype.scrollIt = function (inc, mode)
{
var delt = this.smallScroll;
if (inc!="one") {
delt = (this.largeScroll==0) ? this.pageSize : this.largeScroll;
}
var newPos = this.getScrollPosition() + (mode*delt);
if (newPos>this.maxPos) {
newPos = this.maxPos;
} else if (newPos<this.minPos) {
newPos = this.minPos;
}
this.setScrollPosition(newPos);
}
FScrollBarClass.prototype.startDragThumb = function()
{
this.lastY = this._ymouse;
this.onMouseMove = this.controller.dragThumb;
}
FScrollBarClass.prototype.dragThumb = function()
{
this.scrollMove = this._ymouse - this.lastY;
this.scrollMove += this._y;
if (this.scrollMove<this.controller.scrollTop) {
this.scrollMove = this.controller.scrollTop;
}
else if (this.scrollMove>this.controller.scrollBot) {
this.scrollMove = this.controller.scrollBot;
}
this._y = this.scrollMove;
var c = this.controller;
c.scrollPosition = Math.round( (c.maxPos-c.minPos) * (this._y - c.scrollTop) / c.trackHeight) + c.minPos;
this.controller.isScrolling = true;
updateAfterEvent();
this.controller.executeCallBack();
}
FScrollBarClass.prototype.stopDragThumb = function()
{
this.controller.isScrolling = false;
this.onMouseMove = null;
}
FScrollBarClass.prototype.startTrackScroller = function()
{
this.controller.trackScroller();
this.controller.scrolling = setInterval(this.controller, "scrollInterval", 500, "page", -1);
}
FScrollBarClass.prototype.scrollInterval = function(inc,mode)
{
clearInterval(this.scrolling);
if (inc=="page") {
this.trackScroller();
} else {
this.scrollIt(inc,mode);
}
this.scrolling = setInterval(this, "scrollInterval", 35, inc, mode);
}
FScrollBarClass.prototype.trackScroller = function()
{
if (this.scrollThumb_mc._y+this.thumbHeight<this._ymouse) {
this.scrollIt("page",1);
} else if (this.scrollThumb_mc._y>this._ymouse) {
this.scrollIt("page",-1);
}
}
FScrollBarClass.prototype.stopScrolling = function()
{
this.controller.downArrow_mc.gotoAndStop(1);
this.controller.upArrow_mc.gotoAndStop(1);
clearInterval(this.controller.scrolling);
}
FScrollBarClass.prototype.startUpScroller = function()
{
this.controller.upArrow_mc.gotoAndStop(2);
this.controller.scrollIt("one",-1);
this.controller.scrolling = setInterval(this.controller, "scrollInterval",500, "one", -1);
}
FScrollBarClass.prototype.startDownScroller = function()
{
this.controller.downArrow_mc.gotoAndStop(2);
this.controller.scrollIt("one",1);
this.controller.scrolling = setInterval(this.controller, "scrollInterval", 500, "one", 1);
}
//
// Begin Special text scroller functions
//
FScrollBarClass.prototype.setScrollTarget = function(tF)
{
if (tF == undefined) {
this.textField.removeListener(this);
delete this.textField[ (this.horizontal) ? "hScroller" : "vScroller" ];
if (!(this.textField.hScroller==undefined) && !(this.textField.vScroller==undefined)) {
this.textField.unwatch("text");
this.textField.unwatch("htmltext");
}
}
this.textField = undefined;
if (!(tF instanceof TextField)) return;
this.textField = tF;
this.textField[ (this.horizontal) ? "hScroller" : "vScroller" ] = this;
this.onTextChanged();
this.onChanged = function()
{
this.onTextChanged();
}
this.onScroller = function()
{
if (!this.isScrolling) {
if (!this.horizontal) {
this.setScrollPosition(this.textField.scroll);
} else {
this.setScrollPosition(this.textField.hscroll);
}
}
}
this.textField.addListener(this);
this.textField.watch("text", this.callback);
this.textField.watch("htmlText", this.callback);
}
FScrollBarClass.prototype.callback = function(prop, oldVal, newVal)
{
clearInterval(this.hScroller.synchScroll);
clearInterval(this.vScroller.synchScroll);
this.hScroller.synchScroll = setInterval(this.hScroller, "onTextChanged", 50);
this.vScroller.synchScroll = setInterval(this.vScroller, "onTextChanged", 50);
return newVal;
}
FScrollBarClass.prototype.onTextChanged = function()
{
if (!this.enable || this.textField==undefined) return;
clearInterval(this.synchScroll);
if (this.horizontal) {
var pos = this.textField.hscroll;
this.setScrollProperties(this.textField._width, 0, this.textField.maxhscroll);
this.setScrollPosition(Math.min(pos, this.textField.maxhscroll));
} else {
var pos = this.textField.scroll;
var pageSize = this.textField.bottomScroll - this.textField.scroll;
this.setScrollProperties(pageSize, 1, this.textField.maxscroll);
this.setScrollPosition(Math.min(pos, this.textField.maxscroll));
}
}
FScrollBarClass.prototype.executeCallBack = function()
{
if (this.textField==undefined) {
super.executeCallBack();
} else {
if ( this.horizontal ) {
this.textField.hscroll = this.getScrollPosition();
} else {
this.textField.scroll = this.getScrollPosition();
}
}
}
Object.registerClass("FScrollBarSymbol", FScrollBarClass);
#endinitclip
FSelectableItem
actions for frame 1
#initclip 2
/*
CLASS FSelectableItemClass
EXTENDS FUIComponentClass
FSelectableItemClass is the super class for UI in all list and menu items.
Handles Highlighting (inc colors), HitArea management.
*/

function FSelectableItemClass()
{
this.init();
}
FSelectableItemClass.prototype = new FUIComponentClass();
FSelectableItemClass.prototype.init = function()
{
// Keep the label from instantiating if this is just an Asset
// This helps save RAM and prevents masking issues
if (this._name!="itemAsset") {
this.highlighted = false;
this.layoutContent(100);
}
}
// ::: PUBLIC METHODS
/* DrawItem is the overall shell for displaying content in an item. Steps:
1) Displaying the text / other content to display in the item (from within the itmObj)
2) turning the highlight on or off
*/
FSelectableItemClass.prototype.drawItem = function(itmObj, selected)
{
this.displayContent(itmObj, selected);
if ( (this.highlighted!=selected) || ((this.controller.focused!=this.oldFocus) && selected) ) {
this.setHighlighted(selected);
}
this.oldFocus = this.controller.focused;
}
// This is for adjusting the size of the highlight and its associated hit area
FSelectableItemClass.prototype.setSize = function(width, height)
{
var LOWEST_DEPTH = -16384; // A constant (!) for the lowest authortime depth
this.width = width;
this.layoutContent(width); // EXTEND this for alternate content.
this.attachMovie("FHighlightSymbol", "highlight_mc", LOWEST_DEPTH);
this.highlight_mc._x=0.5;
this.highlight_mc._width = width-0.5;
this.highlight_mc._height = height;
this.highlight_mc.controller = this;
this.highlight_mc._alpha = 0;
this.highlight_mc.trackAsMenu = true;
this.highlight_mc.onPress = function()
{
if (this.controller.enable) {
this.controller.controller.clickHandler(this.controller.itemNum);
}
}
this.highlight_mc.onDragOver = function()
{
if (this.controller.controller.focused) {
this.onPress();
}
}
this.highlight_mc.useHandCursor = false;
this.highlight_mc.trackAsMenu = true;
}
// EXTEND this method to accomodate more than one label or other content.
FSelectableItemClass.prototype.setEnabled = function(enabledFlag)
{
this.enable =enabledFlag;
this.fLabel_mc.setEnabled(enabledFlag);
this.highlight_mc.gotoAndStop( (enabledFlag) ? "unfocused" : "disabled" );
}
// ::: PRIVATE METHODS
// EXTEND this method to change the content of an item and its layout
FSelectableItemClass.prototype.layoutContent = function(width)
{
this.attachMovie("FLabelSymbol", "fLabel_mc", 2, {hostComponent:this.controller});
this.fLabel_mc._x = 2;
this.fLabel_mc._y = 0;
this.fLabel_mc.setSize(width-2);
this.fLabel_mc.labelField.selectable = false;
}
// EXTEND this method to change the rendering of the content in an item (multiple labels, icons, etc)
FSelectableItemClass.prototype.displayContent = function(itmObj, selected)
{
//:: Begin choosing the text to display, by introspecting the object a little.
var tmpLabel = "";
if (itmObj.label!=undefined) {
tmpLabel = itmObj.label;
} else {
if (typeof(itmObj)=="object") {
for (var i in itmObj) {
if (i!="__ID__") {
tmpLabel = itmObj[i] + ", " + tmpLabel;
}
}
tmpLabel = tmpLabel.substring(0,tmpLabel.length-2);
} else {
tmpLabel = itmObj;
}
}
//:: End choosing text to display; display it.
if (this.fLabel_mc.labelField.text!=tmpLabel) {
this.fLabel_mc.setLabel(tmpLabel);
}
// color the label.
var clr = (selected) ? this.controller.styleTable.textSelected.value : this.controller.styleTable.textColor.value;
if (clr==undefined) {
clr = (selected) ? 0xffffff : 0x000000;
}
this.fLabel_mc.setColor(clr);
}
/* ::: convenience methods for accessing the data model associated with an item.
Use these for round-tripping item-to-data interactions (like opening a tree node, or putting an
input field in an item)
*/
FSelectableItemClass.prototype.getItemIndex = function()
{
return this.controller.getScrollPosition() + this.itemNum;
}
FSelectableItemClass.prototype.getItemModel = function()
{
return this.controller.getItemAt(this.getItemIndex());
}
FSelectableItemClass.prototype.getHostDataProvider = function()
{
return this.controller.dataProvider;
}
// ::: End convenience methods
// Controls the highlighting of items. Shouldn't need to be extended.
FSelectableItemClass.prototype.setHighlighted = function(flag)
{
fade = this.controller.styleTable["fadeRate"].value;
if (fade==undefined || fade==0 || !flag){
this.highlight_mc._alpha = (flag) ? 100 : 0;
delete this.onEnterFrame;
} else {
this.fadeN = fade;
this.fadeX = 1;
this.highLight_mc._alpha = 20;
this.onEnterFrame = function()
{
this.highLight_mc._alpha = 60*Math.sqrt(this.fadeX++/this.fadeN)+40;
if (this.fadeX>this.fadeN) {
delete this.onEnterFrame;
}
}
}
this.highlighted = flag;
}
#endinitclip
FLabel
actions for frame 1
#initclip 0
_global.FLabelClass = function()
{
if (this.hostComponent==undefined) {
this.hostComponent = (this._parent.controller==undefined) ? this._parent : this._parent.controller;
}
if (this.customTextStyle==undefined) {
if (this.hostComponent.textStyle==undefined) {
this.hostComponent.textStyle= new TextFormat();
}
this.textStyle = this.hostComponent.textStyle;
this.enable = true;
}
}
FLabelClass.prototype = new MovieClip();
Object.registerClass("FLabelSymbol", FLabelClass);
//::: PUBLIC METHODS
FLabelClass.prototype.setLabel = function(label)
{
var val = this.hostComponent.styleTable.embedFonts.value;
if (val!=undefined) {
this.labelField.embedFonts = val;
}
this.labelField.setNewTextFormat(this.textStyle);
this.labelField.text = label;
this.labelField._height = this.labelField.textHeight + 2;
}
FLabelClass.prototype.setSize = function(width) // note that height is textFormat-based.
{
this.labelField._width = width;
}
FLabelClass.prototype.setEnabled = function(enable)
{
this.enable=enable;
var tmpColor = this.hostComponent.styleTable[ (enable) ? "textColor" : "textDisabled" ].value;
if (tmpColor==undefined) {
tmpColor = (enable) ? 0x000000 : 0x888888;
}
this.setColor(tmpColor);
}
FLabelClass.prototype.getLabel = function()
{
return this.labelField.text;
}
FLabelClass.prototype.setColor = function(col)
{
this.labelField.textColor = col;
}
#endinitclip[/colorprp]


Gen_RNWY_Drawer
actions for frame 1
RCdx = P2._x-P1._x;
RCdy = P2.

Verfasst: 3. Jun 2005, 00:45
von Zillion
[quote4wb]
[color=blue4wb]
Gen_RNWY_Drawer
actions for frame 1
RCdx = P2._x-P1._x;
RCdy = P2._y-P1._y;
Line._x = P1._x;
Line._y = P1._y;
Line._xscale = RCdx;
Line._yscale = RCdy;
actions for frame 2
gotoAndPlay(_currentframe-1)
RulerPoint
actions for dragbutton
on (press) {
startDrag("", true);
}
on (release) {
stopDrag();
RulerPoint2
actions for dragbutton2
on (press) {
startDrag("", true);
}
on (release) {
stopDrag();
[/color4wb]
[color=olive4wb] DataProvider //<---UNWICHTIG
actions for frame 1
#initclip 0
_global.DataProviderClass = function()
{
this.init();
}

DataProviderClass.prototype.init = function()
{
this.items = new Array();
this.uniqueID = 0;
this.views = new Array();
}
DataProviderClass.prototype.addView = function(viewRef)
{
this.views.push(viewRef);
var eventObj = {event: "updateAll"};
viewRef.modelChanged(eventObj);
}
DataProviderClass.prototype.addItemAt = function(index, value)
{
if (index<this.getLength()) {
this.items.splice(index, 0, "tmp");
}
this.items[index] = new Object();
if (typeof(value)=="object") {
this.items[index] = value;
} else {
this.items[index].label = value;
}
this.items[index].__ID__ = this.uniqueID++;
var eventObj = {event:"addRows", firstRow:index, lastRow:index};
this.updateViews(eventObj);
}
DataProviderClass.prototype.addItem = function(value)
{
this.addItemAt(this.getLength(), value);
}
DataProviderClass.prototype.removeItemAt = function(index)
{
var tmpItm = this.items[index];
this.items.splice(index,1);
var eventObj = {event:"deleteRows", firstRow:index, lastRow:index};
this.updateViews(eventObj)
return tmpItm;
}
DataProviderClass.prototype.removeAll = function()
{
this.items = new Array();
this.updateViews({event:"deleteRows", firstRow:0, lastRow:this.getLength()-1});
}
DataProviderClass.prototype.replaceItemAt = function(index, itemObj)
{
if (index<0 || index>=this.getLength()) {
return;
}
var tmpID = this.getItemID(index);
if (typeof(itemObj)=="object") {
this.items[index] = itemObj;
} else {
this.items[index].label = itemObj;
}
this.items[index].__ID__ = tmpID;
this.updateViews( {event:"updateRows", firstRow:index, lastRow:index} );
}
DataProviderClass.prototype.getLength = function()
{
return this.items.length;
}
DataProviderClass.prototype.getItemAt = function(index)
{
return this.items[index];
}
DataProviderClass.prototype.getItemID = function(index)
{
return this.items[index].__ID__;
}
DataProviderClass.prototype.sortItemsBy = function(fieldName, order)
{
this.items.sortOn(fieldName);
if (order=="DESC") {
this.items.reverse();
}
this.updateViews( {event:"sort"} );
}
// ::: PRIVATE METHODS
DataProviderClass.prototype.updateViews = function(eventObj)
{
for (var i=0; i<this.views.length; i++) {
this.views.modelChanged(eventObj);
}
}
#endinitclip
FUIComponent
actions for frame 1
#initclip 0
/*=============
FUIComponentClass

The base class for all FUI controls in flash6.

==============*/
function FUIComponentClass()
{
this.init();
}
FUIComponentClass.prototype = new MovieClip();
FUIComponentClass.prototype.init = function()
{
this.enable = true;
this.focused = false;
this.useHandCursor = false;
//accessibility :: hide non accessible components from screen reader
this._accImpl = new Object();
this._accImpl.stub = true;
this.styleTable = new Array();
if (_global.globalStyleFormat==undefined) {
_global.globalStyleFormat = new FStyleFormat();
globalStyleFormat.isGlobal = true;
_global._focusControl = new Object();
_global._focusControl.onSetFocus = function(oldFocus, newFocus)
{
oldFocus.myOnKillFocus();
newFocus.myOnSetFocus();
}
Selection.addListener(_global._focusControl);
}
if (this._name!=undefined) {
this._focusrect = false;
this.tabEnabled = true;
this.focusEnabled = true;
this.tabChildren = false;
this.tabFocused = true;
if (this.hostStyle==undefined) {
globalStyleFormat.addListener(this);
} else {
this.styleTable = this.hostStyle;
}
this.deadPreview._visible = false;
this.deadPreview._width = this.deadPreview._height = 1;
this.methodTable = new Object();
this.keyListener = new Object();
this.keyListener.controller = this;
this.keyListener.onKeyDown = function()
{
this.controller.myOnKeyDown();
}
this.keyListener.onKeyUp = function()
{
this.controller.myOnKeyUp();
}
for (var i in this.styleFormat_prm) {
this.setStyleProperty(i, this.styleFormat_prm);
}
}
}
// ::: PUBLIC METHODS
FUIComponentClass.prototype.setEnabled = function(enabledFlag)
{
this.enable = (arguments.length>0) ? enabledFlag : true;
this.tabEnabled = this.focusEnabled = enabledFlag;
if (!this.enable && this.focused) {
Selection.setFocus(undefined);
}
}
FUIComponentClass.prototype.getEnabled = function()
{
return this.enable;
}
FUIComponentClass.prototype.setSize = function(w, h)
{
this.width = w;
this.height = h;
this.focusRect.removeMovieClip();
}
FUIComponentClass.prototype.setChangeHandler = function(chng,obj)
{
this.handlerObj = (obj==undefined) ? this._parent : obj;
this.changeHandler = chng;
}
// ::: PRIVATE METHODS
FUIComponentClass.prototype.invalidate = function(methodName)
{
this.methodTable[methodName] = true;
this.onEnterFrame = this.cleanUI;
}
FUIComponentClass.prototype.cleanUI = function()
{
// rules of invalidation : setSize beats everyone else
if (this.methodTable.setSize) {
this.setSize(this.width, this.height);
} else {
this.cleanUINotSize();
}
this.methodTable = new Object();
delete this.onEnterFrame;
}
// EXTEND this method to add new invalidation rules.
FUIComponentClass.prototype.cleanUINotSize = function()
{
for (var funct in this.methodTable) {
this[funct]();
}
}
FUIComponentClass.prototype.drawRect = function(x, y, w, h)
{
var inner = this.styleTable.focusRectInner.value;
var outer = this.styleTable.focusRectOuter.value;
if (inner==undefined) {
inner = 0xffffff;
}
if (outer==undefined) {
outer = 0x000000;
}
this.createEmptyMovieClip( "focusRect", 1000 );
// this.focusRect._alpha = 50; // uncomment out this line if you want focus rect with alpha
this.focusRect.controller = this;
this.focusRect.lineStyle(1, outer);
this.focusRect.moveTo(x, y);
this.focusRect.lineTo(x+w, y);
this.focusRect.lineTo(x+w, y+h);
this.focusRect.lineTo(x, y+h);
this.focusRect.lineTo(x, y);
this.focusRect.lineStyle(1, inner);
this.focusRect.moveTo(x+1, y+1);
this.focusRect.lineTo(x+w-1, y+1);
this.focusRect.lineTo(x+w-1, y+h-1);
this.focusRect.lineTo(x+1, y+h-1);
this.focusRect.lineTo(x+1, y+1);
}
FUIComponentClass.prototype.pressFocus = function()
{
this.tabFocused = false;
this.focusRect.removeMovieClip();
Selection.setFocus(this);
}
// OVERWRITE THIS METHOD FOR YOUR OWN RECTANGLES
FUIComponentClass.prototype.drawFocusRect = function()
{
this.drawRect(-2, -2, this.width+4, this.height+4);
}
FUIComponentClass.prototype.myOnSetFocus = function()
{
this.focused =true;
Key.addListener(this.keyListener);
if (this.tabFocused) {
this.drawFocusRect();
}
}
FUIComponentClass.prototype.myOnKillFocus = function()
{
this.tabFocused = true;
this.focused =false;
this.focusRect.removeMovieClip();
Key.removeListener(this.keyListener);
}
FUIComponentClass.prototype.executeCallBack = function()
{
this.handlerObj[this.changeHandler](this);
}
// An FUIComponentClass Helper for the styleFormat :
// puts a styleFormat value into the component's styleTable,
// updates the component (the coloredMCs that make up a skin)
FUIComponentClass.prototype.updateStyleProperty = function(styleFormat, propName)
{
this.setStyleProperty(propName, styleFormat[propName], styleFormat.isGlobal);
}
FUIComponentClass.prototype.setStyleProperty = function(propName, value, isGlobal)
{
if (value=="") return;
var tmpValue = parseInt(value);
if (!isNaN(tmpValue)) {
value = tmpValue;
}
var global = (arguments.length>2) ? isGlobal : false;
if (this.styleTable[propName]==undefined) {
this.styleTable[propName] = new Object();
this.styleTable[propName].useGlobal=true;
}
if (this.styleTable[propName].useGlobal || !global) {
this.styleTable[propName].value = value;
if (this.setCustomStyleProperty(propName, value)) {
// a hook for extending further styleProperty reactions.
} else if (propName == "embedFonts") {
this.invalidate("setSize");
}
else if (propName.subString(0,4)=="text") {
if (this.textStyle==undefined) {
this.textStyle = new TextFormat();
}
var textProp = propName.subString(4, propName.length);
this.textStyle[textProp] = value;
this.invalidate("setSize");
} else {
for (var j in this.styleTable[propName].coloredMCs) {
var myColor = new Color(this.styleTable[propName].coloredMCs[j]);
if (this.styleTable[propName].value==undefined) {
var myTObj = { ra: '100', rb: '0', ga: '100', gb: '0', ba: '100', bb: '0', aa: '100', ab: '0'};
myColor.setTransform(myTObj);
} else {
myColor.setRGB(value);
}
}
}
this.styleTable[propName].useGlobal = global;
}
}
/* Another styleFormat helper --
/ A skin mc calls up to this to register its existence and the
/ styleTable property it wants to listen to */
FUIComponentClass.prototype.registerSkinElement = function(skinMCRef, propName)
{
if (this.styleTable[propName]==undefined) {
this.styleTable[propName] = new Object();
this.styleTable[propName].useGlobal = true;
}
if (this.styleTable[propName].coloredMCs==undefined) {
this.styleTable[propName].coloredMCs = new Object();
}
this.styleTable[propName].coloredMCs[skinMCRef]=skinMCRef;
if (this.styleTable[propName].value!=undefined) {
var myColor = new Color(skinMCRef);
myColor.setRGB(this.styleTable[propName].value);
}
}
// ============ styleFormat Class =========== //
_global.FStyleFormat = function()
{
this.nonStyles = {listeners:true, isGlobal:true, isAStyle:true, addListener:true,
removeListener:true, nonStyles:true, applyChanges:true};
this.listeners = new Object();
this.isGlobal = false;
if (arguments.length>0) {
for (var i in arguments[0]) {
this = arguments[0];
}
}
}
_global.FStyleFormat.prototype = new Object();
// ::: PUBLIC FStyleFormat Methods
FStyleFormat.prototype.addListener = function()
{
for (var arg=0; arg<arguments.length; arg++) {
var mcRef = arguments[arg];
this.listeners[arguments[arg]] = mcRef;
for (var i in this) {
if (this.isAStyle(i)) {
mcRef.updateStyleProperty(this, i.toString());
}
}
}
}
FStyleFormat.prototype.removeListener = function(component)
{
this.listeners[component] =undefined;
for (var prop in this) {
if (this.isAStyle(prop)) {
if (component.styleTable[prop].useGlobal==this.isGlobal) {
component.styleTable[prop].useGlobal = true;
var value = (this.isGlobal) ? undefined : globalStyleFormat[prop];
component.setStyleProperty(prop, value, true);
}
}
}
}
FStyleFormat.prototype.applyChanges = function()
{
var count=0;
for (var i in this.listeners) {
var component = this.listeners;
if (arguments.length>0) {
for (var j=0; j<arguments.length; j++) {
if (this.isAStyle(arguments[j])) {
component.updateStyleProperty(this, arguments[j]);
}
}
} else {
for (var j in this) {
if (this.isAStyle(j)) {
component.updateStyleProperty(this, j.toString());
}
}
}
}
}
// ::: PRIVATE FStyleFormat Methods
FStyleFormat.prototype.isAStyle = function(name)
{
return (this.nonStyles[name]) ? false : true;
}
#endinitclip
fsb_ScrollTrack
actions for frame 1
var component = _parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(track_mc, "scrollTrack");
fsb_DownArrow
actions for frame 1
stop();
actions for frame 2
stop();
actions for frame 3
stop();
fsb_ScrollThumb
actions for frame 1
stop();
fsb_UpArrow
actions for frame 1
stop();
actions for frame 2
stop();
actions for frame 3
stop();
FHighlight
actions for frame 1
var component = _parent.controller;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(highlight_mc, "selection");
stop();
actions for frame 2
component.registerSkinElement(highlight_mc2, "selectionDisabled");
stop();
actions for frame 3
component.registerSkinElement(highlight_mc3, "selectionUnfocused");
stop();
fsb_downArrow
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(arrow_mc, "arrow");
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_downArrow_press
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(arrow_mc, "arrow");
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_downArrow_disabled
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(arrow_mc, "foregroundDisabled");
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_thumb_top
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_thumb_middle
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_thumb_bottom
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(highlight3D_mc, "highlight3D");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
fsb_upArrow
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(arrow_mc, "arrow");
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_upArrow_press
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(arrow_mc, "arrow");
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
fsb_upArrow_disabled
actions for frame 1
var component = _parent._parent;
//::: don't delete the above
//::: SKIN ELEMENT REGISTRATION
/* To add styleFormat properties to your skins :
1) Break up your skin into individual movie clips (skinElements)
2) add a registerSkinElement line of code for each skinElement
component.registerSkinElement(skinElement, propertyName)
// makes the skinElement Listen to the propertyName specified (eg: "background")
n*/
component.registerSkinElement(arrow_mc, "foregroundDisabled");
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
[/color4wb][/quote4wb]

Verfasst: 3. Jun 2005, 09:16
von Pjotr
Ja, das ist echt viel Arbeit. Das wissen wir zu schätzen, Zillion! Aber grossartig was mit dem Code helfen kann ich dir leider nicht, da mindestens zwei Drittel davon nur Bushaltestellle bis Hauptbahnhof für mich ist = )