Вход Регистрация
Файл: social12/games/viselica.php
Строк: 73
<?php

require '../sid.php';
require 
'../config.php';
$link = connect_db();
list(
$user, $id, $ps) = check_login($link);

whorm(0, 'games');

include 
'../head.php';

mb_internal_encoding('UTF-8');

echo 
$div_title . 'Висельник' . $div_end;

$alphabet = array('1' => 'А', '2' => 'Б', '3' => 'В', '4' => 'Г', '5' => 'Д',
    
'6' => 'Е', '7' => 'Ж', '8' => 'З', '9' => 'И', '10' => 'Й', '11' => 'К', '12' =>
    
'Л', '13' => 'М', '14' => 'Н', '15' => 'О', '16' => 'П', '17' => 'Р', '18' =>
    
'С', '19' => 'Т', '20' => 'У', '21' => 'Ф', '22' => 'Х', '23' => 'Ц', '24' =>
    
'Ч', '25' => 'Ш', '26' => 'Щ', '27' => 'Ь', '28' => 'Ы', '29' => 'Ъ', '30' =>
    
'Э', '31' => 'Ю', '32' => 'Я');

$act = isset($_GET['act']) ? $_GET['act'] : NULL;
switch (
$act) {

    case 
ini:

        unset(
$_SESSION['GALLOWS-BIRD']);

        
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `vik`"), 0);
        
$num = rand(1, $count);

        
$vik = mysql_fetch_array(mysql_query("SELECT `otvet` FROM `vik` WHERE id='" . (int)$num . "' LIMIT 1"));
        
$ans = $vik['otvet'];
        
$count_words = mb_strlen($ans);

        for (
$i = 0; $i < $count_words; $i++) {
            
$words[] = mb_substr($ans, $i, 1);
        }

        
$alpha[0] = $words[0];
        
$alpha[1] = $words[$count_words - 1];

        
$_SESSION['GALLOWS-BIRD']['hod'] = 0;
        
$_SESSION['GALLOWS-BIRD']['words'] = $ans;
        
$_SESSION['GALLOWS-BIRD']['alpha'] = $alpha;

        
header("Location: viselica.php?act=game");
        break;

    case 
hod:
        if (
$_SESSION['GALLOWS-BIRD']) {

            
$count_words = mb_strlen($_SESSION['GALLOWS-BIRD']['words']);
            
$alpha = $_SESSION['GALLOWS-BIRD']['alpha'];

            for (
$i = 0; $i < $count_words; $i++) {
                
$words[] = mb_substr($_SESSION['GALLOWS-BIRD']['words'], $i, 1);
            }

            
$cid = my_int($_GET['cid']);

            
$search = mb_strtolower(strtr($cid, $alphabet));

            for (
$i = 0; $i < count($alpha); $i++) {
                if (
$alpha[$i] == $search) {
                    
err('Эта буква уже была!');
                    echo 
'<a href="viselica.php?act=game">Еще раз</a><br/>';
                    include 
'../foot.php';
                    exit();
                }
            }

            
$t = 0;
            for (
$i = 0; $i < $count_words; $i++) {

                if (
$words[$i] == $search) {
                    
$t = 1;
                }
            }

            echo 
$t;

            if (
$t == 1) {
                
$_SESSION['GALLOWS-BIRD']['alpha'][] = $search;
            } else {
                
$_SESSION['GALLOWS-BIRD']['hod']++;
                
$_SESSION['GALLOWS-BIRD']['alpha'][] = $search;
            }

            
header('Location: viselica.php?act=game');
        } else {
            
header('Location: index.php?');
        }
        break;

    case 
game:
        if (
$_SESSION['GALLOWS-BIRD']) {

            
$count_words = mb_strlen($_SESSION['GALLOWS-BIRD']['words']);
            
$alpha = $_SESSION['GALLOWS-BIRD']['alpha'];

            for (
$i = 0; $i < $count_words; $i++) {
                
$words[] = mb_substr($_SESSION['GALLOWS-BIRD']['words'], $i, 1);
            }

            for (
$i = 0; $i < $count_words; $i++) {
                
$t = 0;
                for (
$j = 0; $j < count($alpha); $j++) {
                    if (
$words[$i] == $alpha[$j]) {
                        
$t = 1;
                    }
                }

                if (
$t == 1) {
                    
$choice = $choice . $words[$i] . ' ';
                    
$guessed++;
                } else {
                    
$choice = $choice . '* ';
                }
            }
            echo 
$div_razdel . $choice . $div_end;

            echo 
'<table cellpadding="0" cellspacing="0"><tr><td>';
            if (
$guessed == $count_words) {
                echo 
'</td><td>';
                
msg('Поздравляю!<br/>Вы оказалась достаточно умным человеком чтобы сберечь свою жизнь!');
            } else {
                switch (
$_SESSION['GALLOWS-BIRD']['hod']) {
                    case 
0:
                        echo 
'<b>Игра началась!</b><br/>';
                        break;
                    case 
1:
                        echo 
'<img src="vis/1.jpg" border="0" alt=""/>&nbsp;
                              </td><td>
                              <div style="background: #3d86c3;">Вы просто так кликнули или нервы пошаливают? Тогда успокойтесь - палач еще только проснулся и у Вас впереди аж пять ошибок. Последняя, честно говоря, смертельная... Я Вас успокоил?</div>'
;
                        break;

                    case 
2:
                        echo 
'<img src="vis/2.jpg" border="0" alt=""/>&nbsp;
                              </td><td>
                              <div style="background: #3d86c3;">Да успокойтесь Вы! Еще четыре раза ошибаться можно! Правда, потом...</div>'
;
                        break;

                    case 
3:
                        echo 
'<img src="vis/3.jpg" border="0" alt=""/>&nbsp;
                              </td><td>
                              <div style="background: #3d86c3;">Не волнуйтесь! Вас повесят только если Вы ошибетесь еще три раза. Но Вы же умный человек...!</div>'
;
                        break;

                    case 
4:
                        echo 
'<img src="vis/4.jpg" border="0" alt=""/>&nbsp;
                              </td><td>
                              <div style="background: #3d86c3;">Опять нервничаете? Это хорошо! Может, будете думать по-лучше! До повешения осталось всего два неверных хода...!</div>'
;
                        break;


                    case 
5:
                        echo 
'<img src="vis/5.jpg" border="0" />&nbsp;
                              </td><td>
                              <div style="background: #3d86c3;">Нервничаете? Это правильно! Еще один неверный ход и Вы, - висячая туша!</div>'
;
                        break;

                    default:
                        echo 
'<img src="vis/6.jpg" border="0" alt=""/>&nbsp;';
                        
err('Мои соболезнования...');
                        unset(
$_SESSION['GALLOWS-BIRD']);

                }
            }
            echo 
'</td></tr></table>' . $div_left;

            for (
$i = 1; $i < 33; $i++) {
                
$t = 0;
                for (
$e = 0; $e < count($alpha); $e++) {

                    if (
$alpha[$e] == mb_strtolower($alphabet[$i])) {
                        
$t = 1;
                    }
                }

                if (
$t != 1) {
                    echo 
'<a href="viselica.php?act=hod&amp;cid=' . $i . '" >' . $alphabet[$i] . '</a>&nbsp;';
                }
                if (
$i == 11 || $i == 21 || $i == 33) {
                    echo 
'<br/>';
                }
            }

            echo 
$div_end . '<a href="viselica.php?act=ini">Играть заново</a><br/>
                  <a href="index.php?'
.$ref.'">В раздел</a><br/>';
        } else {
            
header('Location: ?');
        }
        break;

    default:
        unset(
$_SESSION['GALLOWS-BIRD']);

        echo 
$div_razdel . $div_left . 'Интересная, но не слишком популярная игрушка, даже среди школьников, хотя играть можно на обычном листке бумаги. Загаданное слово пишется прочерками вместо букв, затем угадывающий (претендент на повешение:) называет буквы. Каждая верная буква вписывается вместо прочерка(ов). За каждую неверную дорисовывается элемент виселицы (скажем 5 элементов). Дальше понятно: успел угадать слово до полной дорисовки виселицы - выжил, не успел - повешен.' . $div_end . $div_end;

        echo 
'<a href="viselica.php?act=ini">Играть</a><br/>
              <a href="index.php?'
.$ref.'">В раздел</a>';
}

include 
'../foot.php';
?>
Онлайн: 2
Реклама