| Переход по локациям | 
|  | 
| 
| BUDARHANAT | Дата: Понедельник, 12 Сентября 2011, 05:04 | Сообщение # 1 |  |   участник Сейчас нет на сайте | Скажите пожалуйста. Вот я хотел сделать такое игровое пространство : 
 К примеру нужно пройти сто ходов, каждый ход, это переход в определённую локацию.
 Начал делать сто php файлов, в которых будет указательные ссылки на переход в локацию ( идти дальше/вернуться ).
 Начал уже картинки для локаций подбирать. Потом понял, что это дело не годится.
 Ведь каждый php файл - это страница, а игроку ничего не стоит прописать в адресной строке сотую страницу и он на месте.
 
 Как тут быть ?
 
 В этой жизни тот добивается чего-то, кто смог победить в себе свою лень, свои страхи, свою неуверенность, свои слабости и недостатки.
 |  |  |  |  | 
| 
| Dinoiera | Дата: Понедельник, 12 Сентября 2011, 10:27 | Сообщение # 2 |  |   участник Сейчас нет на сайте | не легче сделать 1 файл в котором будут прописаны все пути.. как в Alone Insland.. Если что могу кинуть одну из их сборок скриптов 
 Помогаю чем могу и прошу взаимной помощи)
 DCH - сайт разработчиков игр(новый проект)
 
    |  |  |  |  | 
| 
| BUDARHANAT | Дата: Понедельник, 12 Сентября 2011, 12:04 | Сообщение # 3 |  |   участник Сейчас нет на сайте | Это .dat файл ? 
 В этой жизни тот добивается чего-то, кто смог победить в себе свою лень, свои страхи, свою неуверенность, свои слабости и недостатки.
 |  |  |  |  | 
| 
| Dinoiera | Дата: Понедельник, 12 Сентября 2011, 12:43 | Сообщение # 4 |  |   участник Сейчас нет на сайте | нет... Добавлено (12.09.2011, 12:30)---------------------------------------------
 нет...
 Добавлено (12.09.2011, 12:43)---------------------------------------------
 это пхп скрипт
 
 Помогаю чем могу и прошу взаимной помощи)
 DCH - сайт разработчиков игр(новый проект)
 
    |  |  |  |  | 
| 
| BUDARHANAT | Дата: Понедельник, 12 Сентября 2011, 12:43 | Сообщение # 5 |  |   участник Сейчас нет на сайте | Надо глянуть. Хочется надеяться, что он не сложный. 
 В этой жизни тот добивается чего-то, кто смог победить в себе свою лень, свои страхи, свою неуверенность, свои слабости и недостатки.
 
 
 Сообщение отредактировал BUDARHANAT - Понедельник, 12 Сентября 2011, 12:45 |  |  |  |  | 
| 
| Dinoiera | Дата: Понедельник, 12 Сентября 2011, 12:46 | Сообщение # 6 |  |   участник Сейчас нет на сайте | BUDARHANAT, Вот тут скачай 
 Помогаю чем могу и прошу взаимной помощи)
 DCH - сайт разработчиков игр(новый проект)
 
    |  |  |  |  | 
| 
| cougraAcc | Дата: Понедельник, 12 Сентября 2011, 16:06 | Сообщение # 7 |  |   Яркая личность GD Сейчас нет на сайте | Можешь попробывать по наркомански, т.е.: У нас есть путь разбитый на 100 ходов(абсолютное условие, будем писать скрипт именно под это).
 1.Берем начальные координаты игрока, и записываем их в куки.
 2.Ведем отсчет от начальных координат(Если просто путь то пусть будет id, если сетка задавай id относительно x,y).
 3.Выводим локацию по запросу координат(Из тех же куки, т.к. будем работать с ними).
 4.При нажатии кнопки дальше, увеличиваем текущую координату в куках на: +1, и скрипт оперирует с выводом(строки таблицы с этим ид)
 5.После нажатия происходит запись в куках
 6.Нажатие кнопки назад тоже самое, только -1
 
 Итог: Можно сделать на файлах, вместо куки(но выход интересный)
 |  |  |  |  | 
| 
| BUDARHANAT | Дата: Понедельник, 12 Сентября 2011, 16:57 | Сообщение # 8 |  |   участник Сейчас нет на сайте | Привет cougraAcc !!! 
 Там такое уже есть. Это где обрабатывается один файл .php и где мобы встречаются рандомно.
 
 Надо мне подумать. Вот так задачка
   
 В этой жизни тот добивается чего-то, кто смог победить в себе свою лень, свои страхи, свою неуверенность, свои слабости и недостатки.
 |  |  |  |  | 
