Показать сообщение отдельно
Старый 19.09.2005, 04:55   #1
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
ОБЪЯСНЯЮ ПОДРОБНО, ЧТО МНЕ НАДО!

I.Как сделать чтобы вот это работало не на клавеатуре, а намышке?

1.Двигая мышку в ВЕРХ, в НИЗ!
If KeyDown(44) Then MoveEntity cam,0,-0.5,0 
If KeyDown(45) Then MoveEntity cam,0,0.5,0
2.Крутя колёсико мышки в ВЕРХ ,в НИЗ
If KeyDown (46) Then MoveEntity cam,0,0,-2 
If KeyDown(47) Then MoveEntity cam,0,0,2
II. В данном примере у меня бегает robot неподялёку от кубиков(я заминил ими других героев - БОТОВ)
cone и cub на каторых написанны имена ,и эти имена всё время показываются, хоть мой герой убежит за километр,хоть зайду за припятствие(Стену), я буду видеть их имена, А Я ПРОШУ ЧТОБЫ КОГДА robot УБЕГАЛ ЗА ЧТО-НИБУДЬ И cone и cub НЕ БЫЛО ВИДНО, ИХ ИМЕНА(cone и cub) ИЗЧЕЗАЛИ, А КОГДА ИХ ВИДНО ИМЕНА ОПЯТЬ ПОЯВЛЯЛИЬ!

И если что лишнее в коде найдёте напешите!

Заранее СПАСИБА!


;================================================= ===
Graphics3D 1024,768,32,1 
 
l = CreateLight() 
RotateEntity l, 0, 45, 45 
level=LoadMesh ("C:\IGRA\MAPS\TUR.3ds") 
grunt=LoadTexture("C:\IGRA\samples\anim\makbot\Panels.jpg") 
EntityTexture level,grunt 
PositionEntity level,0,-7,0 
ry# = -8 
dy# = 0 
If KeyDown(57) Then 
If ry# = -8 Then dy# = 0 
EndIf 
ry# = ry# + dy# 
dy# = dy# - 0.1 
If ry# < -8 Then ry# = -8: dy# = 0 
robot = LoadAnimMesh( "C:\MODELI\My models\ROBOT\robotic.3ds" ) 
LoadAnimSeq robot, ("C:\MODELI\My models\ROBOT\running.3ds" ) 
ScaleEntity robot, 0.4, 0.4, 0.4 
 
cam = CreateCamera(robot) 
 
CameraRange cam, 5,2000 
CameraFogColor cam, 0,128,255 
CameraFogRange cam, 1,1000 
 
 
PositionEntity cam, 0, 60, 40 
RotateEntity cam, 30, 180, 0 
EntityType robot,1 
EntityRadius robot, 0 
EntityType level,2 
 
Collisions 1, 2,2, 2 
 
 
cub=CreateCube() 
PositionEntity cub,10,5,10 
cub3=CreateCube() 
PositionEntity cub3,10,5,-10 
ScaleEntity cub3 ,10, 10, 10 
cone=CreateCube() 
PositionEntity cone,5,5,10 
golova=CreateSphere () 
PositionEntity golova ,10,10,30 
 
 
rx# = 10 
ry# = -8 
rz# = 30 
dy# = 0 
ang = 90 
Repeat 
PositionEntity robot, rx#, ry#, rz# 
RotateEntity robot, 0, ang + 90, 0 
If KeyDown(57) Then 
If ry# = -8 Then dy# = 3 
EndIf 
ry# = ry# + dy# 
dy# = dy# - 0.1 
If ry# < -8 Then ry# = -8: dy# = 0 
If KeyDown(17) 
If AnimSeq(robot) = 0 Then Animate robot, 1, 0.5, 1, 10 
rx# = rx# + Cos(ang) * 0.5 
rz# = rz# + Sin(ang) * 0.5 
Else 
If AnimSeq(robot)=1 Then Animate robot, 2, 1, 0, 10 
EndIf 
 
qy#=-50 
ey#=60 
;======================================================================= == 
If anglex> ey# Then anglex=ey# 
If anglex< qy# Then anglex=qy# 
RotateEntity cam, anglex, 180, 0 
;============================== 
ang = ang - MouseXSpeed()/1.5 
anglex=-MouseYSpeed()/2 
 
;======================================================================= == 
PointEntity cam,robot 
If KeyDown(44) Then MoveEntity cam,0,-0.5,0 
If KeyDown(45) Then MoveEntity cam,0,0.5,0 
If KeyDown (46) Then MoveEntity cam,0,0,-2 
If KeyDown(47) Then MoveEntity cam,0,0,2 
anglex=MouseYSpeed() 
If anglex Then MoveEntity cam,0,0.5,0 
 
anglexx=-MouseYSpeed() 
 
MoveMouse GraphicsWidth()/2, GraphicsHeight()/2 
If KeyDown(16) Then ang = ang + 3 
If KeyDown (1 Then ang = ang - 3 
If KeyDown (15) Then anglex = anglex + 3 
If KeyDown(1) Then Exit 
If KeyDown (2) TurnEntity cam,2,0,0 
If KeyDown (42) Then CameraZoom cam, 1.5 
If Not KeyDown (42) Then CameraZoom cam,1 
If KeyDown (54) Then CameraFogMode cam,1 
If Not KeyDown (54) Then CameraFogMode cam,0 
UpdateWorld 
RenderWorld 
;----------------------------------------------------------------------- ------------------------ 
CameraProject(cam,EntityX(cone),EntityY(cone),EntityZ(cone))  
If EntityInView(cone,cam)=True 
Text ProjectedX#(),ProjectedY#(),"Bordos":Color 0, 0, 128 
End If 
;==================================================== 
CameraProject(cam,EntityX(cub),EntityY(cub),EntityZ(cub)) 
If EntityInView(cub,cam) = True 
Text ProjectedX#(),ProjectedY#(),"Wiliams":Color 0, 128, 0 
EndIf 
;===================================================== 
 
Flip 
Forever 
RenderWorld 
Flip 
WaitKey
(Offline)
 
Ответить с цитированием