|
05.03.2007, 06:57
|
#1
|
Оператор ЭВМ
Регистрация: 17.12.2006
Сообщений: 35
Написано 0 полезных сообщений (для 0 пользователей)
|
типы в блитзе
кто нить покажите на этом коде пример использования типов.надо создать 5 ботов(сфер) и если у бота здоров=0 то удалить его и если можно то без полного перебора в гл.цикле.
Graphics3D 1024,768,32,2
SetBuffer BackBuffer()
Global zdorov=100
Const pl=1,bott=2
SeedRnd MilliSecs()
l = CreateLight()
RotateEntity l, 0, 45, 0
PositionEntity l,0,51,0
pla=CreatePlane()
ScaleEntity pla, 1000, 1, 1000
PositionEntity pla,0,0,0
EntityColor pla,0,255,0
Player=CreateCube()
PositionEntity player ,15,3,15
EntityColor player,255,0,0
EntityType player,pl
cam= CreateCamera(player)
PositionEntity cam,0,5,-10
bot=CreateSphere()
PositionEntity bot ,15,3,30
EntityColor bot,0,0,255
EntityType bot,bott
Collisions pl,bott,1,2
Repeat
If KeyDown(200) MoveEntity Player,0,0,1
If KeyDown(205) TurnEntity Player,0,-3,0
If KeyDown(203) TurnEntity Player,0,3,0
If EntityCollided(player,bott)If KeyHit(57) Then zdorov=zdorov-Rnd(40,60)
If zdorov<=0 Then HideEntity bot
UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
ПОЖАЛУЙСТА
|
(Offline)
|
|
05.03.2007, 07:37
|
#2
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: типы в блитзе
[blitz]
Type Bot ;Massiv Bota
Field Entity ;Sfera
Field Life% ;Zdorovje
End Type
Graphics3D 1024,768,32,2
SetBuffer BackBuffer()
Global zdorov=100
Const pl=1,bott=2
SeedRnd MilliSecs()
l = CreateLight()
RotateEntity l, 0, 45, 0
PositionEntity l,0,51,0
pla=CreatePlane()
ScaleEntity pla, 1000, 1, 1000
PositionEntity pla,0,0,0
EntityColor pla,0,255,0
Player=CreateCube()
PositionEntity player ,15,3,15
EntityColor player,255,0,0
EntityType player,pl
cam= CreateCamera(player)
PositionEntity cam,0,5,-10
For n=1 to 5 ;Sdelatj Patj Raz
b.Bot=New Bot ;Novij element v massiv
b\Entity=CreateSphere() ;Sozdajom Sfery
PositionEntity b\Entity ,15,3,30
EntityColor b\Entity,0,0,255
EntityType b\Entity,bott
Next
Collisions pl,bott,1,2
Repeat
If KeyDown(200) MoveEntity Player,0,0,1
If KeyDown(205) TurnEntity Player,0,-3,0
If KeyDown(203) TurnEntity Player,0,3,0
For b.Bot=Each Bot ;Dlja vsego massiva
If EntityCollided(b\Entity,pl) ;Jesli kollizitsja sfera s playerom
If KeyHit(57) ;Jesli nazhat SPace
b\Life=b\Life-Rnd(40,60) ;Otnimajem Zhizni
EndIf
EndIf
If b\Life<=0 ;Jesli zhizni malo
FreeEntity b\Entity ;Ydalajem Sfery
Delete b ;Ydalajem Massiv
Endif
Next
UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
[/blitz]
Вродебы всё прально, писал в броузере.
|
(Offline)
|
|
05.03.2007, 17:40
|
#3
|
Оператор ЭВМ
Регистрация: 17.12.2006
Сообщений: 35
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: типы в блитзе
а как моно сделать это без полного перебора в гл. цикле
|
(Offline)
|
|
05.03.2007, 18:06
|
#4
|
Дэвелопер
Регистрация: 26.12.2006
Адрес: Санкт-Петербург
Сообщений: 1,572
Написано 547 полезных сообщений (для 1,540 пользователей)
|
Re: типы в блитзе
Вродебы с типами такого не провернешь т.е без перебора а если по другому то так: надо объявить массив с жизнями, массив с самим энтити, заполнить каждый элемент массива нужным, а затем для каждого массива проверять столкнулся ли он с игроком если столкнулся то
жизнь[номер массива]=жизнь[номер массива]-10
а затем проверка жизни : если жизнь[номер массива] меньше или равно нулю то Освободить энтити в массиве[Номер массива]
это словами
__________________
|
(Offline)
|
|
05.03.2007, 18:14
|
#5
|
Легенда
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений (для 568 пользователей)
|
Re: типы в блитзе
а как моно сделать это без полного перебора в гл. цикле
|
Вот тут посмотри:
http://www.boolean.name/showthread.php?t=23
|
(Offline)
|
|
05.03.2007, 19:11
|
#6
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Re: типы в блитзе
Ну хоть JohnK читает FAQ!
пример юзания в игре: http://www.boolean.name/showpost.php?p=107&postcount=19
Вообще многие аспекты FPS разобраны в данной статье: http://www.boolean.name/showthread.php?t=15
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
05.03.2007, 23:29
|
#7
|
Элита
Регистрация: 02.10.2005
Сообщений: 1,789
Написано 132 полезных сообщений (для 252 пользователей)
|
Re: типы в блитзе
а ещё на blitzetc было, с использованием object, handle.
Написал бы где, но не помню.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:29.
|