| 
| cougraAcc | Дата: Понедельник, 12 Сентября 2011, 17:15 | Сообщение # 9 |  |   Яркая личность GD Сейчас нет на сайте | Quote (BUDARHANAT) Привет cougraAcc !!! И все таки остались люди которые меня помнят
   |  |  |  |  | 
| 
| BUDARHANAT | Дата: Среда, 21 Сентября 2011, 17:06 | Сообщение # 10 |  |   участник Сейчас нет на сайте | Конечно помню ... и уважаю !!! Добавлено (21.09.2011, 17:06)---------------------------------------------
 Dinoiera, я скачал скрипт по твоей ссылке, но я что то там не нашёл конфигурационного файла и базы данных.
 Ещё конечно пороюсь, поищу. Подскажи мне только главное, вот в поисковике
 на этот скрипт находит такую карту :
 
 http://lof-ai.clan.su/_si/0/03265.jpg
 
 По какому принципу она работает ?
 Ты просто нажимаешь ссылку и перейдя на эту карту выбираешь ссылку картинку ?
 Или ( например до озера ) надо ещё дойти определённое количество ходов ?
 А может до определённой локации установлено время на прохождение, как в Травиане например ?
 
 В этой жизни тот добивается чего-то, кто смог победить в себе свою лень, свои страхи, свою неуверенность, свои слабости и недостатки.
 |  |  |  |  | 
| 
| Sektoid | Дата: Среда, 28 Сентября 2011, 21:15 | Сообщение # 11 |  | почетный гость Сейчас нет на сайте | у себя я сделал бы так в базе данных в таблице users должна быть строчка position
 в ней будет допустим map1
 и при переходе на другую локу делается проверка на +- 1 локу, тоесть если user position = map5, то он может перейти только на map4 и map6
 такое
 |  |  |  |  | 
| 
| BUDARHANAT | Дата: Четверг, 29 Сентября 2011, 02:13 | Сообщение # 12 |  |   участник Сейчас нет на сайте | Это похоже на то, что я хотел. Мне главное, что бы страница локации содержала соответствующие своему назначению картинки и ссылки переходов,
 но что бы нельзя было перейти прописав в браузерерной строке адрес http://navigator.ru/map6.php находясь в http://navigator.ru/taverna.php
 
 Мне пришла одна идея, это создать один файл map.php в котором будут содержаться
 все location.php. Но я переживаю, что это будет тяжёлый скрипт. Вот наверно position немножко дополняет эту идею.
 
 В этой жизни тот добивается чего-то, кто смог победить в себе свою лень, свои страхи, свою неуверенность, свои слабости и недостатки.
 |  |  |  |  | 
| 
| Sektoid | Дата: Четверг, 29 Сентября 2011, 04:32 | Сообщение # 13 |  | почетный гость Сейчас нет на сайте | или можно так допустим у нас карта map7.php
 
 
 Code  // В начале страницы проверяем:
 if ($_SESSION['map']!=6 || $_SESSION['map']!=8) {
 // Если не совпадает пишем ошибьку
 header("HTTP/1.1 404 Not Found");
 exit(file_get_contents('../../404.html'));
 }
 else {
 //Если совпадает, убираем старое значение и задаем новое значение
 unset($_SESSION['map']);
 $_SESSION['map']=7;
 // Тут пишем код самой самой карты
 }
 
 
Добавлено (29.09.2011, 04:32)---------------------------------------------
 Ну и плюс проверка position с базы данных. Я бы юзал две эти вещи вместе.
 
 
 Сообщение отредактировал Sektoid - Четверг, 29 Сентября 2011, 04:27 |  |  |  |  | 
| 
| Sufir | Дата: Четверг, 29 Сентября 2011, 10:34 | Сообщение # 14 |  |   частый гость Сейчас нет на сайте | Создай в базе табличку с данными карты, а пользователю, как предложил Sektoid, добавь position. В файле map.php загружай данные из базы в зависимости от position игрока. 
 Ну, к примеру так:
 
 Code // map.php function getMap( $position )
 {
 
 $result = mysql_query('SELECT * FROM `map` WHERE `location`= ' . $position);
 $counter = 1;
 while ( $row = mysql_fetch_assoc($result) ) {
 $map[$counter] = $row['landscape'];
 $map[$counter] = $row['resource'];
 $map[$counter] = $row['npc'];
 $counter++;
 }
 
 return $map;
 
 }
 
 function userMoveTo( $position )
 {
 
 // Записываем новую позицию пользователя в таблицу
 
 }
 
 Таким образом функцией getMap() получишь массив с данными карты и как тебе нужно выведешь их на странице map.php. тут уж что ни вводи в адресной строке пользователь будет находится в той локации которая записана в базе.
 
 
 Сообщение отредактировал Sufir - Четверг, 29 Сентября 2011, 10:41 |  |  |  |  |