Coucou,
Je cherchais un truc tout fait sur le net sans en avoir trouvé. Bilan, j'ai refais ça en quelques minutes, et je me dis que ça peut être un jour utile à quelqu'un (c'est aussi le principe de mon jeu.)
Bref, une simple fonction qui transforme une phrase en texte normal en une autre contenant des "hips" et des "burps".
Mon objectif étant de faire quelque chose de simple et clair.
Ca découpe les phrases par mot. Entre chaque mot ça calcule la chance d'avoir un petit rajout de hips et de burp selon l'array : $liste_mot_bourre
Cet array se compose d'un mot puis d'une probabilité de chance de voir le mot apparaitre. Plus la valeur est grande, plus le mot à des chances d'apparaitre dans la phrase. Dans mon code, c'est le "Hic !" qui apparaitra le plus souvent.
Bon, c'est pas le meilleur code au monde, mais ça à l'avantage d'avoir beaucoup amusé mes joueurs hier ^^.
Que cela ne vous empêche d'améliorer le code à votre guise (et de le re-suggérer hein ^^).
Bonne journée à vous tous !
kéké peu présent ces temps-ci.
Je cherchais un truc tout fait sur le net sans en avoir trouvé. Bilan, j'ai refais ça en quelques minutes, et je me dis que ça peut être un jour utile à quelqu'un (c'est aussi le principe de mon jeu.)
Bref, une simple fonction qui transforme une phrase en texte normal en une autre contenant des "hips" et des "burps".
Mon objectif étant de faire quelque chose de simple et clair.
Ca découpe les phrases par mot. Entre chaque mot ça calcule la chance d'avoir un petit rajout de hips et de burp selon l'array : $liste_mot_bourre
Cet array se compose d'un mot puis d'une probabilité de chance de voir le mot apparaitre. Plus la valeur est grande, plus le mot à des chances d'apparaitre dans la phrase. Dans mon code, c'est le "Hic !" qui apparaitra le plus souvent.
Code :
// Transforme un texte comme si on était bourré !
function text_bourre ($texte)
{
// return $texte;
$moyenne_mot_bourre = 8;
$liste_mot_bourre = array ('**Hips !**' => '300','**Hic !**' => '500', '**burps**' => '400', '**beuuurrrk**' => '100');
foreach ($liste_mot_bourre as $mot_bourre => $key)
{
$nb_valeur_bourre += $key;
}
$tab_mot = preg_split ("/\s+/", $texte);
$nb_mot = count ($tab_mot);
$valeur_alea = rand (0, $moyenne_mot_bourre*$nb_valeur_bourre); // 8 c'est un ratio suffisant.
// echo '<br>valeur alea : '.$valeur_alea.'';
for ($i = 0; $i < $nb_mot; $i ++ )
{
// echo '<br> mot : '. $i . ' valeur alea = '.$valeur_alea.'';
// si on ne se trouve pas dans une balise
foreach ($liste_mot_bourre as $mot_bourre => $key)
{
// echo '<br> mot_bourre : '. $mot_bourre . ' key = '.$key.'';
$valeur_alea -= $key;
if ($valeur_alea < 0 )
{
$valeur_alea = rand (0, $moyenne_mot_bourre*$nb_valeur_bourre);
$tab_mot[$i] .= $mot_bourre;
next ;
}
}
}
$texte = implode (' ', $tab_mot);
return $texte;
}
$phrase = "Jeuweb.org permet à Magdales d'exprimer tout son soutient aux projets amateurs dans le domaine du jeu vidéo";
echo text_bourre ($phrase);
// affichera par exemple :
// Jeuweb.org permet à**burps** Magdales d'exprimer tout**Hic !** son soutient aux projets amateurs**Hic !** dans le**burps** domaine du jeu vidéo
// OU
// Jeuweb.org permet**burps** à Magdales d'exprimer tout**Hic !** son soutient aux projets amateurs dans**burps** le domaine du jeu vidéo
Bon, c'est pas le meilleur code au monde, mais ça à l'avantage d'avoir beaucoup amusé mes joueurs hier ^^.
Que cela ne vous empêche d'améliorer le code à votre guise (et de le re-suggérer hein ^^).
Bonne journée à vous tous !
kéké peu présent ces temps-ci.