Показать сообщение отдельно
Старый 09.04.2007, 12:16   #1
Atomikc
Бывалый
 
Регистрация: 14.12.2006
Сообщений: 811
Написано 93 полезных сообщений
(для 257 пользователей)
Баг при стельбе из турели

Значит, есть у меня авианосец, и на нём 3 турели. У каждой турели 7 анимаций (Взависимости от угла их поворота). Лень было мудиться с вращением . Из каждой турельки вылетают пули. И я нашёл баг. При определённом угле стрельбы не равном 90 градусов вылетает по 2, затем по 3 итд. пули. Помогите кто чем может.
Если стоит не MouseDown(1) а Mousehit(1) то такой проблем не возникает. Но каждый раз нажимат кнопку мышы очень неудобно.
вот код
.....
Type pula
    Field xp#,yp#
    Field image
    Field frame
    Field ide
End Type
......
deletpula =0
Repeat
Cls

If MouseDown(1)
deletpula =1
For id=0 To 2
pula.pula=New pula
pula\xp=100
pula\yp=200
pula\image=LoadAnimImage("pul.png",17,17,0,2)
pula\frame= 3
pula\ide= id

If id=0
pula\xp=pula\xp-32
pula\yp=pula\yp-37
EndIf
If id=1
pula\xp=pula\xp+11
pula\yp=pula\yp-41
EndIf
If id=2
pula\xp=pula\xp+55
pula\yp=pula\yp-44
EndIf

If ka=0 Then pula\frame=0
If ka=1 Then pula\frame=1

If ka=0 Then vx=-10
If ka=1 Then vx=-7.8

If ka=0 Then vy=-5
If ka=1 Then vy=-8
Next

EndIf

For pula.pula = Each pula   
pula\yp=pula\yp+vy
pula\xp=pula\xp+vx
  If pula\yp <= 30
        Delete pula
        deletpula =0
    Else    
    DrawImage(pula\image, pula\xp, pula\yp,pula\frame)

    EndIf
Next
(Offline)
 
Ответить с цитированием