[SPIP Zone] r21971 - /_plugins_/_stable_/jeux/jeux_config.php

salut !
à quels jeux tierces penses-tu ?
pkoi ne pas les ajouter directement dans le plugin ?
si tu vx créer un nouveau pipeline, il faut le déclarer je pense, non ?
Pat

vincent@ldd.fr a écrit :

Author: vincent@ldd.fr
Date: Thu Aug 7 16:53:59 2008
New Revision: 21971

Log:
On envoie aux plugins pour permettre d'ajouter facilement des jeux tierces

Modified:
    _plugins_/_stable_/jeux/jeux_config.php

Modified: _plugins_/_stable_/jeux/jeux_config.php

--- _plugins_/_stable_/jeux/jeux_config.php (original)
+++ _plugins_/_stable_/jeux/jeux_config.php Thu Aug 7 16:53:59 2008
@@ -104,6 +104,9 @@
  );
+// on envoie les caracteristiques aux plugins pour pouvoir ajouter des jeux tierces
+$jeux_caracteristiques = pipeline('jeux_caracteristiques', $jeux_caracteristiques);
+
// addition de tous les separateurs
$temp = array();
foreach($jeux_caracteristiques['SEPARATEURS'] as $sep) $temp=array_merge($temp, $sep);

Pat a écrit :

salut !
à quels jeux tierces penses-tu ?
pkoi ne pas les ajouter directement dans le plugin ?

hello,
ben par exemple des jeux qui sont dans un contexte particulier, pour un site particulier, et qui n'ont donc pas pour vocation première d'être généraliste. On peut imaginer que des cas comme ça puisse ensuite être transformé en un truc plus général, mais souvent quand on développe un site dans un cadre professionnel, on fait d'abord le truc particulier, et on voit ensuite si ça peut être généralisé :slight_smile:

si tu vx créer un nouveau pipeline, il faut le déclarer je pense, non ?

Ah, je savais pas, là ce que j'ai fait marche. Dans un autre plugin j'ai déclaré mon insertion dans plugin.xml et ça fonctionne bien.

Par exemple :
<pipeline>
  <nom>jeux_caracteristiques</nom>
  <inclure>elearning_pipelines.php</inclure>
  <action>jeux_caracteristiques</action>
</pipeline>

Puis :
function elearning_jeux_caracteristiques($jeux_caracteristiques){

  // Le séparateur qui défini le jeu
  define('_JEUX_QUESTION_OUVERTE', 'question_ouverte');
  
  $jeux_caracteristiques['SEPARATEURS']['question_ouverte'] = array(_JEUX_TITRE, _JEUX_TEXTE, _JEUX_QUESTION_OUVERTE, _JEUX_REPONSE, _JEUX_CONFIG);
  
  $jeux_caracteristiques['SIGNATURES']['question_ouverte'] = array(_JEUX_QUESTION_OUVERTE);
  
  $jeux_caracteristiques['TYPES']['question_ouverte'] = _T('elearning:question_ouverte');
  
  return $jeux_caracteristiques;

}

Après avoir ajouté un jeu tierce, si celui-ci peut être modifié pour donner un truc général, ben il suffira de le déplacer dans le plugin jeux et de le supprimer de l'autre ; et hop, ni vu ni connu. :slight_smile:
Mais en attendant ça permet de tester des trucs sans gêner.

Sinon est-ce qu'il y a un tuto ou un début de tuto pour faire ses propres jeux ? Évidemment pour l'instant je fais en copiant sur l'existant, mais c'est des fois un peu le bazar. Si j'ai le temps et que j'arrive à faire ce que je veux, je vais essayer de prendre des notes.

--
RastaPopoulos

S'lt

Il n'est pas necessaire de declarer un pipeline, meme si pour la
lisibilité du code c'est mieux :slight_smile:

La fonctionne pipeline() se dermerde pour retrouver ses petits.

km

RastaPopoulos a écrit :

Pat a écrit :

salut !
à quels jeux tierces penses-tu ?
pkoi ne pas les ajouter directement dans le plugin ?

