View file id3358/hangman.php

File size: 4.82Kb
<?php
//
//
//-------------------------------------------------------
//-- ВИСЕЛИЦА v1.1                                      --
//-- Сделано Giovanni Crisci                       --
//-- http://giovi.supereva.it                          --
//-- Перевел, адаптировал под русский, сделал буковки и вообще провернул массу работы - Колян Клементьев              --
//-- http://nknet.karelia.ru, http://petrochat.pp.ru                      --
//-------------------------------------------------------
//
//

$file_parole = 'parole.txt';   //ссылка на файл со словоблудием

//функции всякие
$alfabeto = array ('А' => 'a','Б' => 'b','В' => 'c','Г' => 'd','Д' => 'e',
 'Е' => 'f','Ж' => 'g','З' => 'h','И' => 'i','Й' => 'j','К' => 'k','Л' => 'l',
 'М' => 'm','Н' => 'n','О' => 'o','П' => 'p','Р' => 'q','С' => 'r','Т' => 's',
 'У' => 't','Ф' => 'u','Х' => 'v','Ц' => 'w','Ч' => 'x','Ш' => 'y','Щ' => 'z',
 'Ь' => '1','Ъ' => '2','Ы' => '3','Э' => '4','Ю' => '5','Я' => '6');
$paperino = session_name ("hangman");
session_register ("gchangman");

//выбор слова из файла
function ScegliParola ($file_parole) {
 $content = file ($file_parole);
 $numero_parole = (count ($content)-1);
 $posizione_parola = rand (0, ($numero_parole));
 $linea = $content[$posizione_parola];
 $parola = rtrim ($linea);
 return ($parola);
}

// изменяет все неугаданные буквы на _
function CalcolaIndovinata ($parola, $escludi, $alfabeto) {
 $alfabeto = array_flip ($alfabeto);
 $escluse = strtr ($escludi, $alfabeto);
 $escluse = '['.$escluse.']';
 $escluse = ereg_replace ($escluse, '', '[АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЫЭЮЯ]');
 $indovinata = ereg_replace ($escluse, '_', $parola);
 return $indovinata;
}

// вставляет выбранную букву в слово
function TrovaLettera ($lettera, $parola, $scelte, $alfabeto) {
 $alfabeto = array_flip ($alfabeto);
 $lettera = strtr ($lettera, $alfabeto);
 $scelte.= $lettera;
 if (ereg ($lettera, $parola)) {
  $controllo = true;
 }
 else {
  $controllo = false;
 }
 $risposta = array ($scelte, $controllo);
 return $risposta;
}

// а это уже программа

if ((isset($letter) and isset($gchangman))) {
 $variab = explode ('/', $gchangman);
 $indovina = $variab[0];
 $scelte = $variab[1];
 $tentativi = $variab[2];
 $checklet = TrovaLettera ($letter, $indovina, $scelte, $alfabeto);
 $scelte = $checklet[0];
 if (!$checklet[1]) {
  $tentativi = $tentativi +1;
 }
 $indovinata = CalcolaIndovinata ($indovina, $scelte, $alfabeto);
}
else {
 $tentativi=0;
 $scelte = ('_');
 $indovina = ScegliParola ($file_parole);
 $indovinata = CalcolaIndovinata ($indovina, $scelte, $alfabeto);
}

$gchangman = ($indovina.'/'.$scelte.'/'.$tentativi);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Виселица </TITLE>
</HEAD>
<BODY>
<center><script language="JavaScript"> var id=43; var rnd=Math.random()*1000000000000; rnd=Math.round(rnd); var append="id="+id+"&rnd="+rnd; var str="<a href=http://nord.net.ru/banner/cgi-bin/redirect.cgi?"+append+">"; str+="<img border=0 width=468 height=60 src=http://nord.net.ru/banner/cgi-bin/banner.cgi?"+append+"></a>"; document.write(str); </script> <br><br>
<h2>Виселица</h2><br>
Игра для покемонов, телепузиков и обычных челов :) <br><br>
<?php

print ('<IMG SRC="images/hang_'.($tentativi+1).'.jpg" BORDER=0 WIDTH=100 HEIGHT=100 ALT="Попыток '.$tentativi.'/6"><BR><BR>');
$caratteri = preg_split('//', $indovinata, -1, PREG_SPLIT_NO_EMPTY);
foreach ($caratteri as $lettalf) {
 $lettalf = strtr ($lettalf, $alfabeto);
 if ($lettalf==' ') {
  print ('<IMG SRC="images/lb_~.jpg" BORDER=0 WIDTH=20 HEIGHT=20 ALT="">');
 }
 else {
  print ('<IMG SRC="images/lb_'.$lettalf.'.jpg" BORDER=0 WIDTH=20 HEIGHT=20 ALT="'.$lettalf.'">');
 }
 print ('<IMG SRC="images/lb_~.jpg" BORDER=0 WIDTH=20 HEIGHT=20 ALT="">');
}
print ('<BR><BR>');

if ($indovina!=$indovinata) {
 if ($tentativi>=6) {
  print ('Извините, но у нас есть труп! Надо меньше в интернете висеть и больше умные книжки читать :) Слово было: '.$indovina);
 }
 else {
  $scelt = preg_split('//', $scelte, -1, PREG_SPLIT_NO_EMPTY);
  print ('<BR>');
  foreach ($alfabeto as $lettalf) {
   $contrl = false;
   foreach ($scelt as $lett) {
    if (!strcasecmp ($lettalf, $lett)) {
     $contrl = true;
    }
   }
   if ($contrl) {
    print ('<IMG SRC="images/lr_'.$lettalf.'.jpg" BORDER=0 WIDTH=20 HEIGHT=20 ALT="'.$lettalf.'">');
   }
   else {
    print ('<A HREF="'.$PHP_SELF.'?letter='.$lettalf.'&'.SID.'"><IMG SRC="images/lb_'.$lettalf.'.jpg" BORDER=0 WIDTH=20 HEIGHT=20 ALT="'.$lettalf.'"></A>');
   }
   if ($lettalf=='m') {
    print ('<BR>');
   }
  }
 }
}
else {
 print ('Поздравляю! Вы угадали слово! Уррра!!!');
}

?>
<BR>
<P><A HREF=<?php print ('"'.$PHP_SELF.'"'); ?>>Еще поиграть!</A> / <a href="http://petrochat.pp.ru">Вернуться в чат</a></P>
</center>
</BODY>
</HTML>