Blackwizzard.com v3 :: source complete

Soyez le premier à donner votre avis sur cette source.

Vue 16 818 fois - Téléchargée 5 850 fois

Description

Voici la source du site BlackWizzard.com(.net/.org/.tk).
C'est la version 3.0, elle est simple et complexe en meme temps, selon votre nivo.
si vous gerez les proto et le XML, alors la source va vous paraitre simple, sinon, il n'est jamais trop tard pour commencer!

Le code est clair, centralisé et orienté objet.

Source / Exemple :


xml_main_file = "main.xml";
document_root = "";
//
// declaration xml
xml_main = new XML();
xml_news = new XML();
xml_news_content = new XML();
xml_server = new XML();
xml_page = new XML();
xml_menu = new XML();

//
// ignorewhite = true
xml_main.ignoreWhite = true;
xml_news.ignoreWhite = true;
xml_news_content.ignoreWhite = true;
xml_server.ignoreWhite = true;
xml_page.ignoreWhite = true;
xml_menu.ignoreWhite = true;

//
// arrays pour les news
tbl_news_titre = new Array();
tbl_news_texte = new Array();
tbl_news_img_src = new Array();
tbl_news_img_title = new Array();
tbl_news_link_a = new Array();
tbl_news_link_text = new Array();
//
// arrays pour les menus
tbl_server_picture = new Array();
tbl_server_text = new Array();
tbl_server_href = new Array();
tbl_page_picture = new Array();
tbl_page_text = new Array();
tbl_page_href = new Array();
//
//
initial_panel_y = _root.menu_server._y;
show("page");
//
_root.onEnterFrame = function() {
	objToScroll.scrolling(_root.news_scrollValue);
	_root.move_menuItem();
};
_root.onKeyUp = function() {
	_root.news_scrollValue = 0;
};
//*************************************** PARSING MAIN ******************************************
// load xml_main
xml_main.load(xml_main_file);
xml_main.onLoad = function(success) {
	xml_main_base = xml_main.childNodes[0];
	//
	// definition des fichier a charger
	xml_news_file = xml_main_base.childNodes[0].attributes.file;
	xml_server_file = xml_main_base.childNodes[1].attributes.file;
	xml_page_file = xml_main_base.childNodes[2].attributes.file;
	xml_menu_file = xml_main_base.childNodes[3].attributes.file;
	
	//
	// chargement des news
	xml_news.load(xml_news_file);
	xml_news.onLoad = function(success) {
		xml_news.readNews();
	};
	xml_server.load(xml_server_file);
	xml_server.onLoad = function(success) {
		xml_server.readserver();
	};
	xml_page.load(xml_page_file);
	xml_page.onLoad = function(success) {
		xml_page.readpage();
	};
	xml_menu.load(xml_menu_file);
	xml_menu.onLoad = function(success) {
		xml_menu.readmenu();
	};
	
};
//*************************************** PARSING NEWS ******************************************
// Parsing News
xml.prototype.readNews = function() {
	xml_news_base = xml_news.childNodes[0];
	news_i0 = 0;
	while (xml_news_base.childNodes[news_i0] != null) {
		xml_news_node = xml_news_base.childNodes[news_i0];
		tbl_news_titre[news_i0] = xml_news_node.childNodes[0].childNodes[0].nodeValue;
		tbl_news_texte[news_i0] = xml_news_node.childNodes[1].childNodes[0].nodeValue;
		tbl_news_img_src[news_i0] = xml_news_node.childNodes[2].attributes.src;
		tbl_news_img_title[news_i0] = xml_news_node.childNodes[2].attributes.title;
		tbl_news_link_a[news_i0] = xml_news_node.childNodes[3].attributes.href;
		tbl_news_link_text[news_i0] = xml_news_node.childNodes[3].childNodes[0].nodeValue;
//pas de news dans cette version...a venir, mais les fonctions sont là!
		news_i0++;
	}
};
//
// Creating News
movieclip.prototype.createNews = function(index, titre, texte, img_src, img_title, url_href, url_text) {
	texte = texte.replace("[br]", "<br>");
	this.news.duplicateMovieClip("panel_news"+index, index);
	if (this["panel_news"+(index-1)] != null) {
		this["panel_news"+index]._y = this["panel_news"+(index-1)]._y+150;
	}
	this["panel_news"+index].txt.htmlText = "<font color='#ffcc00'><font size='12'>"+titre+"</font></font><br>"+texte;
	if (img_pic.length>=1) {
		this["panel_news"+index].pic.loadMovie(img_src);
	}
	this["panel_news"+index].href = url_href;
	this["panel_news"+index]._alpha = 100;
};
//
// Loading news file (by asfunction)
function loadNewsXML(file) {
	xml_news_content.load(file);
	xml_news_content.onLoad = function(success) {
		var_news_content_titre = xml_news_content.childNodes[0].childNodes[0].childNodes[0].nodeValue;
		var_news_content_texte = xml_news_content.childNodes[0].childNodes[1].childNodes[0].nodeValue;
		var_news_content_picture = xml_news_content.childNodes[0].childNodes[2].attributes.src;
		_root.panel_news2.createNewsItem(var_news_content_titre, var_news_content_texte, var_news_content_picture);
		show("panel_news2");
	};
}
//
// Creating News-file item
movieclip.prototype.createNewsItem = function(titre, texte, picture) {
	texte = texte.replace("[br]", "<br>");
	with (this.texte) {
		background = true;
		backgroundColor = 0x333333;
		border = true;
		borderColor = 0x505050;
		autoSize = "left";
		wordWrap = true;
		htmlText = "<font color='#ffcc00' size='12'>"+titre+"</font><br><br>"+texte;
	}
	this._alpha = 100;
};
//*************************************** PARSING server *****************************************
// Parsing server
xml.prototype.readserver = function() {
	xml_server_base = xml_server.childNodes[0];
	server_i0 = 0;
	while (xml_server_base.childNodes[server_i0] != null) {
		xml_server_node = xml_server_base.childNodes[server_i0];
		tbl_server_text[server_i0] = xml_server_node.attributes.text;
		tbl_server_href[server_i0] = xml_server_node.attributes.href;
		_root.menu_server.createListItem(server_i0, tbl_server_text[server_i0], tbl_server_href[server_i0]);
		_root.menu_server.listTitle.text = "Owned Servers";
		server_i0++;
	}
};
//*************************************** PARSING page *****************************************
// Parsing page
xml.prototype.readpage = function() {
	xml_page_base = xml_page.childNodes[0];
	page_i0 = 0;
	while (xml_page_base.childNodes[page_i0] != null) {
		xml_page_node = xml_page_base.childNodes[page_i0];
		tbl_page_text[page_i0] = xml_page_node.attributes.text;
		tbl_page_href[page_i0] = xml_page_node.attributes.href;
		_root.menu_page.createListItem(page_i0, xml_page_node.attributes.text, xml_page_node.attributes.href,xml_page_node.attributes.cost, xml_page_node.attributes.society, xml_page_node.attributes.dev_id,xml_page_node.childNodes[0].childNodes[0].nodeValue);
		_root.menu_page.listTitle.text = "Owned or realised Pages";
		page_i0++;
	}
};
//*************************************** PARSING menu *****************************************
// Parsing menu
xml.prototype.readmenu = function() {
	xml_menu_base = xml_menu.childNodes[0];
	menu_i0 = 0;
	while (xml_menu_base.childNodes[menu_i0] != null) {
		xml_menu_node = xml_menu_base.childNodes[menu_i0];
		_root.menu.createMenuItem(menu_i0, xml_menu_node.attributes.text, xml_menu_node.attributes.href);
		menu_i0++;
	}
};
//*************************************** CREATELISTITEM *****************************************
//
movieclip.prototype.createListItem = function(index, texte, href, cost, society, auth_id, desc) {
	texte = texte.replace("[br]", "<br>");
	this.item.duplicateMovieClip("item"+index, index);
	itemback = this["item"+(index-1)]._y;
	if (itemback == null) {
		itemback = -17;
	}
	this["item"+index]._y = itemback+17;
	this["item"+index].href = href;
	this["item"+index].txt.text = texte;
	this["item"+index].cost = cost;
	this["item"+index].society = society;
	this["item"+index].auth_id = auth_id;
	this["item"+index].desc = desc;
	this["item"+index].texte = texte;
	this["item"+index]._alpha = 100;
};
//*************************************** CREATEMENUITEM *****************************************
//
movieclip.prototype.createMenuItem = function(index, texte, href) {
	texte = texte.replace("[br]", "<br>");
	this.item.duplicateMovieClip("item"+index, index);
	itemback = this["item"+(index-1)]._x;
	if (itemback == null) {
		itemback = this["item"]._x-17;
		itemback._y = 2.2;
		itemback._alpha=0;
	}
	this["item"+index]._x = itemback+17;
	this["item"+index]._y = 12.2;
	this["item"+index].href = href;
	this["item"+index].desc = texte;
	this["item"+index]._alpha = 100;
	return texte;
};
//*************************************** UTILITIES ********************************************
// Utilities
//
// Replace function
String.prototype.replace = function(str, rep, chr) {
	var t = (chr<0) ? this.substr(chr) : this.substr(0, chr);
	var s = str.length;
	var r = rep.length;
	var p = t.indexOf(str);
	while (p != -1) {
		t = t.substr(0, p)+rep+t.substr(p+s);
		p = t.indexOf(str, p+r);
	}
	return (chr) ? (chr<0) ? this.substr(0, this.length+chr)+t : t+this.substr(chr) : t;
};
movieclip.prototype.scrolling = function(value) {
	scrollStep = 3;
	this._y += scrollStep*value;
};
function hideAll() {
	_root.menu_page._visible = 0;
	_root.menu_server._visible = 0;
	_root.site_desc._visible = 0;
}
function show(panel) {
	_root.hideAll();
	switch (panel) {
	case "news" :
		_root.panel_news._visible = 1;
		objToScroll = _root.panel_news;
		break;
	case "server" :
		_root.menu_server._visible = 1;
		objToScroll = _root.menu_server;
		break;
	case "page" :
		_root.menu_page._visible = 1;
		_root.site_desc._visible = 1;
		objToScroll = _root.menu_page;
		break;
	}
	objToScroll._y = initial_panel_y;
}
function contact() {
	getURL("mailto:postmaster@blackwizzard.com");
}

