forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Змейка (http://forum.boolean.name/showthread.php?t=4666)

Данил 07.10.2007 00:50

Re: Змейка
 
А.. дак ты писал :

Цитата:

Keyhit на KeyDown и получилось так, что змейка как-бы склеилась...(
Я это и попробовал. и здесь у меня ничего не слилось.
А если изменить с 3 до 1, то надо уменьшать размер кубиков. Я сам не поинмаю, почему они такого аномально большого размера. )

Fant 07.10.2007 00:58

Re: Змейка
 
Цитата:

Сообщение от Данил
А.. дак ты писал :

Я это и попробовал. и здесь у меня ничего не слилось.
А если изменить с 3 до 1, то надо уменьшать размер кубиков. Я сам не поинмаю, почему они такого аномально большого размера. )

Так) а что делать если у меня моделька должна быть не .1 а 5. ScaleEntity 5,5,5)

А если я поставлю .1 везде это будет не змея! Это будет глист, исследуемый под микроскопом!

Данил 07.10.2007 08:38

Re: Змейка
 
Ы, просто поставь в

Цитата:

MoveEntity cube[0], 0 , 0 , -3 :
не -3 (и тому подобное), а -5 или -10. ну как лучше будет. )

Fant 07.10.2007 10:43

Re: Змейка
 
Цитата:

Сообщение от Данил
Ы, просто поставь в



не -3 (и тому подобное), а -5 или -10. ну как лучше будет. )

так тогда скорость увеличится!

Fant 07.10.2007 12:03

Re: Змейка
 
Вообщем мне тут немного помгли с кодом зейки, но не совсем все красиво! Если кто-то найдет ошибку или сможет как-то исправить, то помогите пожалуйста!
Код:

;Eieoeaeecaoey.
Graphics3D 640,480,32,2
Camera = CreateCamera ()
Light = CreateLight ()
SetBuffer BackBuffer()
 
PositionEntity Camera , 0 , 15 ,0
RotateEntity Camera , 60 , 0 , 0
 
Global x[10], y[10], Rotat[10], a , cube[10], i
Global Time
;Nicaaai eoaeee e aaeaai eo ia?aeuiia iiei?aiea.
For i = 0 To 9
Cube[i] = CreateCube ()
PositionEntity Cube[i] , 0 , 0 , 3-(i*3)
EntityColor Cube[i], Rand(255),Rand(255),Rand(255)
Next
 
a=1
Rotat[0] = 1
;---------------
While Not KeyDown (1)
Cls
;Iaiyai aae?aiea aieiau
If KeyDown (200) Then a = 1
If KeyDown (208) Then a= 2
 
If KeyDown (203) Then a = 3
 
If KeyDown (205) Then a = 4
 
If Time < MilliSecs () Then Time = MilliSecs () + 100 : a ()
UpdateWorld ()
RenderWorld ()
b ()
Flip ()
Wend
;a aio e naiia aeaaiia
Function A ()
For i = 0 To 9
x[i] = EntityX (cube[i])
y[i] = EntityZ (cube[i])
Next
For i = 1 To 9
If EntityX (cube[i]) < x[i-1] Then rotat[i] = 4
If EntityX (cube[i]) > x[i-1] Then rotat[i] = 3
If EntityZ (cube[i]) < y[i-1] Then rotat[i] = 1
If EntityZ (cube[i]) > y[i-1] Then rotat[i] = 2
Next
 
Rotat[0] = a
End Function
Function B ()
For i = 0 To 9
Select Rotat[i]
Case 1: MoveEntity cube[i], 0 , 0 , +0.1
Case 2: MoveEntity cube[i], 0 , 0 , -0.1 :
Case 3: MoveEntity cube[i], -0.1 , 0 , 0 :
Case 4: MoveEntity cube[i], +0.1 , 0 , 0 :
End Select
Next
End Function



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

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