[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Лабиринт из файла
pitonmcДата: Суббота, 07 Ноября 2009, 16:01 | Сообщение # 1
Начинающий
Группа: Пользователи
Сообщений: 5
Награды: 0
Замечания: 0%
Статус:
Здравствуйте. у меня проблема, делаю лабиринт с помощью описания нахождения стен в файле .map
например у меня такое описание ( 0 - это ничего)
111111111
100000001
100000001
100000001
100000001
111111111
А в игре получается что левая стенка исчезает ((( ireful
11111111
1
1
1
1
11111111


Сообщение отредактировал pitonmc - Суббота, 07 Ноября 2009, 16:02
 
AD77RootДата: Суббота, 07 Ноября 2009, 16:06 | Сообщение # 2
Гиперсексуальная белка
Группа: Администрация
Сообщений: 1226
Награды: 0
Статус:

Профессия: Администратор
может у тебя неправельно сам "0" задан?

 
pitonmcДата: Суббота, 07 Ноября 2009, 16:10 | Сообщение # 3
Начинающий
Группа: Пользователи
Сообщений: 5
Награды: 0
Замечания: 0%
Статус:
0- вообще не задан
 
pitonmcДата: Суббота, 07 Ноября 2009, 16:28 | Сообщение # 4
Начинающий
Группа: Пользователи
Сообщений: 5
Награды: 0
Замечания: 0%
Статус:
Code
Graphics3D 1280,1024,32,1
;создаём порт для манитора
SetBuffer  BackBuffer()
Const TypePlayer = 1, TypeWall = 2,TypeCam=3;типы для столкновения
;обезательно нужна в коде
Dim aMap(10000,10000)
Dim aCube(20,20)
hero=LoadMesh("models/hero.3ds");модель игрока
light=CreateLight();свет
PositionEntity light, 1,1,1
cam=CreateCamera(hero);чтобы камера была сзади игрока
;делаем основное (в низу)
ScaleMesh hero,0.009,0.009,0.009;делаем модель меньше
RotateMesh hero,-90,90,0;исправляем баг в моделе
PositionEntity cam,0,1.2,-2;делаем камеру сзади
PositionEntity hero,12,-1,8
TurnEntity light,45,45,0; СВЕТ
EntityRadius hero, 0.5;радиус столкновения стены и игрока
EntityType cam,TypeCam  
;внизу читаем карту =)
mapSize% = 20
filein = ReadFile("maps/general.map")
mapLines = 1

While Not Eof(filein)
    mapStr$ = ReadLine$( filein )
    For i=1 To MapSize
        aMap(mapLines,i) = Int( Mid(mapStr,i,1 ))
    Next
    mapLines = mapLines + 1
Wend
CloseFile(filein)

tex = LoadTexture("models/wall.jpg")
tex2=LoadTexture("models/wall2.jpg")
For j=1 To mapSize
    For i=1 To mapSize
    If aMap(j,i) <> 0
       aCube(j,i)=CreateCube()
       Select aMap(j,i)  
       Case 1  
               EntityTexture aCube(j,i), tex
               ScaleEntity aCube(j,i),1.5,1.5,1.5
               EntityType aCube(j,i), TypeWall
       Case 2  
               EntityTexture aCube(j,i), tex2
               ScaleEntity aCube(j,i),1.5,1.5,1.5
               EntityType aCube(j,i), TypeWall
       End Select  
    PositionEntity aCube(j,i), i*3, 0, j*3
    EndIf
    Next
Next
;внизу пол и потолок
;Пол
Global Floortex=LoadTexture("models/grass.jpg")
Floor1=CreatePlane()
PositionEntity Floor1,0,-1,0
EntityTexture Floor1, floortex
ScaleTexture Floortex,15,15
;Потолок
Global skytex=LoadTexture("models/roof.jpg")
ceiling=CreatePlane()
PositionEntity ceiling,0,1,0
EntityTexture ceiling, skytex
TurnEntity ceiling, 0,0,180  
;туман =)
CameraFogMode cam,1
     CameraFogRange cam, 0, 50
     CameraFogColor cam,150,150,150
EntityType hero, TypePlayer;определяем тип игрока для столкновения
Collisions TypePlayer, TypeWall, 2, 3;столкновение
Repeat
;внизу управление игроком
If KeyDown(200) MoveEntity hero,0,0,0.2;вперед
If KeyDown(208) MoveEntity hero,0,0,-0.1;назад
If KeyDown(203) TurnEntity hero,0,2,0;поворот вправо
If KeyDown(205) TurnEntity hero,0,-2,0;поворот влево
UpdateWorld;создаем мир
RenderWorld ;рендерим мир
Flip  
Until KeyHit(1)
End
 
pitonmcДата: Суббота, 07 Ноября 2009, 17:00 | Сообщение # 5
Начинающий
Группа: Пользователи
Сообщений: 5
Награды: 0
Замечания: 0%
Статус:
Code
1111111111111111111111111
1                    1
1                    1
1                    1
1                    1
1                    1
1111111111111111111111111
 
pitonmcДата: Суббота, 07 Ноября 2009, 18:18 | Сообщение # 6
Начинающий
Группа: Пользователи
Сообщений: 5
Награды: 0
Замечания: 0%
Статус:
Спасибо Jack Я понял проблему, долбанный учебник
 
  • Страница 1 из 1
  • 1
Поиск: