Суббота, 17 Апреля 2021, 02:34

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 9 из 9
  • «
  • 1
  • 2
  • 7
  • 8
  • 9
Форум игроделов » Записи участника » Abel399 [163]
Результаты поиска
Abel399Дата: Суббота, 26 Мая 2012, 15:38 | Сообщение # 161 | Тема: Создание пули...
Surpass your limits. Right now.
Сейчас нет на сайте
Ну вот подправил в коде:
Клиент нажимает лкм и выполняются два скрипта:
Code
if canshoot
{ canshoot=false;
  alarm[1]=10;  //время перезарядки
  mybullet = instance_create(x+0,y+0,obj_bullet);
  mybullet.speed = 10;
  mybullet.direction = dir;
  mybullet.myplayer = id;
  mybullet.image_angle = mybullet.direction;
  mybullet.command = command;
  }

Code

bullx=obj_bullet.x
bully=obj_bullet.y
bulldirection=mybullet.direction
clearbuffer();
writebyte(12);
writeshort(bullx);
writeshort(bully);
writeshort(bulldirection);
sendmessage(global.clienttcp)

Сервер принимает:
Code

mid=receivemessage(clientsocket);
mid = readbyte();
switch mid
{
  case 12:
    bullx=readshort();
    bully=readshort();
    bulldirection=readshort();
    }
  break;

Сервер отправляет:
Code

clearbuffer();
writebyte(12);
writeshort(bullx);
writeshort(bully);
writeshort(bulldirection);
sendmessage(clientsocket);

Клиент принимает и выполняет:
Code

mid = receivemessage(global.clienttcp);
mid = readbyte();
switch mid
{
  case 12:
    bullx=readshort()
    bully=readshort()
    bulldirection=readshort()
    bull=instance_create(bullx, bully, obj_bull)
    }
  break;

Но почему-то пуля все равно не отображается( Помочь можешь?


Ninja Slayer - 2D puzzle game with physics
Abel399Дата: Суббота, 26 Мая 2012, 14:50 | Сообщение # 162 | Тема: Создание пули...
Surpass your limits. Right now.
Сейчас нет на сайте
Раз так всё плохо, то помоги) Скажи как бы ты сделал "правильно" biggrin

Ninja Slayer - 2D puzzle game with physics
Abel399Дата: Суббота, 26 Мая 2012, 12:36 | Сообщение # 163 | Тема: Создание пули...
Surpass your limits. Right now.
Сейчас нет на сайте
Щас на gm делаю онлайн игру (так с друзьями поиграть). Проэкт не глобальный и не коммерческий happy . И вот я споткнулся, когда начал делать выстрелы... Идея в том, что клиент1 выстреливает при нажатии на лкм, создаётся пуля и пишется код:
Code

clearbuffer();
writebyte(shot)
writeshort(bullet.x);
writeshort(bullet.y);
writeshort(dir);
writeshort(bullet.image_angle);

Сервер принимает байт и читает его:
Code

case shot:
bullet.x=readshort()
bullet.y=readshort()
dir=readshort()
bullet.image_angle=readshort()

Сервер отправляет:
Code

clearbuffer();
writebyte(shot);
writeshort(bullet.x);
writeshort(bullet.y);
writeshort(dir);
writeshort(bullet.image_angle);
sendmessage(clientsocket);

Другие клиенты читают:
Code

case shot:
bullet.x=readshort();
bullet.y=readshort();
dir=readshort();
bullet.image_angle=readshort();
bullet=instance_create(bullet.x, bullet.y, obj_bullet) {direction=dir; obj_bullet.image_angle=bullet.image_angle}

Вот такой код пробовал я писать... Но как только я нажимал лкм, то клиент зависал и был полностью не управляем(выключался только через диспетчер задач). Вообщем пуля у меня в клиенте создаётся и летит, а как сделать чтобы её видели другие клиенты? Умные люди прошу вашей помощи smile Пожалуйста помогите. rolleyes Заранее спасибо)
P.S. Вот сама моя игра, чтобы было понятно как, там у меня дело обстоит -скачать
P.S.S. Тот код я убрал т.к. он же не работает - зачем ему там быть)


Ninja Slayer - 2D puzzle game with physics

Сообщение отредактировал Abel399 - Суббота, 26 Мая 2012, 12:48
Форум игроделов » Записи участника » Abel399 [163]
  • Страница 9 из 9
  • «
  • 1
  • 2
  • 7
  • 8
  • 9
Поиск:

Все права сохранены. GcUp.ru © 2008-2021 Рейтинг