Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

> Сохранение местоположения игрока, Как сохранить положение игрока ?
Raven
сообщение Oct 18 2004, 20:02
Сообщение #1


Level 8
***

Класс: Фея
Характер: Chaotic Evil
Раса: Фея



По ходу дела частенько приходится останавливать сервак, менять скрипты, добавлять чето, удалять... когда измененный модуль ставится на сервак и запускается - при заходе на серв все игроки оказываются в стартовой точке модуля. Всвязи с этим возникает вопрос - можно ли сделать так, чтобы игроки оставались на той же позиции, в которой дисконнектились и появлялись в той же позиции, несмотря на остановку сервака и изменение модуля? Я так понимаю, что это надо делать с помощью ДБ - сохранять местоположение игрока в скрипте OnClientLeave, но как именно - какими функциями зафиксировать местоположение игрока и как это в БД запихнуть ?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
 
Открыть новую тему
Ответов
_kaa_
сообщение Oct 19 2004, 22:01
Сообщение #2


Level 9
Иконки Групп

Класс: Волшебник
Характер: Chaotic Good
Раса: Дракон
NWN: Скриптинг [PW]



Все совсем не просто :(
Сохранять положение игрока на onClientLeave - не получится, координаты всегда будут нулевые (вроде я где-то в прикрепленном топике расписывал почему)

Варианты решение:
1. Сохранять положение на OnEnter для любой локации. Локация будет та-же, но место нет
2. На onHeartBeat модуля поставить несложный скрипт, который будет перебирать всех игроков и запоминать в _локальной_ переменной вектор с месторасположением игрока.
А на событие onClientLeave записывать месторасположение в базу.
Только тут скрыта еще одна проблема :)
Месторасположение храниться как Номер локации, коорд.X,Y,Z.
Номер локации - число, которое _меняется_ после сборки модуля в тулсете при добавлении\удалинии локаций. Так что нужно использовать свои функции, вот тут есть вариант http://www.wrg.ru/forums/index.php?showtopic=241
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

Сообщений в этой теме


Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 27th April 2025 - 11:47