Показать сообщение отдельно
Старый 30.12.2006, 13:40   #9
Progger_Leo
 
Сообщений: n/a
Re: Перевод раздела Direct Play

NetPlayerLocal (playerID)

Параметры

playerID = номер ID игрока (данный командой CreateNetPlayer)

Описание

Для начала, эта команда работает ТОЛЬКО если вы уже подключились к сетевой игре через StartNetGame или JoinNetGame и вы уже создали игрока через СreateNetPlayer (вы должны создать игрока, чтобы эта команда не бездействовала).

Используйте эту команду вместе с NetMsgFrom (для получения ID игрока) для проверки: этот игрок на локальной машине? Вы наверняка желаете добавить в ваше приложение возможность переписываться. А для этого нужно знать, кто писал сообщение: игрока на локальной или удаленной машине.Вы будете использовать NetMsgType, NetMsgFrom и NetMsgTo чтобы получить больше информации о сообщении.

Пример требует, чтобы вы запустить его на локальной машине вместе с примером SendNetMsg.

Пример

; пример NetPlayerLocal
; --------------------
; --------------------
; Запустите этот пример с подключающимся компьютером, чтобы "посмотреть"
; на действие команды SendNetMsg. Запустите тот пример
; на локальной машине.
;
; Эта программа сообщит вам, когда игрок коснется стенки

; Используйте это вместo JoinNetGame - проще будет
StartNetGame()

; Создание игрока. Игрок должен быть создан для получения сообщений!
playerID=CreateNetPlayer("Shane")

; Цикл с проверкой статуса
While Not KeyHit(1)

; Проверка получения сообщений
If RecvNetMsg() Then

; если да, мы должны узнать тип сообщения
msgType=NetMsgType()

; тип 1-99 означает сообщение пользователя
If msgType>0 And msgType<100 Then

; Давайте посмотрим, от кого пришло сообщение.
msgFrom=NetMsgFrom()

; Давайте примем само сообщение!
msgData$=NetMsgData$()


; Вывод сообщения на экран
Print msgData$
if NetPlayerLocal(NetMsgFrom()) then
print "(Это сообщение было отправлено от локального игрока)"
end if
End If
End If
Wend
 
Ответить с цитированием