Userscripts/Développeurs

De Wiki de Dreadcast
Aller à : navigation, rechercher

Intéressé par le développement d’user-scripts ? <br\> C'est par ici, vous allez voir, c'est pas compliqué.<br\>

Introduction

Ces scripts sont développés en JavaScript, il faut donc des connaissance dans ce langage pour y parvenir, quoi que.<br\> Pour découvrir ce langage, je vous conseille le cours du Site du Zéro.

Pas à pas

Entête

Ce qui distingue un fichier d'userscript de celui d'un script JS normal, c'est en premier lieu l'entête. Elle est plutôt simple à maîtriser et peut être modulée à votre guise.

// ==UserScript==
// @name <nom-du-script>
// @namespace <champ d'application du script>
// @require <url_de_la_librairie>*
// @author <votre pseudo> ou autre
// @date <date_de_creation>*
// @version <version>*
// @description <description d'une ligne>
// @license <licence_desiré>*
// @include <url_de_la_page_où_tournera_le_script> +
// @compat <navigateur_compatible> *,
// ==/UserScript==

légende : *optionel | +plusieurs entrées sur lignes distinctes | , plusieurs entrées séparées par une ","

Appel de la librairie

Comme vous avez dû le remarquer, l'appel de la librairie se fait à l'aide de @require.<br\> Vous pouvez appeler DreadCast-Lib ou encore le Jquery de cette manière.

//@require https://raw.github.com/Swizz540/DreadCast-Lib/master/dist/dreadcastlib.js

L'url donnée sera toujours celle de la dernière version stable

Utilisation de la librairie

L'utilisation de la librairie se fait naturellement au travers de votre code.<br\>

var nom_item = "aitl";
var état = item(nom_item).estOuvert;

Pour le moment, le seul moyen de connaître les classes, leurs attributs et méthodes associées est de jeter un oeil aux sources.<br\> Mais une documentation fera surement son apparition.<br\>

Exemples

Premier test

Ce script change votre pseudo par "aitl ouvert : <booléen_état>", lorsque vous ouvrez votre AITL, puis remet votre pseudo une fois l'AITL fermé.

// ==UserScript==
// @name DC-Lib(test)
// @include http://www.dreadcast.net/Main
// @require https://raw.github.com/Swizz540/DreadCast-Lib/master/dist/dreadcastlib.js
// ==/UserScript==

var pseudo = document.getElementById("txt_pseudo").innerHTML;

function f1() {
   document.getElementById("txt_pseudo").innerHTML = "aitl ouvert : " + item("aitl").estOuvert;
}

function f2() {
   document.getElementById("txt_pseudo").innerHTML = pseudo;
}

item("aitl").ouverture(f1);
item("aitl").fermeture(f2);