Skip to content

Créer un programme

LucBerge edited this page Mar 17, 2021 · 9 revisions

Architecture

  • fr.B4D.program contient l'API des programmes, vous n'avez pas besoin de modifier ces fichiers pour créer votre programme.
  • fr.B4D.programs.tutorials contient tous les programmes tutoriels.
  • fr.B4D.programs.[categorie] contient tous les programmes d'une catégorie.

Créer la classe

Voici un code de départ pour créer votre premier programme :

package fr.B4D.programs;

public final class MyProgram extends Program{

	public MyProgram(){
		super(Place.Astrub, Category.Quete, "Sub-category", "Name", new Channel[] {Channel.PRIVATE, Channel.GENERAL}, Status.AVAILABLE);
 	}

	@Override
	public void intro(Person person) {
		//Exécuté une fois au début
	}

	@Override
	public void cycle(Person person) throws FullInventoryException, StopProgramException, CancelProgramException, B4DException {
		//Exécuté n fois
	}

	@Override
	public void outro(Person person) {
		//Exécuté une fois à la fin
	}
}
  • public final class MyProgram extends Program : Hérite de la super classe Program contenant la base pour faire fonctionner un program.

  • public MyProgram(...) : Appelle la super constructeur pour créer l'objet. Voici les paramètres :

    • Place.Astrub : Le programme début a Astrub.
    • Category.Quete : Catégorisé en temps que quête.
    • Sub-category : Sous-catégorie du programme.
    • Name : Nom du programme.
    • new Channel[] {Channel.PRIVATE, Channel.GENERAL} : Seul les canaux privé et général seront affiché.
    • Status.AVAILABLE : Le status disponibe est défini.
  • public void intro(Person person){...} : Exécuté une fois au début.

  • public void cycle(Person person){...} : Exécuté n fois.

  • public void outro(Person person){...} : Exécuté une fois à la fin.

Exceptions

Quand le programme est en cours d'éxécution, 4 type d'Exceptions peuvent être levées 👍

  • FullInventoryException: When the inventory of the player is full. The super class will automatically manage it regarding the defined settings.
  • StopProgramException: To stop the program cycle. The outro method will be called.
  • CancelProgramException: To cancel the program. The outro method will not be called.
  • B4DException: When an unknown error occurs.
  • FullInventoryException: Quand l'inventaire du joueur est plein. La super classe s'en occupe, conformément au paramètres définits.
  • StopProgramException: Pour stopper le programme. La method outro sera appelée.
  • CancelProgramException: Pour annuler le programme. La method outro ne sera pas appelée.
  • B4DException: Qaand une erreur inconnu survient.

Pour plus de renseignements, vous pouvez aller jetter un oeil du côté de la JavaDoc ou bien aller voir le code source d'autres programmes.

Intégration

Dans le fichier Program.java qui se trouve dans le paquet fr.B4D.program. Vous devez ajouter votre programme à la liste des programmes en ajoutant la ligne programs.add(new MyProgram()).


Vous pouvez consulter la liste des programmes à faire si vous n'avez pas d'idée. Certains programmes ne sont pas réalisables puisque l'API correspondante n'existe pas encore.

Dans ton programme, tu auras surement besoin d'utiliser les APIs pour communiquer, échanger, te déplacer...