hello,
ben par exemple des jeux qui sont dans un contexte particulier, pour un site particulier, et qui n'ont donc pas pour vocation première d'être généraliste. On peut imaginer que des cas comme ça puisse ensuite être transformé en un truc plus général, mais souvent quand on développe un site dans un cadre professionnel, on fait d'abord le truc particulier, et on voit ensuite si ça peut être généralisé :slight_smile:

si tu vx créer un nouveau pipeline, il faut le déclarer je pense, non ?

Ah, je savais pas, là ce que j'ai fait marche. Dans un autre plugin j'ai déclaré mon insertion dans plugin.xml et ça fonctionne bien.

Par exemple :
<pipeline>
    <nom>jeux_caracteristiques</nom>
    <inclure>elearning_pipelines.php</inclure>
    <action>jeux_caracteristiques</action>
</pipeline>

Puis :
function elearning_jeux_caracteristiques($jeux_caracteristiques){

    // Le séparateur qui défini le jeu
    define('_JEUX_QUESTION_OUVERTE', 'question_ouverte');
        $jeux_caracteristiques['SEPARATEURS']['question_ouverte'] = array(_JEUX_TITRE, _JEUX_TEXTE, _JEUX_QUESTION_OUVERTE, _JEUX_REPONSE, _JEUX_CONFIG);
        $jeux_caracteristiques['SIGNATURES']['question_ouverte'] = array(_JEUX_QUESTION_OUVERTE);
        $jeux_caracteristiques['TYPES']['question_ouverte'] = _T('elearning:question_ouverte');
        return $jeux_caracteristiques;

}

Comme le dit km, c'est mieux de déclarer ton pipeline dans jeux_options.php, même si tu mets aucun traitement :
  $GLOBALS['spip_pipeline']['jeux_caracteristiques']='';

Le truc, c'est qu'on peut ajouter des pipelines un peu partout pour des besoins particuliers, mais qu'en est-il de la doc ? As-tu pensé faire un paragraphe sur contrib à propos de ce pipeline pour que d'autres puissent l'utiliser : avantages, restrictions, exemples, etc.
Ton expérience peut être profitable.

Actuellement, il n'y a pas d'article concernant la programmation d'un jeu. Il faut effectivement se baser sur l'existant.

Pat

Après avoir ajouté un jeu tierce, si celui-ci peut être modifié pour donner un truc général, ben il suffira de le déplacer dans le plugin jeux et de le supprimer de l'autre ; et hop, ni vu ni connu. :slight_smile:
Mais en attendant ça permet de tester des trucs sans gêner.

Sinon est-ce qu'il y a un tuto ou un début de tuto pour faire ses propres jeux ? Évidemment pour l'instant je fais en copiant sur l'existant, mais c'est des fois un peu le bazar. Si j'ai le temps et que j'arrive à faire ce que je veux, je vais essayer de prendre des notes.

--
RastaPopoulos

RastaPopoulos a écrit :

Pat a écrit :

salut !

Je voudrais pas foutre la pression, mais j'ai régulièrement une gamine de 12 ans qui s'amuse avec ce plugin maj en svn. Je vous rassure, elle s'éclate comme une folle...

-- Franck
Dernier ***chantier*** : htpp://jmpechart.com (bénévole, of coursément).

Pat a écrit :

Le truc, c'est qu'on peut ajouter des pipelines un peu partout pour des besoins particuliers, mais qu'en est-il de la doc ? As-tu pensé faire un paragraphe sur contrib à propos de ce pipeline pour que d'autres puissent l'utiliser : avantages, restrictions, exemples, etc.
Ton expérience peut être profitable.

Pensé oui, mais pour moi, un paragraphe comme ça irait forcément dans un article du type "comment faire un jeu". Or puisque pour l'instant il n'y a pas d'article ni de paragraphe concernant la création d'un jeu... ben ça sera un œuf de pâques pour l'instant. :slight_smile:

Par contre je vais rajouter la déclaration.

--
RastaPopoulos