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

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
По сути это обычный XML.
Побольше кода..... ну.. извольте:

Код AS1/AS2:
function LoadDat(){
	LD.desc.text = "Загрузка уровней"
	if ( local() ){
		urlxml = "levels.xml"
	} else {
		urlxml = _level0.appUrl+"levels.xml?hash="+random(9999999)+"&CRC="+random(9999999)
	}
 
	STAT.text += "\nLoading "+"LEVELS"
 
	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
				STAT._visible = true
			}
			else
			{
				var node = prof.firstChild
				trace("XML LOAD NODES:"+node.childNodes.length+" NodeName:"+node.nodeName)
 
				for ( var T in node.attributes){
					trace("OPTIONS."+T+"="+node.attributes[T])
					OPTIONS[T] = node.attributes[T]
				}
 
				for ( var i=0; i<node.childNodes.length; i++){
					var nodeC = node.childNodes[i]
 
					switch ( nodeC.nodeName )
					{
						case "LEVEL":
							var TR = new Object()
								TR.POINTS = new Array()
								TR.LINES = new Array()
								TR.OBJECTS = new Array()
 
							for ( var T in nodeC.attributes){ // Разобрали базовый узел тутора
								TR[T] = nodeC.attributes[T] 
								trace("       addTutor att:"+T+"="+nodeC.attributes[T])
							}
 
							//trace( "-------------"+nodeC.nodeName+" id="+ TR.id)
 
							for ( var j=0; j<nodeC.childNodes.length; j++){
								var nodeL = nodeC.childNodes[j]	
								//trace( nodeL.nodeName )
								switch( nodeL.nodeName ){
									case "point":
										var cfgObj = new Object()
										for ( var T in nodeL.attributes){ 
											cfgObj[T] = nodeL.attributes[T]
											//trace( "         "+T +"="+ nodeL.attributes[T])
										}
										TR.POINTS[Number(cfgObj.id)] = cfgObj
									break;	
									case "line":
										var cfgObj = new Object()
										for ( var T in nodeL.attributes){ 
											cfgObj[T] = nodeL.attributes[T]
											//trace( "         "+T +"="+ nodeL.attributes[T])
										}
										TR.LINES.push( cfgObj )
									break;	
									case "object":
										var cfgObj = new Object()
										for ( var T in nodeL.attributes){ 
											cfgObj[T] = nodeL.attributes[T]
											//trace( "         "+T +"="+ nodeL.attributes[T])
										}
										TR.OBJECTS.push( cfgObj )
									break;										
								}
							}
 
 
							LEVELSCFG[Number(TR.id)] = TR
 
							trace( TR.id+" -- "+TR.POINTS.length +" / "+TR.LINES.length+" / "+TR.OBJECTS.length )
 
						break;			
					}
				}
				STAT.text += "...OK"
				LD.removeMovieClip();
				LDR.removeMovieClip();				
				_root.gotoAndPlay(2)
			}				
		}
		else{
			STAT.text += "\nXML LOAD ERROR: "+urlxml
			STAT._visible = true
		}
	}
}
Добавлено через 22 минуты
К слову сказать, в общем случае вы Html не сможете прочитать, если crossdomain.xml этого не предполагает.
Локально работать будет, удаленно может перестать.
Но могу ошибаться.
Но будьте готовы.
Попробуйте сначала его просто оттуда загрузить.
Может быть и париться далее не стоит.
Хотя, о5-таки, можно вывернутсья через рнр....
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2