Flight
Эта игра будет из себя представлять что-то на подобие gta1-2. Делается она в в blitz 3D(но сама игра 2D). Линии квестов ещё не существует. Проекту очень нужны програмисты и художники.
Управление WASD и стрелочки. вот код игры Код:
Graphics 1366,768,32,1 |
Ответ: Flight
player_angle=atan2(mousex()-playerx,mousey()-playery)
playerx=playerx+cos(player_angle) playery=playery+sin(player_angle) вот вроде без ошибок должно быть дальше думаю сам докуришь и кстати рисовать плеера я думаю надо только один раз Код:
Graphics 1366,768,32,1 |
Я раньше не создавал тему
А как векторное перемещение сделать?(на примере) |
Ответ: Flight
код от Spy4433 не имеет смысла. Человек за мышкой двигаться не должен.
|
Ответ: Flight
ну код от spy4433 имеет смысл т.к направление задается по углу
осталось только пошевелить "МОЗГОМ",а как будешь задавать этот угл неважно от мыши или от клавиш, а может от джостика я так полагаю в итоге должно получится управление как в crimsonland? Код:
if keyhit(UP) then |
Ответ: Flight
в итоге должно получится совсем не так. Нажал вверх, идет вверх, нажал влево, идет влево. Так что угл вообще никого не волнует. Ему векторное перемещение сделать надо.
|
Ответ: Flight
А как сделать так, чтобы гг поворачивался за курсором, но шел на wasd?
|
Ответ: Flight
картинку крутить но это тормзно!
можно сделать так dim player(359) for t=0 to 259 player(t)=loadimage("player.bmp") rotateimage player(t),t next drawimage player(playerangl),playerx,playery |
Ответ: Flight
Тогда будет просто одна картинка ворочаться? И как это прицепить к курсору?
|
Ответ: Flight
что бы узнать угл я писал выше
player_angle=atan2(mousex()-playerx,mousey()-playery) |
Ответ: Flight
Способ логичный, но плохо подходит к применению. Тут вся фишка в MaskImage. Дело в том, что она и так не очень хорошо маскирует цвета в сложных фигурах, а если еще и повернута картинка на 1 градус, то и вовсе кошмар будет. Я сам так делал, правда с у меня на 45 градусов, и вокруг главного героя была незакрашеная территория. Я это пофиксил тем, что маску поставил похожу на задний фон, но тебе это вряд ли подойдет.
Но тебе это еще рано, ты бы векторное перемещение сделал, для начала. И даешь людям демку с блэкджеком и шлюхами! |
Ответ: Flight
В общем я завтра попробую сделать демку. С нормальным перемещением.
|
Ответ: Flight
А шлюхи и блэкджек уже есть?
И можно ли код в оффтоп поставить? Уж больно он места много занимает, мотать не удобно страницу. |
Ответ: Flight
Так, ребята, этому в проектах не место.
|
Ответ: Flight
Почему?
|
Ответ: Flight
Слишком рано запостил.
Обычно проэкты на таких ранних стадиях дохнут как мухи. В профилактичеких целях не рекомендуется создавать тему которая в 85% случаев будет потом пустовать из-за того что проэкт заброшен. |
Ответ: Flight
В проектах лежит то, во что можно играть (ну как минимум есть что запустить/погонять).
|
Ответ: Flight
Graphics 0,0,32,1
SetBuffer BackBuffer() Type player Field x,px,deltax Field y,py,deltay End Type Global dmgC# Global x=100 Global y=100 Global speed#=3 Global zdorov#=100 Global speedc#=5 Global hp100=LoadImage("hp100.bmp") Global hp80=LoadImage("hp80.bmp") Global hp60=LoadImage("hp60.bmp") Global hp40=LoadImage("hp40.bmp") Global hp20=LoadImage("hp20.bmp") Global cursor=LoadImage("cursor.bmp") Global polosa=LoadImage("polosa.bmp") Global Endd=LoadImage("end.bmp") Global player=LoadImage("1.bmp") Global ground=LoadImage ("ground1.bmp") Global house1=LoadImage ("house1.bmp") Global bot=LoadImage("bot.bmp") Global car=LoadImage("car1.bmp") Global cy=Rand(1366) MaskImage hp100,255,255,255 MaskImage hp80,255,255,255 MaskImage hp60,255,255,255 MaskImage hp40,255,255,255 MaskImage hp20,255,255,255 MaskImage player,0,0,10 TileImage ground,0,0,0 Function updateplayer() DrawImage player,x,y MidHandle player DrawImage player,x,y DrawImage ground,0,0 DrawImage house1,300,400 DrawImage car,555,cy f=LoadFont ("courier",40,False,False,False) MaskImage cursor,255,255,255 px=x+speed*deltax py=y+speed*deltay DrawImage player,x,y If x<0 Then x = 1366 If x>1366 Then x = 0 If y<0 Then y = 768 If y>768 Then y = 0 cursorX=MouseX() cursorY=MouseY() DrawImage cursor,MouseX(),MouseY() px=x+speed#*deltax py=y+speed#*deltay If KeyDown(200) Or KeyDown(17) Then y=y-speed EndIf If KeyDown(208) Or KeyDown(31) y=y+speed EndIf If KeyDown(203) Or KeyDown(30) x=x-speed EndIf If KeyDown(205) Or KeyDown(32) x=x+speed EndIf If ImagesCollide(player,x,y,0,car,555,cy,0) Then zdorov#=zdorov#-2 If zdorov#>80 And zdorov#=<100 Then DrawImage hp100,5,5 If zdorov#>60 And zdorov#=<80 Then DrawImage hp80,5,5 If zdorov#>40 And zdorov#=<60 Then DrawImage hp60,5,5 If zdorov#>20 And zdorov#=<40 Then DrawImage hp40,5,5 If zdorov#>0 And zdorov#=<20 Then DrawImage hp20,5,5 If zdorov#<0 Then DrawImage endd,0,0 End Function While Not KeyDown(1) updateplayer() Flip Cls DrawImage polosa,538,83 If 1=1 Then cy=cy+speedc# If cy<0 Then cy = 768 If cy>768 Then cy = 0 If ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=1 If Not ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=5 Wend End |
Ответ: Flight
Не у всех есть Blitz3D чтобы просмотреть игру. А даже если и есть, то, я более чем уверен, у них не будет ресурсов, на которые ссылается код.
|
Ответ: Flight
Вложений: 1
вот первая версия игры. Только есть одна вещь, которая портит вид игры. Это то, что у ГГ справа непонятная полоска, и я не знаю, как ее убрать=(
помогите кто сможет |
Ответ: Flight
Интересно, а как горит код?
|
Ответ: Flight
|
Ответ: Flight
|
Ответ: Flight
Разведённый срач удалён. Жалобная книга для несогласных вы знаете где.
Автору темы: Продолжай, экспериментируй, копи опыт и главное не обращай внимания на тех, кто пытается самоутвердиться принижая тебя. Тот опыт который ты сейчас получаешь - бесценен. Успехов в разработке! По поводу полоски: 1) Попробуй делать MaskImage перед RotateImage 2) TFormFilter поставить 0 перед RotateImage (правда качество изображения будет хуже) |
Ответ: Flight
Опять проблема:( Я хочу сделать выстрел
for pyluaY=1 to5000 pulyaX=Tan (player_ungle)*pulyay drawimage pulya, pulyax, pulyay next... И не работает.подскажите, кто знает |
Ответ: Flight
У тебя сделано так, что пока летит пуля, ни фига больше не происходит. Даже флипа нет (flip), т.е. и drawimage впустую вызывается.
Обновление координат пули должно происходить в общем, главном цикле программы. Вроде: <главный цикл> --<обновляем все, что должно обновляться от пуль, до игрока> --<теперь рисуем все, что должно быть вообще нарисовано в кадре, по порядку> --<flip - вывели кадр на экран> <конец главного цикла, один кадр отрисован, возвращаемся к его началу> P.S. Совет. Русские слова латиницей - ужасно смотрятся в коде, и еще ужаснее читаются. Время на разбирание кода вырастает в разы. Полезная ссылка: http://translate.google.com/ Пуля по английски: bullet Угол игрока: player angle |
Ответ: Flight
нет. я сюда так написал pulya чтобы нагляднее было, а что касается angle - это моя опечатка))
|
Ответ: Flight
Очень нужна моделька дома(типо Пятиэтажки) сверху 2д. Размерами 150 на 440
|
Ответ: Flight
|
Ответ: Flight
Ну да, картинку:)
|
Ответ: Flight
Я хочу сделать, чтобы гг стрелял в сторону курсора, только ничего не получается:( подскажите, кто знает,заранее благодарен
|
Ответ: Flight
Цитата:
Код:
Local fang# = ATan2(MouseY() - player_y, MouseX() - player_x) 2) Зная угол мы можем создавать пули Абстрактно пули у нас такие: Код:
Type TBullet Создавать новую будем так: Код:
Local b.TBullet = New TBullet Код:
Function TBullet_Update() Большая просьба - изучи, подумай как это работает. * мог что-либо напутать. Писал в браузере. На блице давно ничего не писал. |
Ответ: Flight
Да, там наверное не "Eachin", а просто "Each"(на сколько я знаю "Eachin" это в BlitzMax). Но я могу ошибаться, так как сам всегда "Each" пользуюсь.
|
Ответ: Flight
Чет все равно не особо получается
|
Ответ: Flight
Код:
if mousedown(1) then |
Ответ: Flight
Конечно
|
Ответ: Flight
Кидай весь код.
|
Ответ: Flight
Graphics 1366,768,32,1
SetBuffer BackBuffer() Type player Field x,px,deltax Field y,py,deltay End Type Type car Field x,px,deltax Field y,py,deltay End Type Type bullet Field bulletx Field bullety End Type Global bx=140 Global by=100 Global chn=Rnd(4) Global w=LoadImage("w.bmp") Global bullet=LoadImage("shot.bpm") Global dmgC# Global y=100 Global x=100 Global speed#=3 Global zdorov#=100 Global speedc#=5 Global hp100=LoadImage("hp100.bmp") Global hp80=LoadImage("hp80.bmp") Global hp60=LoadImage("hp60.bmp") Global hp40=LoadImage("hp40.bmp") Global hp20=LoadImage("hp20.bmp") Global cursor=LoadImage("cursor.bmp") Global polosa=LoadImage("polosa.bmp") Global Endd=LoadImage("end.bmp") Global player=LoadImage("1.bmp") TFormFilter enable=0 RotateImage player,90 MidHandle player Global ground=LoadImage ("ground1.bmp") Global house1=LoadImage ("house1.bmp") Global house2=LoadImage ("house2.bmp") Global car=LoadImage("car1.bmp") Global cy=Rand(1366) Dim playerg(361) For t=0 To 361 playerg(t)=CopyImage(player) MaskImage playerg(t),0,0,0 RotateImage playerg(t),t Next MaskImage hp100,255,255,255 MaskImage hp80,255,255,255 MaskImage hp60,255,255,255 MaskImage hp40,255,255,255 MaskImage hp20,255,255,255 MaskImage player,0,0,10 TileImage ground,0,0,0 Function updateplayer() player_angle=ATan2(MouseY()-y,MouseX()-x)+180 DrawImage ground,0,0 DrawImage w,700,100 DrawImage house1,300,340 DrawImage house2,750,340 DrawImage house2,-200,340 DrawImage house1,750,340 DrawImage house2,1250,340 DrawImage house2,750,-90 DrawImage house2,950,-90 DrawImage house2,15,-90 DrawImage house2,0,-90 DrawImage car,555,cy MaskImage cursor,255,255,255 px=x+speed*deltax py=y+speed*deltay DrawImage playerg(Int(player_angle)),x,y Text 0,10,player_angle If x<0 Then x = 1366 If x>1366 Then x = 0 If y<0 Then y = 768 If y>768 Then y = 0 cursorX=MouseX() cursorY=MouseY() DrawImage cursor,MouseX(),MouseY() If KeyDown(200) Or KeyDown(17) Then deltay=-1 EndIf If KeyDown(208) Or KeyDown(31) deltay=1 EndIf If KeyDown(203) Or KeyDown(30) deltax=-1 EndIf If KeyDown(205) Or KeyDown(32) deltax=1 EndIf px=x+speed#*deltax py=y+speed#*deltay ;DrawImage house1,300,340 ;DrawImage house2,750,340 ;DrawImage house2,-200,340 ;DrawImage house1,750,340 ;DrawImage house2,1250,340 ;DrawImage house2,750,-90 ;DrawImage house2,950,-90 ;DrawImage house2,15,-90 ;DrawImage house2,0,-90 If Not ImagesCollide (house1,300,340,0,player,px,py,0) x=px y=py EndIf If ImagesCollide(player,x,y,0,car,555,cy,0) Then zdorov#=zdorov#-2 If zdorov#>80 And zdorov#=<100 Then DrawImage hp100,5,5 If zdorov#>60 And zdorov#=<80 Then DrawImage hp80,5,5 If zdorov#>40 And zdorov#=<60 Then DrawImage hp60,5,5 If zdorov#>20 And zdorov#=<40 Then DrawImage hp40,5,5 If zdorov#>0 And zdorov#=<20 Then DrawImage hp20,5,5 If zdorov#<0 Then DrawImage endd,0,0 End Function While Not KeyDown(1) updateplayer() Flip Cls DrawImage polosa,538,83 If 1=1 Then cy=cy+speedc# If cy<0 Then cy = 768 If cy>768 Then cy = 0 If ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=1 If Not ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=5 If MouseDown(1) Then For bullety=1 To 5000 bulletx=Tan(player_angle)*bullety DrawImage bullet,bulletx,bullety Next EndIf Wend |
Ответ: Flight
не знаю, куда это присобачить(((помогите
|
Ответ: Flight
Так ты ведь ничего не вставил. Если кода нету он работать не будет.
|
Ответ: Flight
Graphics 1366,768,32,1
SetBuffer BackBuffer() Type player Field x,px,deltax Field y,py,deltay End Type Type car Field x,px,deltax Field y,py,deltay End Type Type TBullet Field bx#, by#, angle# End Type Function TBullet_Update() For b.TBullet = Each TBullet bx = bx + Cos( b\angle ) * 2 by = by + Sin( b\angle ) * 2 If bx<0 Or bx>GraphicsWidth() Or by<0 Or by>GraphicsHeight() Then Delete b End If Next End Function Function TBullet_Draw() For b.TBullet = Each TBullet Oval(bx - 3, by - 3, 6, 6) Next End Function Global bx=140 Global by=100 Global chn=Rnd(4) Global w=LoadImage("w.bmp") Global Tbullet=LoadImage("shot.bpm") Global dmgC# Global y=100 Global x=100 Global speed#=3 Global zdorov#=100 Global speedc#=5 Global hp100=LoadImage("hp100.bmp") Global hp80=LoadImage("hp80.bmp") Global hp60=LoadImage("hp60.bmp") Global hp40=LoadImage("hp40.bmp") Global hp20=LoadImage("hp20.bmp") Global cursor=LoadImage("cursor.bmp") Global polosa=LoadImage("polosa.bmp") Global Endd=LoadImage("end.bmp") Global player=LoadImage("1.bmp") TFormFilter enable=0 RotateImage player,90 MidHandle player Global ground=LoadImage ("ground1.bmp") Global house1=LoadImage ("house1.bmp") Global house2=LoadImage ("house2.bmp") Global car=LoadImage("car1.bmp") Global cy=Rand(1366) Dim playerg(361) For t=0 To 361 playerg(t)=CopyImage(player) MaskImage playerg(t),0,0,0 RotateImage playerg(t),t Next MaskImage hp100,255,255,255 MaskImage hp80,255,255,255 MaskImage hp60,255,255,255 MaskImage hp40,255,255,255 MaskImage hp20,255,255,255 MaskImage player,0,0,10 TileImage ground,0,0,0 Function updateplayer() player_angle=ATan2(MouseY()-y,MouseX()-x)+180 DrawImage ground,0,0 DrawImage w,700,100 DrawImage house1,300,340 DrawImage house2,750,340 DrawImage house2,-200,340 DrawImage house1,750,340 DrawImage house2,1250,340 DrawImage house2,750,-90 DrawImage house2,950,-90 DrawImage house2,15,-90 DrawImage house2,0,-90 DrawImage car,555,cy MaskImage cursor,255,255,255 px=x+speed*deltax py=y+speed*deltay DrawImage playerg(Int(player_angle)),x,y Text 0,10,player_angle If x<0 Then x = 1366 If x>1366 Then x = 0 If y<0 Then y = 768 If y>768 Then y = 0 cursorX=MouseX() cursorY=MouseY() DrawImage cursor,MouseX(),MouseY() If KeyDown(200) Or KeyDown(17) Then deltay=-1 EndIf If KeyDown(208) Or KeyDown(31) deltay=1 EndIf If KeyDown(203) Or KeyDown(30) deltax=-1 EndIf If KeyDown(205) Or KeyDown(32) deltax=1 EndIf px=x+speed#*deltax py=y+speed#*deltay ;DrawImage house1,300,340 ;DrawImage house2,750,340 ;DrawImage house2,-200,340 ;DrawImage house1,750,340 ;DrawImage house2,1250,340 ;DrawImage house2,750,-90 ;DrawImage house2,950,-90 ;DrawImage house2,15,-90 ;DrawImage house2,0,-90 If Not ImagesCollide (house1,300,340,0,player,px,py,0) x=px y=py EndIf If ImagesCollide(player,x,y,0,car,555,cy,0) Then zdorov#=zdorov#-2 If zdorov#>80 And zdorov#=<100 Then DrawImage hp100,5,5 If zdorov#>60 And zdorov#=<80 Then DrawImage hp80,5,5 If zdorov#>40 And zdorov#=<60 Then DrawImage hp60,5,5 If zdorov#>20 And zdorov#=<40 Then DrawImage hp40,5,5 If zdorov#>0 And zdorov#=<20 Then DrawImage hp20,5,5 If zdorov#<0 Then DrawImage endd,0,0 End Function While Not KeyDown(1) updateplayer() Flip Cls DrawImage polosa,538,83 If 1=1 Then cy=cy+speedc# If cy<0 Then cy = 768 If cy>768 Then cy = 0 If ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=1 If Not ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=5 Local fang# = ATan2(MouseY() - y, MouseX() - x) Local b.TBullet = New TBullet bx = x by = y angle = fang ; If MouseDown(1) Then Tbullet_update() If MouseDown(1) DrawImage tbullet,bx,by Wend - вот как-то так. но не работает. за ошибки не судите строго, я еще начинающий. помогите пожалуйста |
Ответ: Flight
Тут очевидная ошибка. Ты пулю создаёшь просто так. Надо
Код:
Local b.TBullet = New TBullet |
Ответ: Flight
If MouseDown(1) Then
Local b.Tbullet=New Tbullet bx=x by=y angle = fang EndIf Wend |
Ответ: Flight
И ничего
|
Ответ: Flight
Кинь картинки и .bb файл, я посмотрю что не так.
|
Ответ: Flight
Вложений: 1
вот код игры и вложения
|
Ответ: Flight
Вот так:
|
Ответ: Flight
Цитата:
В архиве нет exe) |
Ответ: Flight
Вложений: 1
Вот exe. Думаю, undertaker не против :) .
|
Ответ: Flight
вот вроде все норм пашет
добавил таймер стрельбы добавил таймер для ограничения фпс пометил ошибки Код:
Graphics 1024,768,32,2 |
Ответ: Flight
Вложений: 1
Медленно, бро. Да и тут дельта-тайминг нужен, а не Timer'ы.
|
Ответ: Flight
пока и так сойдет :)
|
Ответ: Flight
Вложений: 1
Накатал пример, который демонстрирует взаимодействие игрока с врагами.
Можно стрелять, ходить, стрелять, умирать :D Управление: WSAD + MOUSE Код:
Graphics(800,600,0,2) |
Ответ: Flight
Надо бы его куда-то в другое место поместить. В FAQ может. Он всем пригодится может, не только нубам.
|
Ответ: Flight
Зачем так резко? Вспомни свои первые посты, к примеру.
Я думаю, нет ни одного программиста, который сразу стал невообразимо крут, минуя стадию новичка. |
Ответ: Flight
Цитата:
|
Ответ: Flight
?Unable to set graphics mode
|
Ответ: Flight
да, и еще,ник, помнишь, ты мне показывал типо "свою" игру? я нашел точно такую же в интернете и врятли ты сам написал, как ее сделать и код
|
Вложений: 1
вот новая версия игры,были добавлены выстрелы.
спасибо за помощь:Randomize,Spy4433:super: Вот она(новая версия) |
Ответ: Flight
Из "своих" игр, у меня только Vivo, но её писал я сам(большую часть, в начале мне очень помогали FireOwl и Nex).
2 FireOwl, я undertaker'a лучше знаю, так что мне позволительно так писать:) Но спорить не буду, все когда-то начинали. 2 undertaker: убери текст под полоской жизни. Плюс, не совсем понятно, что за серые, и более тёмные прямоугольники. Видимо, один из более тёмных это здание, но тогда почему другие - не здания? Либо, это всё здания, но пройти нельзя только через одно. |
Ответ: Flight
Эта игра еще на стадии разработки...а что касается здании, я еще ими не занимался
|
Ответ: Flight
А когда ты собрался исправлять баги, если не сейчас?
|
Ответ: Flight
Graphics 0,0,32,1
SetBuffer BackBuffer() FPS=CreateTimer(60) Type player Field x,px,deltax Field y,py,deltay End Type Type car Field x,px,deltax Field y,py,deltay End Type Type TBullet Field bx#, by#, angle# End Type Function TBullet_Update() For b.TBullet = Each TBullet b\bx = b\bx- Cos( b\angle ) * 15 b\by = b\by -Sin( b\angle ) * 15 If b\bx<0 Or b\bx>GraphicsWidth() Or b\by<0 Or b\by>GraphicsHeight() Then Delete b End If Next End Function Function TBullet_Draw() For b.TBullet = Each TBullet DrawImage bullet,b\bx,b\by Next End Function Global bullet=LoadImage("shot.bmp") Global logo=LoadImage("logo1.bmp") Global pistol1=LoadImage("pistol1.bmp") Global ak471=LoadImage("ak-471.bmp") Global pistolspeed=200000000000000 Global pistol=LoadImage("pistol.bmp") Global ak47=LoadImage ("ak-47.bmp") Global bx=140 Global by=100 Global chn=Rnd(4) Global w=LoadImage("w.bmp") Global Tbullet=LoadImage("shot.bpm") Global dmgC# Global y=100 Global x=100 Global speed#=3 Global zdorov#=100 Global speedc#=5 Global hp100=LoadImage("hp100.bmp") Global hp80=LoadImage("hp80.bmp") Global hp60=LoadImage("hp60.bmp") Global hp40=LoadImage("hp40.bmp") Global hp20=LoadImage("hp20.bmp") Global cursor=LoadImage("cursor.bmp") Global polosa=LoadImage("polosa.bmp") Global Endd=LoadImage("end.bmp") Global player=LoadImage("1.bmp") Global player_angle TFormFilter enable=0 RotateImage player,90 MidHandle player Global ground=LoadImage ("ground1.bmp") Global house1=LoadImage ("house1.bmp") Global house2=LoadImage ("house2.bmp") Global car=LoadImage("car1.bmp") Global cy=Rand(1366) Dim playerg(361) For t=0 To 361 playerg(t)=CopyImage(player) MaskImage playerg(t),0,0,0 RotateImage playerg(t),t Next MaskImage hp100,255,255,255 MaskImage hp80,255,255,255 MaskImage hp60,255,255,255 MaskImage hp40,255,255,255 MaskImage hp20,255,255,255 MaskImage player,0,0,10 TileImage ground,0,0,0 Function updateplayer() player_angle=ATan2(MouseY()-y,MouseX()-x)+180 DrawImage ground,0,0 DrawImage w,700,100 DrawImage house1,300,340 DrawImage house2,750,340 DrawImage house2,-200,340 DrawImage house1,750,340 DrawImage house2,1250,340 MaskImage pistol,255,255,255 MaskImage ak47,255,255,255 MaskImage pistol1,255,255,255 MaskImage ak471,255,255,255 DrawImage car,555,cy MaskImage cursor,255,255,255 If KeyDown(2) Then pistolspeed=500 DrawImage pistol,110,0 If KeyDown(3) Then pistolspeed=100 DrawImage ak47,110,0 px=x+speed*deltax py=y+speed*deltay DrawImage playerg(Int(player_angle)),x,y Text 0,10,player_angle If x<0 Then x=GraphicsWidth() If x>GraphicsWidth() Then x=0 If y<0 Then y=GraphicsHeight() If y>GraphicsHeight() Then y=0 cursorX=MouseX() cursorY=MouseY() DrawImage cursor,MouseX(),MouseY() If KeyDown(200) Or KeyDown(17) Then deltay=-1 EndIf If KeyDown(208) Or KeyDown(31) deltay=1 EndIf If KeyDown(203) Or KeyDown(30) deltax=-1 EndIf If KeyDown(205) Or KeyDown(32) deltax=1 EndIf px=x+speed#*deltax py=y+speed#*deltay DrawImage pistol,110,0 If KeyDown (2) Then DrawImage pistol1,110,0 DrawImage ak47,220,0 If KeyDown (3) Then DrawImage ak471,220,0 If Not ImagesCollide (house1,300,340,0,player,px,py,0) Or ImagesCollide(house2,750,340,0,player,px,py,0) Or ImagesCollide(house2,-200,340,0,player,px,py,0) Or ImagesCollide(house1,750,340,0,player,px,py,0) Or ImagesCollide(house2,1250,340,0,player,px,py,0) Or ImagesCollide(house2,750,-90,0,player,px,py,0) Or ImagesCollide(house2,950,-90,0,player,px,py,0) Then x=px y=py EndIf If ImagesCollide(player,x,y,0,car,555,cy,0) Then zdorov#=zdorov#-2 If zdorov#>80 And zdorov#=<100 Then DrawImage hp100,5,5 If zdorov#>60 And zdorov#=<80 Then DrawImage hp80,5,5 If zdorov#>40 And zdorov#=<60 Then DrawImage hp60,5,5 If zdorov#>20 And zdorov#=<40 Then DrawImage hp40,5,5 If zdorov#>0 And zdorov#=<20 Then DrawImage hp20,5,5 If zdorov#<0 Then DrawImage endd,0,0 End Function While Not KeyDown(1) updateplayer() TBullet_Update() TBullet_Draw() Flip Cls WaitTimer(FPS) DrawImage polosa,538,83 If 1=1 Then cy=cy+speedc# If cy<0 Then cy=GraphicsHeight() If cy>GraphicsHeight() Then cy=0 If ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=1 If Not ImagesCollide(polosa,538,86,0,car,555,cy,0) Then speedc#=5 If KeyDown(2) Then pistolspeed=500 DrawImage pistol,110,0 If KeyDown(3) Then pistolspeed=100 DrawImage ak47,110,0 If MouseDown(1) Then If MilliSecs()>timer_shoot+pistolspeed Then timer_shoot=MilliSecs() Local b.Tbullet=New Tbullet b\bx=x b\by=y b\angle =player_angle+Rnd(-1,1) If ImagesCollide(house1,300,340,0,bullet,b\bx,b\by,0) Then Delete b EndIf EndIf EndIf Wend опять проблема: хотел сделать так, чтобы пули не пролетали сквозь сдания, написал If ImagesCollide(house1,300,340,0,bullet,b\bx,b\by,0) Then Delete b но куда это не "присобачу" не работает(((помогите |
Ответ: Flight
Больше скобок! Три очень мало))))))))))))))))))))
|
Часовой пояс GMT +4, время: 09:48. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot