![]() |
мультиплеер создания пули у всех(как реализовать)
создал я мультиплеер игру где можно вмести бегать =) еще игрок может стрелять (вылетает пуля и летит по карте) но проблема в том что я не знаю как сделать чтобы все игроки видели эту пулю!
можете подсказать теорию или подсказать пример кода =) |
Сделать пулю точно так же, как и игрока-инвалида, который может двигаться только в одну сторону, пока не влетит во что-нибудь.
Ну а если серьезно, расскажите, как вы сделали мультиплеер (сокетами или просто загрузками по интервалу), и тогда будет уже попроще сориентироваться, что вам подсказать. Навскидку — игрок выстрелил — отправляем всем сообщение, что есть пуля со свойствами x, y , vx, vy и owner. x и y — начальные координаты пули. vx и vy — компоненты вектора движения пули. owner — id игрока, кто выстрелил. У всех игроков, получивших это сообщение, на экране создается мувиклип в нужных координатах и двигается в нужную сторону. Таким образом, отправив один раз сообщение, мы создали пулю у всех, которая будет двигаться примерно одинаково. |
просто загрузками по интервалу mysql+php+flash
а можно подробней про (отправляем всем сообщение) вот допустим отправили мы эти данные в php+mysql, другой игрок загружает данные с интервалом в 10 мс =) и что тут у нас получается, у игрока при каждой загрузке будет создаваться пуля, даже если игрок не стрелял))) |
в БД ставьте флаг, что данная пуля данному игроку уже отправлена.
а в целом - ересь это. Используйте хотя бы socket |
все ровно не пойму =)
|
Сервер сдохнет отдавать всем сообщения с интервалом в 10 мс. Ну да ладно, все с этого начинали :)
А что в случае с движением игрока у вас получают его оппоненты? |
новые _X _y
Добавлено через 24 минуты Цитата:
|
Цитата:
На АС2 я реализовывал так: есть 2 вида процедур на движение, на стрельбу, смену анимации и прочией действа. Первая вызывает 2ю + отправляет сообщение на сервер, а 2-я получает параметры и перемещает персонажа / создает пулю и тд. При получении сообщения с сервера вызывается соответственно 2-я. |
| Часовой пояс GMT +4, время: 09:36. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.