Sonic’s Jewels

Un nouvel emulateur devrait sortir très prochainement sur Windows Phone. Il s’agit de Sonic’s Jewels un emulateur Sega Master System et GameGear basé sur CogWheel que je viens de porter. Et oui on ne peut pas toujours créer son propre emulateur ^^
Cogwheel est réputé pour sa fiabilité bien que quelques jeux ne fontionnent pas (en général ceux réputé pour leur taille comme AfterBurner par exemple).

Le marketplace accessible !

Cette version sera poussée sur le marketplace dès que les derniers éléments seront en place (d’ici quelques jours).

Au contraire de Wario’Jewels, Sonic’s Jewels utilise toutes les fonctionnalités de Mango et n’a pas besoin d’un tricks non autorisé sur le marketplace.
J’éspère que Microsoft me permettra, comme le fameux emulateur NES, VNesLight de Nudua, d’intégrer le marketplace sans trop d’embuches.

Deux versions

Il y aura deux versions pour l’appli.
Une gratuite qui ne possédera pas toutes les options mais fonctionnelle et une payante plus complète.

La version payante permettra :

  • Le téléchargement de rom par le biais d’un explorateur skydrive au lieu d’une url pour la version gratuite.
  • L’affichage d’un mode Paysage de l’émulateur en plus de la version portrait
  • Le changement de 30 à 60 images par secondes (1 frame en moins en 30fps) pour les devices de nouvelles générations !
  • La gestion de 3 slots de sauvegarde (destruction et copie)
  • Le partage via Facebook et l’enregistrement de screenshot dans l’album Photo
  • La possibilitée d’accrocher ses jeux directment sur la page d’accueil avec photo du screenshot et information en face arrière du tile

La version gratuite aura une publicité en haut des menus de sélection (mais pas durant les phases de jeu).
L’application sera disponible au prix de 1,29€.

Le son

Il n’y aura pas de son dans cette première version bien que j’étudie la manière de l’ajouter.

Screenshots

Le paddle n’est pas encore complétement terminé. Il sera réalisé comme pour WJ7 par Damien Bigot !












Se tenir au courant !

Vous pouvez vous tenir au courant des dernière nouveauté sur la page facebook de Wario’s Jewels



Tags: , , ,
Posted in Emulator Silverlight WP7 by Samuel Blanchard. 4 Comments

BUGTRACK de Programmez! n°148

Peut-être vous souvenez vous du bug étrange rencontré sur Windows Phone et que je vous avais décrit en détail dans le truc #4 sur le photoChooserTask ?

Celui-ci se retrouve à la une de la nouvelle formule du magazine Programmez! (avec mon copain américain Julien Dollon en couverture) dans une nouvelle rubrique décryptant un bug inédit et la façon dont il est traqué.







D’autres articles devraient suivre rapidemment notamment sur le projet Hawaii…

Meilleurs voeux 2012 à tous ^^



Posted in Silverlight by Samuel Blanchard. No Comments

Truc #6 : Le vilain HitTest de WPF !

J’ai besoin pour un projet d’effectuer un HitTest pour récupérer le control sur lequel se trouve ma souris.
C’est donc tout naturellement que j’utilise la méthode HitTest de VisualTreeHelper et tout semble fonctionner normalement :)

// this represente une fenetre
DependencyObject t = VisualTreeHelper.HitTest(this, point).VisualHitTest;

Je dis bien « semble » car lorsque j’applique, durant l’exécution, à la propriété Visibility d’un élement la valeur Collapsed, le HitTest continue de voir l’element comme si il était toujours visible !

Alors que faire pour contrer ce vilain HitTest ? Le réecrire ? Heureusement depuis la version 3.0 de WPF, il existe la méthode InputHitTest qui permet de faire un HitTest à partir d’un élément et qui ne passe pas par le HitTest de VisualTreeHelper.

// this represente une fenetre
DependencyObject t = this.InputHitTest(point) as DependencyObject

UUUUUUUra, il ne voit plus l’élément cette fois !



Tags: , , ,
Posted in Trucs et Astuces WPF by Samuel Blanchard. No Comments

Truc #5 : Les retours de Chooser sous WP

Les Choosers sont des boites de dialogues systeme qui permettent de choisir des informations en provenance du téléphone. C’est le cas par exemple pour la sélection d’image dans la galerie photo (PhotoChooserTask), de l’adresse d’un contact (AddressChooserTask) ou de la prise d’une photo (CameraCaptureTask).

Liste des choosers disponibles sous Windows Phone

Un exemple classique d’appel à un Chooser :

MonConstructeur()
{
  photoChooserTask = new PhotoChooserTask();
  photoChooserTask.Completed += new EventHandler<PhotoResult>(photoChooserTask_Completed);
}

void photoChooserTask_Completed(object sender, PhotoResult e)
{
   // on traite la photo choisie
}

Les choosers sont les garants de la sécurité sous Windows Phone puisqu’ils agissent comme des sas entre les données de l’application et celles de l’utilsateur. Mais savez-vous qu’ils peuvent aussi faire planter votre application si vous n’y prenez garde ?
En effet toutes ces boites comportent un évenement Completed appelé lorque l’action est terminée. Par design, ces évenements ont une durée de vie définie (quelques secondes). Si cette durée est dépassée, l’application est fermée sans autre forme de procès.

On pourrait se dire, avec raison, qu’un traitemment de donnée prenant quelques secondes est plutôt rare, ce qui est vrai. En revanche, l’utilisation de MessageBox dans cette configuration est fréquente malgré le fait que la boite d’alerte ne stoppe en rien le compteur assigné à l’evenement de retour.

void photoChooserTask_Completed(object sender, PhotoResult e)
{
   MessageBox.Show("Je vais faire planter l'application si je reste trop longtemps ouverte !!!");
}

C’est une erreur tellement courante que l’exemple de MSDN sur le photoChooser comporte un MessageBox ;)

Si l’on veut tout de même afficher une boite de dialogue ou effectuer un traitement long on peut s’appuyer sur l’évenement NavigateTo de sa page qui est appelé immédiatemment après l’evenement Completed du Chooser (ou encore lancer un thread).

bool isChooser = false;

void photoChooserTask_Completed(object sender, PhotoResult e)
{
   if (e.TaskResult == TaskResult.OK)
   {
     isChooser = true;
   }
}

override void OnNavigatedTo(NavigationEventArgs e)
{
  if( isChooser == true )
  {
    isChooser = false;
    MessageBox.Show("Je fais ce que je veux avec mes cheveux");
  }
}




Tags: , , ,
Posted in Silverlight WP7 by Samuel Blanchard. 1 Comment

WallpaperMachine Edition Simpsons est disponible sur le marketplace !

Ma petite application Windows Phone pour créer des wallpapers personnalisées Simpsons dont je vous avais parlé il y a quelques jours vient de sortir sur le marketplace. Elle a bien evolué depuis la vidéo preview que j’avais publié. L’application est gratuite alors n’hésité pas à explorer les nouveautés et tester sa naviguation rotative !





Télécharger WallpaperMachine Simpsons Edition maintenant !



Posted in Silverlight by Samuel Blanchard. No Comments