Conclusion :


pas de bugs connus...
amusez vous.

le logo possede un copyright donc utilisation publique et reproduction interdite!

Le code, lui, est libre.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
35
Date d'inscription
vendredi 12 janvier 2007
Statut
Membre
Dernière intervention
18 mars 2010

Bonjour,

Ce code va bien m'aider ! Depuis le tps que je cherche!
Par contre je n'arrive pas a trouver dans le .fla le texte dynamique correspondant à "texte" dans le fichier xml (en fait, la liste située a gauche et qui fait apparaitre les textes de droite au survol) ??

J'espere avoir été clair , lol il faut avoir vu le swf pour comprendre je pense

Merci !
Messages postés
3
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
29 novembre 2006

hoP je repasse par là.

Je me demandais...

Est il possible de remplacer les textes apparaissant en mouseover par des images, mais en gardant la même source ? Si oui, comment faire ?

Encore bravo... J'me répète oué je sais...
Messages postés
1258
Date d'inscription
mercredi 21 mars 2001
Statut
Modérateur
Dernière intervention
21 juin 2009
2
de rien ;)
Messages postés
3
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
29 novembre 2006

Désolé pour la fausse alerte... J'ai fini par trouver ( en partie )

Revoir l'encodage des pages en ISO-8859-1 puis forcer flash à utiliser l'encodage en passant par la case useCodepage...

Mais chose étrange, si j'ai bien récuperé mes accents, j'ai toujours pas de cédille...
Mais bon j'en reste là, ça m'a gavé... :p

En tout cas, génialissime cette source... Un grand merci... ;)
Messages postés
3
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
29 novembre 2006

Bravooooooooo !!!!!
Depuis le temps que je cherchais ce type de source !!!!!
( Je sais c'est pas bien de piquer les sources des autres mais je suis juste un pti zikos qui monte un site pour son groupe, je n'ai pas du tout le but de vouloir devenir webmaster )... :p

Juste un petit souci... :s
Je constate que les accents, trémas, et cédilles ne s'affichent pas du tout :'(
Comment remédier à ce problème ?

PLEASE HELP...
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.