forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=13)
-   -   Все хранить в типе?????? (http://forum.boolean.name/showthread.php?t=13812)

Diffuse13 02.12.2010 16:32

Все хранить в типе??????
 
Вопрос такой-сетевая мультиплеерная игра. Мне нужно обработать информацию т каждого игрока по сети по отдельности или в типе???: Просто по отдельности-ресурсоемко. А в типе-я не понимаю как реализовать. Такой же трабл и с пулями.

Crayzi 02.12.2010 20:18

Ответ: Все хранить в типе??????
 
Дело в том что "типы", это тоже своего рода массивы, тоесть ты по любому будеш перебирать всех игроков если захочеш вдруг всех перенести куданить в 1 точку или еще чтонить.
...1 мн спустя...
Хмм, не прально понял вопрос, ну тут есть другой вариант, если те надо обработать дейтсвия отдельного игрока, то надо выбрать игрока из массива и произвести над ним "экзэкутцию".

Ganociy 02.12.2010 22:45

Ответ: Все хранить в типе??????
 
Как построить стенку из кубиков. Есть функция создания кубиков. Как Через For.. Next... сделать это?

Ganociy 02.12.2010 22:46

Ответ: Все хранить в типе??????
 
Сорри не туда попал

impersonalis 02.12.2010 22:50

Ответ: Все хранить в типе??????
 
ты попал ... на форум

DeeJex 02.12.2010 23:28

Ответ: Все хранить в типе??????
 
Цитата:

А в типе-я не понимаю как реализовать.
Так не лезь делать игру, пока не разберешься с основами блицбэйсика.

Цитата:

Сообщение от Ganociy (Сообщение 170646)
Как Через For.. Next... сделать это?

Через For..Next, это же очевидно!

ABTOMAT 03.12.2010 02:02

Ответ: Все хранить в типе??????
 
Цитата:

по отдельности или в типе
Объясни подробней, что означает "по-отдельности" и "в типе". Моя твоя не понимай.

Diffuse13 03.12.2010 06:21

Ответ: Все хранить в типе??????
 
Так не лезь делать игру, пока не разберешься с основами блицбэйсика.
Основы блитзбэйсика знаю, с сетью не разбираюсь.

Вроде бы разобрался разобрался. Должно получиться чтото вроде этого....
Код:

Global stream=CreateUDPStream() ;Порт приема информации
Type player
Field entity
Field x#
Field y#
Field z#
End Type


Function cr_player()
For i=1 To колличество игроков
user.player=CreateCube()
Next
End Function

Обновление

Function upd_player()
For user.player=Each player
If RecvUDPMsg(stream) Then
        PositionEntity user.player,Float(ReadLine$(stream)),Float(ReadLine$(stream)),Float(ReadLine$(stream))
EndIf
Next
End Function

Но почему то у меня ощущение, что какая-то муть получится

GoddoG 03.12.2010 13:40

Ответ: Все хранить в типе??????
 
Цитата:

Но почему то у меня ощущение, что какая-то муть получится
Это ты точно подметил :cool:

Я вот смотрю на выше указанный код и не пойму что это такое вообще:4to:

А откуда у тебя берётся user.player в PositionEntity user\player и где For user.player new player, а вот это что такое Float(ReadLine$(stream))
так не проще Readfloat(stream) и зачем создавать x#,y#,Z# тип если ты их не используешь, в общем, для начала изучи help на тему Type и Dim пройдет месяц
ты залезь обязательно в этот топик и посмотри на свой код, я тебе гарантирую 5 минут хорошего настроения я сам подстулом валяюсь от своих давнишних вопросов. :-D

А об сетевой мультиплеерной игре даже не думай пока, только время зря потратишь.

p.s Да кстати а причем тут 2D-программирование

Diffuse13 03.12.2010 14:38

Ответ: Все хранить в типе??????
 
Тьфу ты нах............... Я забыл прописать вместо
Код:

user.player=CreateCube()
это
Код:

user.player=New player
user\entity=CreateCube

Цитата:

так не проще Readfloat(stream)
пардон, не знал :dontknow:

Цитата:

help на тему Type и Dim
В Type более менее понимаю, в Dim........не очень.....

Цитата:

x#,y#,Z# тип если ты их не используешь
планирую использовать в дальнейшем.......

Цитата:

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


Цитата:

p.s Да кстати а причем тут 2D-программирование
чесно говоря я подумал про нет-а это 2D

Diffuse13 04.12.2010 20:00

Ответ: Все хранить в типе??????
 
Есчо вопрос. вот функции:
Отдачи на клиенте
Код:

Function Join(ipadress$)
order="join..."
WriteLine stream,order
WriteLine stream,GetMyIP()
ip=Int_IP(ipadress$)
SendUDPMsg stream,ip,53424
End Function

и приема на сервере:

Код:

Function Reception()
If RecvUDPMsg(stream) Then
order=ReadLine$(stream)
If order="join..." Then
p.Player=New Player
p\ip=Int_IP(ReadLine$(stream))
EndIf
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

While Not KeyDown(1)
        Cls
        For p.Player=Each Player
       
        Print DottedIP$(p\ip)
        Next
        Reception()
Wend

Работать не хочет, не выполняет это:
Код:

        For p.Player=Each Player
       
        Print DottedIP$(p\ip)
        Next


ABTOMAT 04.12.2010 20:35

Ответ: Все хранить в типе??????
 
Ну а Reception() у тебя случается?

Diffuse13 04.12.2010 20:37

Ответ: Все хранить в типе??????
 
Цитата:

Ну а Reception() у тебя случается?
То есть? Reception() стоит в цикле и обновляется постоянно

GoddoG 04.12.2010 21:36

Ответ: Все хранить в типе??????
 
Я думаю проблема в том что ты информацию передаешь через WriteLine
а переменную order="join..." стрингом “$” не обозначаешь order$="join..." ;)

ABTOMAT 09.12.2010 00:10

Ответ: Все хранить в типе??????
 
Цитата:

Сообщение от Diffuse13 (Сообщение 170891)
То есть? Reception() стоит в цикле и обновляется постоянно

Ну, я имею в виду, что ты можешь так думать, но чтобы быть уверенным, нужно в начале тела этой функции написать что-то вроде

debugLog("Я - функция Reception, и я таки случилась!");

Если в дебаггере этот текст увидишь во время работы проги, то замечательно, если нет - значит, не случается и надо искать, почему.


Часовой пояс GMT +4, время: 23:26.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot