Тема: Help(UDP)
Показать сообщение отдельно
Старый 26.11.2007, 19:38   #1
Антихрист
Разработчик
 
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений
(для 412 пользователей)
Смех Help(UDP)

Помогите разоьраться с UDP подклбчением(особееноости онлаин игра)
Вот была приведна сетевая игра(пример) гоночки кубиками но меня почему то она токо рассмешила! сомтрите:
Const in_port=53424
Const out_port=53425
Global Stream_1=CreateUDPStream(out_port)
Global Stream_2=CreateUDPStream(in_port)
Global op_ip$=Input()
Global cub
Global cub2

Graphics3D 800,600,32,2
SetBuffer BackBuffer()

cub=CreateCube()
MoveEntity cub,-2,0,0
cub2=CreateCube()
MoveEntity cub,2,0,0

cam=CreateCamera(cub)
PositionEntity cam,0,5,-10

While Not KeyHit(1)
If KeyDown(200) MoveEntity cub,0,0,.1
If KeyDown(20 MoveEntity cub,0,0,-.1
If KeyDown(203) TurnEntity cub,0,1,0
If KeyDown(205) TurnEntity cub,0,-1,0
UpdateNetwork()
RenderWorld
Flip
Wend

End

Function UpdateNetwork()
WriteLine Stream_1,EntityX(cub)
WriteLine Stream_1,EntityZ(cub)
WriteLine Stream_1,EntityYaw(cub)
SendUDPMsg Stream_1,Int_IP(op_ip$),in_port
If RecvUDPMsg(Stream_2) Then
PositionEntity cub2,Float(ReadLine$(Stream_2)),0,Float(ReadLine$( Stream_2))
RotateEntity cub2,0,Float(ReadLine$(Stream_2)),0
EndIf
End Function

Function Int_IP(IP$)
d1%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d2%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d3%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d4%=IP$
Return (d1 Shl 24) + (d2 Shl 16) + (d3 Shl 8 ) +d4
End FunctionВо первых оба игрока управляют одним и тем же кубиком во торых идет подключение через ип! а как сделать что бы все ко мне подрубались! а не вводить ипы лруг друга! И еще как бы организовать что бы каждый новый игрок имел свой собственный(новосозданный) кубик и имел собственное имя(ID) С заранее спасибо!жду овтетлв!Сорри за орфаграфию Ачепяток много!
(Offline)
 
Ответить с цитированием