Показать сообщение отдельно
Старый 12.09.2012, 11:32
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 6  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Код AS1/AS2:
function LoadDat(){
 
	if ( local() ){
		urlxml = "constructor.txt"
	} else {		
		urlxml = "constructor.txt?hash="+random(9999999)+"&CRC="+random(9999999)
	}
 
	var prof:XML = new XML();
	prof.ignoreWhite = true;
	prof.load(urlxml);
	ShowLoad( prof, desc )		
	prof.onLoad = function(success) {
		if (success)
		{	
			if (prof.status != 0){
				var errorMessage:String;
				switch (prof.status) 
				{
					case -2 :
						errorMessage = "A CDATA section was not properly terminated.";
						break;
					case -3 :
						errorMessage = "The XML declaration was not properly terminated.";
						break;
					case -4 :
						errorMessage = "The DOCTYPE declaration was not properly terminated.";
						break;
					case -5 :
						errorMessage = "A comment was not properly terminated.";
						break;
					case -6 :
						errorMessage = "An XML element was malformed.";
						break;
					case -7 :
						errorMessage = "Out of memory.";
						break;
					case -8 :
						errorMessage = "An attribute value was not properly terminated.";
						break;
					case -9 :
						errorMessage = "A start-tag was not matched with an end-tag.";
						break;
					case -10 :
						errorMessage = "An end-tag was encountered without a matching start-tag.";
						break;
					default :
						errorMessage = "An unknown error has occurred.";
						break;
				}
				STAT.text += "\nXML Structure Error:\n"+prof.status+" - "+errorMessage
			}
			else
			{
				var node = prof.firstChild
				trace("XML LOAD NODES:"+node.childNodes.length+" NodeName:"+node.nodeName)
 
				for ( var T in node.attributes){
					trace(T+"="+node.attributes[T])
					OPTIONS[T] = node.attributes[T]
				}
 
 
				for ( var i=0; i<node.childNodes.length; i++)
				{
					var nodeC = node.childNodes[i]
					//trace( "-------------"+nodeC.nodeName )
					switch ( nodeC.nodeName )
					{
						case "COLORS":
							for ( var T in nodeC.attributes){
								//trace("color Options: "+T+"="+nodeC.attributes[T])
								COLORS[T] = nodeC.attributes[T]
							}
							COLORS.DAT = new Array()
							for ( var j=0; j<nodeC.childNodes.length; j++)
							{
								var COL = COLORS.DAT[COLORS.DAT.length] = new Object()
								var nodeL = nodeC.childNodes[j]
 
								for ( var T in nodeL.attributes) {
									COL[T] = nodeL.attributes[T];
									//trace("          >"+T+"="+COL[T] + " / " + nodeL.attributes[T] )
								}
							}
						break;
					}
				}
				_root.gotoAndPlay(2)
			}				
		}
		else
		{
			STAT.text = "XML LOAD ERROR: "+urlxml
		}
	}
}
Примерный вид ХМЛ-я

Код:
<?xml version="1.0" encoding="UTF-8"?>
<CONSTRUCTOR editor="true">

	<COLORS bigURL="http://mysite.ru/images/" miniURL="http://mysite.ru/preview/" >
		<mat name="Черный" coler="101015"	href="black.jpg"	src="b285eddbee35437578faf23e34d65f2d.jpg" />
		<mat name="Голубой" coler="5E7F8E"	href="blue.jpg"		src="66914e303a9eda73de9d7046e7e3cd4d.jpg" />
		<mat name="Синий" coler="222439"	href="cyan.jpg"		src="ab102177bbaa5bd211686f8f9d5d651d.jpg" />
		<mat name="Фиолетовый" coler="77325E"	href="fiolet.jpg"	src="c3e7de118bdf55389360fb58d69a419a.jpg" />
		<mat name="Серый" coler="798287"	href="gray.jpg"		src="44ee0fdf6ca874fd7c602b7bf0742a26.jpg" />
		<mat name="Зеленый" coler="02471B"	href="green.jpg"	src="6801cc33fab8f908152f548a5e649a7d.jpg" />
		<mat name="Оранжевый" coler="DD3005"	href="orange.jpg"	src="e8942d666b1042a01b5d2c32a7269a84.jpg" />
		<mat name="Красный" coler="AF0102"	href="red.jpg"		src="80004d7ddf6f031f772b4345414e646d.jpg" />
		<mat name="Серебристый" coler="ADB3C3"	href="silver.jpg"	src="1ab4f22dc6ef26fe5852833c80c1b306.jpg" />
		<mat name="Белый" coler="EEEEFF"	href="white.jpg"	src="ef59eda1e6e3f320a6dfc50d162bede3.jpg" />
		<mat name="Желтый" coler="DFA807"	href="yellow.jpg"	src="3b674872249c5150d0067706afb28e24.jpg" />
	</COLORS>

	<PARTS>
	</PARTS>

</CONSTRUCTOR>
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2