Показать сообщение отдельно
Старый 30.04.2009, 01:43   #10
ARTMAN
Оператор ЭВМ
 
Регистрация: 22.10.2008
Сообщений: 38
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Застрял на ровном месте...

Весь код:

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

Type palk
 Field ent
End Type

Global vetka=LoadMesh("vetka.b3d")
ScaleEntity vetka,0.1,0.1,0.1
EntityTexture vetka,wood
EntityPickMode vetka,3
PositionEntity vetka,0,0,30

For i=1 To 10
 b.palk = New palk
 b\ent = CopyEntity(vetka)
 PositionEntity b\ent,Rnd(-20,20),0,Rnd(-20,20)
 RotateEntity b\ent,0,Rnd(360),0
NameEntity b\ent,"palka "+i
Next

Const pl=1,zem=2,obj=3

light=CreateLight()

zemla=CreatePlane()
EntityTexture zemla,dirt
EntityType zemla,zem

Global cam=CreateCamera()
EntityRadius cam,3
PositionEntity cam,0,5,0
CameraRange cam,1,3000
EntityType cam,pl

ograda=LoadMesh("ograda.b3d")
EntityTexture ograda,wood
ScaleEntity ograda,0.1,0.1,0.1
PositionEntity ograda,0,0,10
EntityType ograda,obj

palki=0

Repeat 

picked=CameraPick(cam,MouseX(),MouseY())

For b.palk=Each palk
If picked>0
If EntityDistance(cam,picked)<10 And picked=b\ent And KeyHit(18) Then
palki=palki+1
FreeEntity picked
EndIf
EndIf
Next

Collisions pl,zem,2,2
Collisions pl,obj,2,2

move()

If Not EntityCollided (cam,zem) Then TranslateEntity cam,0,-1,0

UpdateWorld : RenderWorld

Text 10,10,palki

If picked>0
 SetFont (font)
	Text MouseX(),MouseY()-12,EntityName(picked),True,True
EndIf

Flip
Until KeyHit(1)
End

;;;END;;;

Function move()

If KeyDown(17) MoveEntity cam,0,0,0.3
If KeyDown(31) MoveEntity cam,0,0,-0.3

TurnEntity cam,0,-MouseXSpeed()/2,0,True
TurnEntity cam,MouseYSpeed()/2,0,0

MoveMouse GraphicsWidth()/2,GraphicsHeight()/2

End Function

Последний раз редактировалось jimon, 30.04.2009 в 11:21. Причина: тег code
(Offline)
 
Ответить с цитированием