JeuWeb - Crée ton jeu par navigateur
POO en javascript - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : POO en javascript (/showthread.php?tid=5477)



POO en javascript - Asphodèles - 06-06-2011

Salut à tous, et merci de prendre le temps de me lire.

Je suis un gros newbie en web. Et en javascript c'est pire (comme ça, vous n'aurez pas à le deviner vous-même).

Dans mon jeu je reçois une carte (si vous voulez voir, c'est pas ma dernière version, mais c'est pas grave : Asphodèles compte "Test" mdp "icule", enfin, testez pas trop non plus, parce que je ne vérifie pas encore qu'on sorte de la map Wink) qui contient plusieurs infos. J'ai réussi à afficher tout ça, mais c'est du code bien crado et je voudrais l'orienter objet (jamais fait de poo en javascript, donc faudra que je lise un tuto de toutes façons).

C'est bête mais j'ai du mal à faire la transition, du fait que les objets doivent aussi être des éléments DOM ça me perturbe. Par exemple, je voudrais faire une classe Cell qui représente une case de la map avec un fond, une image par dessus et une image encore au dessus. Est-ce que la meilleure solution est de faire un truc comme ça ? :

Code :
Class Cell:
   //A cell is a td element of a table, and consists of three overlapping images : tile, over and above

   function Cell(x,y,tileUrl,overUrl,aboveUrl):
      //constructor, creates the images elements
      this.tile=new DOMElement(image..)
      this.over=new DOMElement(image..)
      this.above=new DOMElement(image..)
      
      this.appendChild(tile)
      this.appendChild(over)
      this.appendChild(above)

Bon, en écrivant ici je me rends compte que je devrais surtout lire un ou deux tutos avant de poster des questions idiotes. Mais bon, c'est écrit, alors je poste. Sentez-vous libres d'ignorer mon message si ça vous semble trop bêteBig Grin


RE: POO en javascript - Jeckel - 07-06-2011

En effet, tu devrais commencer par lire quelques tutos, tu confonds ici la POO et le DOM de javascript (qui est une utilisation spécifique de la POO pour le rendu/HTML)

Un petit exemple sans le DOM et juste la notion POO :


// Déclaration de la classe :
Cell = function(x, y, tileUrl, overUrl, aboveUrl)
{
this.tile = tileUrl;
this.over = overUrl;
this.above = aboveUrl;

this.debug = function()
{
alert(this.tile + ' ' + this.over + ' ' + this.above);
};
}

// Instanciation :
myCell = new Cell(0, 0, "http://xxx/yyy.jpg", "http://xxx/yyy-over.jpg", "http://xxx/yyy-above.jpg");

// Appel d'une méthode :
myCell.debug();