|
22.11.2011, 01:01
|
#31
|
Знающий
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений (для 74 пользователей)
|
Ответ: Помогите с LoadAnimImage
Прошу прощения. Но не пойму в чем ошибка. пол часа сидел, думал исправлял. Не получается. Походу это никогда не закончится :D
Graphics 800,600
SetBuffer BackBuffer()
AppTitle "The Big Fighter"
Global x = 300
Global y = 300
Global xm = 400
Global ym = 400
Global frame = 0
Global framel = 0
Global frameTime
Global frametimel
Global nado = 0
Global pein = LoadImage("pein.bmp")
Global peinl = LoadImage("peinl.bmp")
Global mario = LoadImage("mario.bmp")
Global cur = LoadImage("cursor.bmp")
Global pein_run = LoadAnimImage("pein_run.bmp",65,85,frame,3)
Global pein_runl = LoadAnimImage("pein_runl.bmp",65,85,framel,3)
MaskImage mario,0,0,0
MaskImage pein,0,0,0
MaskImage peinl,0,0,0
MaskImage pein_run,0,0,0
MaskImage pein_runl,0,0,0
While Not KeyDown(1)
Cls
DrawImage mario,xm,ym
If nado = 0 Then
DrawImage pein,x,y
EndIf
If nado = 10 Then
DrawImage peinl,x,y
EndIf
DrawImage cur,MouseX(),MouseY()
If KeyDown(200) Then
y = y - 1
EndIf
If KeyDown(208) Then
y = y + 1
EndIf
If KeyDown(203) Then
nado = 3 ; 3 - бежать
If MilliSecs() > frameTime + 100 Then
frameTime = MilliSecs()
framel = ( framel + 1 ) Mod 3; 3 - количество кадров
End If
DrawImage pein_runl, x, y, framel
x = x - 4
Else
nado = 10
EndIf
If KeyDown(205) Then
nado = 1 ; 1 - бежать
If MilliSecs() > frameTimel + 100 Then
frameTimel = MilliSecs()
frame = ( frame + 1 ) Mod 3; 3 - количество кадров
End If
DrawImage pein_run, x, y, frame
x = x + 4
Else
nado = 0 ; 0 - стоять на месте
EndIf
HidePointer
Flip
Wend
End
|
(Offline)
|
|
22.11.2011, 02:45
|
#32
|
Знающий
Регистрация: 06.12.2010
Адрес: Луганск
Сообщений: 252
Написано 112 полезных сообщений (для 166 пользователей)
|
Ответ: Помогите с LoadAnimImage
Я тебе советую вынести HidePointer из цикла, поставь его перед ним.
Сначала подумал что ошибка в блоке If KeyDown(203), но потом понял что у тебя условие If KeyDown(205)... else срабатывает.
подумай про использование команд Select, Const и Function.
__________________
AMD Sempron(tm) 1.41Ггц, 1024МБ ОЗУ, GeForce 6200 128МБ, WinXP SP3.
|
(Offline)
|
|
22.11.2011, 10:19
|
#33
|
Элита
Регистрация: 21.01.2010
Адрес: Россия, Рязанская область, г.Михайлов
Сообщений: 2,067
Написано 1,185 полезных сообщений (для 2,828 пользователей)
|
Ответ: Помогите с LoadAnimImage
If KeyDown(203) Then
nado = 3 ; 3 - бежать
If MilliSecs() > frameTime + 100 Then
frameTime = MilliSecs()
framel = ( framel + 1 ) Mod 3; 3 - количество кадров
End If
DrawImage pein_runl, x, y, framel
x = x - 4
Else
nado = 10
EndIf
If KeyDown(205) Then
nado = 1 ; 1 - бежать
If MilliSecs() > frameTimel + 100 Then
frameTimel = MilliSecs()
frame = ( frame + 1 ) Mod 3; 3 - количество кадров
End If
DrawImage pein_run, x, y, frame
x = x + 4
Else
nado = 0 ; 0 - стоять на месте
EndIf
изменить на
If KeyDown(203) Then
nado = 3 ; 3 - бежать
If MilliSecs() > frameTime + 100 Then
frameTime = MilliSecs()
framel = ( framel + 1 ) Mod 3; 3 - количество кадров
End If
DrawImage pein_runl, x, y, framel
x = x - 4
Else If KeyDown(205) Then
nado = 1 ; 1 - бежать
If MilliSecs() > frameTimel + 100 Then
frameTimel = MilliSecs()
frame = ( frame + 1 ) Mod 3; 3 - количество кадров
End If
DrawImage pein_run, x, y, frame
x = x + 4
Else
if nado = 1
nado = 0 ; 0 - стоять на месте
else if nado = 3
nado = 10
end if
EndIf
Что я сделал? Банально объединил два твоих условия на клавиши 203 и 205. Твоё условие на клавишу 203 попросту не срабатывало из за следующего отдельного от него условия клавиши 205. Банальность, а просидеть над этим можно долго при большом коде(по себе знаю )
зыЖ привыкай сразу структурировать код (хотя бы как у меня, просто каждый подуровень на 4 пробела отодвигать), иначе потом запутаешься в коде из за его нечитаемости.
__________________
Main PC:
Intel Core i5 4260U 1.44 GHz + LPDDR3 1x4096 1600 MHz + Intel HD Graphics 5000.
Asus Ёжик T101-MT:
Intel Atom N-570 1.66 Ghz + DDR2 2x1024 800 Mhz + Intel GMA 3150 128 Mb DDR2
Скачать Doom 2D: Remake v0.3.8a
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.11.2011, 10:30
|
#34
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Помогите с LoadAnimImage
Сообщение от St_AnGer
[code]
зыЖ привыкай сразу структурировать код (хотя бы как у меня, просто каждый подуровень на 4 пробела отодвигать), иначе потом запутаешься в коде из за его нечитаемости.
|
Лучше на 5 нажатием кнопки "Tab".
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.11.2011, 10:32
|
#35
|
Элита
Регистрация: 21.01.2010
Адрес: Россия, Рязанская область, г.Михайлов
Сообщений: 2,067
Написано 1,185 полезных сообщений (для 2,828 пользователей)
|
Ответ: Помогите с LoadAnimImage
Сообщение от Nex
Лучше на 5 нажатием кнопки "Tab".
|
ну я табом и пользуюсь для структурирования. Просто в теге CODE таб не работает, вот на 4 пробела и приходится двигать(поэтому так и написал).
__________________
Main PC:
Intel Core i5 4260U 1.44 GHz + LPDDR3 1x4096 1600 MHz + Intel HD Graphics 5000.
Asus Ёжик T101-MT:
Intel Atom N-570 1.66 Ghz + DDR2 2x1024 800 Mhz + Intel GMA 3150 128 Mb DDR2
Скачать Doom 2D: Remake v0.3.8a
|
(Offline)
|
|
22.11.2011, 23:28
|
#36
|
Знающий
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений (для 74 пользователей)
|
Ответ: Помогите с LoadAnimImage
Из-за чего может появляться оранжевая точка перед спрайтом?
В редакторе открывал изображение, ничего лишнего нету.
|
(Offline)
|
|
22.11.2011, 23:32
|
#37
|
Знающий
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений (для 74 пользователей)
|
Ответ: Помогите с LoadAnimImage
|
(Offline)
|
|
22.11.2011, 23:58
|
#38
|
Элита
Регистрация: 16.01.2008
Сообщений: 1,800
Написано 958 полезных сообщений (для 3,833 пользователей)
|
Ответ: Помогите с LoadAnimImage
Думаю просто конец одного кадра попадает в начало другого...попробуй просмотреть в редакторе изображение поделив его на кадры.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
23.11.2011, 00:28
|
#39
|
Знающий
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений (для 74 пользователей)
|
Ответ: Помогите с LoadAnimImage
Спасибо. помогло
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:10.
|