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=8478)

Mhyhr 05.08.2009 21:04

Ответ: Чтение файла
 
:crazy:
Цитата:

было бы круто
а если сделать это самому будет ещё круче, поверьте...)
Если будет время то допишу свой пример с Вашими потребностями...

ABTOMAT 05.08.2009 22:25

Ответ: Чтение файла
 
Вложений: 1
Вот уже много дней наблюдаю за этим топиком.
Таки решил помочь.
Работы на 10 минут, а флуда на 2 страницы.
Автор, научись уже включать мозги
FFFFFFFFFFFFFFUUUUUUUUUUUUUUUUUUUU-

Petrofan 06.08.2009 13:46

Ответ: Чтение файла
 
И все равно как я вижу не то что нужно код читает только 1,2,3 а не 10,11,12 видемо нужно как нибуть подругому делат или учить функции чтения-записи файла. Может у кого есть инфа по этим функциям.

IGR 06.08.2009 13:52

Ответ: Чтение файла
 
Цитата:

учить функции чтения-записи файла. Может у кого есть инфа по этим функциям.
учи !! :) а инфа в достаточном объеме в справке блица !!

Chrono Syndrome 09.08.2009 22:38

Ответ: Чтение файла
 
Код:

Local LvlFile%, Num%, NFlag%, Char%, X%, Y%
LvlFile = OpenFile("*путь к файлу*")
; ...
While Not Eof(LvlFile)
Char = ReadByte(LvlFile)
Select True
Case Char >= 48 And Char <= 57 : Num = Num * 10 + (Char - 48) : NFlag = True
Case Char = 10 : X = 0 : Y = Y + 1
Default
If NFlag : LvlArray(X, Y) = Num : Num = 0 : NFlag = False : X = X + 1 : EndIf
End Select
Wend
; ...
CloseFile(LvlFile)

...Вот как-то так (если с разделителями).

MiXaeL 09.08.2009 23:51

Ответ: Чтение файла
 
Вложений: 1
Согласен с АВТОМАТом, это просто FFFFFFFFFFFUUUUUUUUUUUUUUUUU-
Ну можно хоть чуть-чуть напрячь мозг? И изменить 2 строчки в его примере?

Chrono Syndrome 10.08.2009 13:59

Ответ: Чтение файла
 
Цитата:

Ну можно хоть чуть-чуть напрячь мозг? И изменить 2 строчки в его примере?
...Да вот сдается мне, что изменений там стоит произвести чуть больше:
Код:

Function LoadLevel(levelfile$)
Local FHandle%, Word%, X%, Y%
FHandle = OpenFile(levelfile)
While Not Eof(FHandle)
Word = ReadShort(FHandle)
If Word <> $A0D Then
GameField(X, Y) = (Word And $FF - 48) * 10 + (Word - $3000) Shr 8
X = X + 1
Else : X = 0 : Y = Y + 1
EndIf
Wend
CloseFile(FHandle)
End Function


Petrofan 12.08.2009 13:45

Ответ: Чтение файла
 
Спасибо всем за помощь все работает, но есть еще вопрос. Как можна сделать проверку ячеек на соединение.Вот допустим есть поле 8х8, при щелчке мыши по ячейке она изменяет картинку, картинок 20 шт на них нарисованы проводники, лампочки,батареи, при правильном соединении должна картинка лампочки поменятся на картинку загоревшейся лампочки каким образом можна сделать проверку на правильность соединения. Я думал так: сделать загрузку уровня (неправильного конорий надо изменять) и загрузить уровень (правильный где все как надо правильно соединять) и както это все проверять. Может ктото подскажет как можна по другому сделать?

Spiderman 12.08.2009 14:10

Ответ: Чтение файла
 
Если это 2D то достаточно проверить колизию курсора и картинки (coll =RectsOverlap(t3\x,t3\y+t3\h+5,t3\w,5, t1\x,t1\y,t1\w,t1\h)). Если нажата клавиша мышки и колизия присутствует, то данную картинку заменяем новой. Если использовать типы, то сделать это раз плюнуть.

Принцип: подводим курсор к изображению, проверяем его колизию с курсором (к примеру тип t3 - это курсор, тип t1 - изображение лампочки), если нажата клавиша мыши и поле лампочки light = 0 то включаем лампочку и изменяем изображение (t1\light=1 : t1\image = LoadImage("light.jpg")). В 3-х мерке будет немного другой способ, но принцип такой же

Petrofan 12.08.2009 18:12

Ответ: Чтение файла
 
Вложений: 1
Вот что уже есть сдесь при повороте батарейки должна гаснуть лампочка попробуйте может у кого получится.

Mhyhr 12.08.2009 20:14

Ответ: Чтение файла
 
Petrofan, что за энергия заставит гореть лампочку с одним подключенным полюсом? Или там всё невидим0 заземлено?
З.Ы. Клёвая идея, орфографию подправь на сайте =)

А по делу, надо наверно юзать что-то типа модифицированного алгоритма А* чтобы проверерять замкнутость цепи.

Ну и напоследок:
Цитата:

Вот что уже есть сдесь при повороте батарейки должна гаснуть лампочка попробуйте может у кого получится.
Цитата:

Согласен с АВТОМАТом, это просто FFFFFFFFFFFUUUUUUUUUUUUUUUUU-
Ну можно хоть чуть-чуть напрячь мозг?

Chrono Syndrome 12.08.2009 21:03

Ответ: Чтение файла
 
Цитата:

А по делу, надо наверно юзать что-то типа модифицированного алгоритма А* чтобы проверерять замкнутость цепи.
Да сойдет и обычный, надо просто с умом генерировать карту проходимости.

Но не кажется ли вам, что дальнейшее обсуждение стоит вынести в отдельную тему ?

Petrofan 13.08.2009 12:47

Ответ: Чтение файла
 
Ты правильно отметил минус батарейки это масса а алгоритм что нужен так нужен полюбому. Ну а как вам мое решение проблеми что я сделал для каждого блока катринок свой поворот.


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

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