Jour 7 - Son ← Précédent
Cette page fait référence à toutes les fonctions de PALIB qui sont à peu près spécifiques a la DS, comme l’arrêt de l’alimentation, l’état du couvercle, des renseignements d’utilisateur, l’horloge, etc...
L’obtention de la date et de l’heure est si simple qu’il serait stupide de ne pas l’apprendre! L’exemple est le Date_Time dans PAlibExamples/Other et contient seulement 2 lignes...
PA_OutputText(1, 2, 10, "%02d/%02d/%02d", PA_RTC.Day, PA_RTC.Month, PA_RTC.Year); // Date PA_OutputText(1, 2, 12, "%02d:%02d %02d secondes", PA_RTC.Hour, PA_RTC.Minutes, PA_RTC.Seconds); // Time
Vous ne vous souciez pas des fonctions de production du texte, mais plutôt des variables... PA_RTC est une structure a mis à jour chaque synchro verticale qui contient tous les renseignements de la date actuelle et de l’heure que le DS a. PA_RTC contient les variables suivantes :
Je suppose qu’il était inutile de détailler tout, mais j’aime que tout soit clair...
Les renseignements sur l’utilisateur ne sont pas plus durs à obtenir ! Regardez l’exemple UserInfo dans PAlibExamples/Other ... Je n’irai pas plus loin dans les explications cette fois-ci...
Les renseignements sur l’utilisateur sont contenus dans PA_UserInfo, c’est une structure avec les champs suivants:
Et ... voilà!
PA_UserInfo.Language, la langue de l’utilisateur, 0 = japonais, 1 = anglais, 2 = français, 3 = allemand, 4 = italien, 5 = espagnol.
Voici la fonction permettant de savoir la langue qu’utilise l’utilisateur, peut vous être utile pour un homebrew multi-langues
#include <PA9.h> #define ENGLISH 1 #define FRENCH 2 int main(int argc, char ** argv) { PA_Init(); PA_InitVBL(); /////////////////// // DECLARATIONS // /////////////////// while (1) { //Define pour valider les langues if(PA_UserInfo.Language == 1 ) {//Options en anglais} if(PA_UserInfo.Language == 2 ) {//Options en francais} else {//Options en anglais} PA_WaitForVBL(); } return 0; }
C’est une solution pour créer un homebrew multi-langues toutefois c’est assez basique, et pour changer de langue l’utilisateur devra automatiquement sortir du homebrew et allez dans les options de la console.
Donc c’est possible de le faire via cette méthode mais ce n’est pas pour autant la plus ergonomique.
Je parie que vous avez déjà vu les auto-pauses DS, quand vous fermez le couvercle. Tous du moins dans des jeux commerciaux ... Voudriez-vous ajouter cette fonction à votre jeu ? ? C’est facile, juste une simple fonction à ajouter !!!
PA_CheckLid();
Vérifie la fermeture, et met en pause si c’est le cas... Retourne 1 quand le couvercle a été réouvert pour informer le programme...
Où devriez-vous le mettre ? Directement avant le PA_WaitForVBL(); , voilà. Vous pouvez vérifier l’exemple Other/CheckLid dans PAlibExamples pour voir comment il fonctionne. Testez cela sur votre DS car les émulateurs n’ont pas de couvercle...
Une autre fonction de base ? Le rétro éclairage des écrans ! Vous pouvez les activer/désactiver à volonté ... à quoi bon ? Cela peux servir à moins utiliser la baterie
.
Regarder l’exemple Other/ScreenLight ...
if (Pad.Newpress.A) PA_SetScreenLight(0, 1); // Allumez l'écran du bas if (Pad.Newpress.B) PA_SetScreenLight(0, 0); //Éteindre l'écran du bas if (Pad.Newpress.X) PA_SetScreenLight(1, 1); // Allumez l'écran du haut if (Pad.Newpress.Y) PA_SetScreenLight(1, 0); //Éteindre l'écran du haut
PA_SetScreenLight(écran 0=bas/1=haut, 1/0 pour on/off);, c’est aussi simple que cela...
– traduction par Rzzzzzz - 04 avril 2006 – – Compléter par Tancou - 03 Janvier 2010 –
Allez a la racine de votre projet, puis ouvrez la makefile avec bloc notes.
TEXT1 := PAlib Project TEXT2 := using PAlib TEXT3 := www.palib.info
Vous devriez voir ça. Vous n’avez plus qu’a modifier le TEXT1, TEXT2 et TEXT3 comme bon vous semble.
L’icone du jeu est ce que vous voyez a l’ecran de demarrage a gauche du nom de votre jeu. Vous pouvez la changer dans le répertoire principal de votre projet defaut. Elle correspond à l’image “logo.bmp” et est de taille 32×32, ou vous pouvez changer le répertoire de votre icone dans le fichier makefile.
Prochain → Jour 9 - PA File System