Мне нужна помощь с изучением синтаксиса.

Tantrixx
Posts: 119
Joined: Sun Nov 22, 2015 11:24 am
My devices: iPhone 5

Re: Мне нужна помощь с изучением синтаксиса.

Post by Tantrixx »

Фант, а как их расставить заранее? Я уже столкнулся с тормозами в программе. А сейчас она вообще после нескольких запусков или маленького изменения зависает. Нужно sB перезагружать несколько раз. Вот ссылка, если не трудно, посмотрите пожалуйста. Это первая большая программа, игра. На которую вроде ума хватает, а опыта и нюансов не хватает.
Там на кур нажимать нужно, чтоб Маша двигалась :)
Может и mr.K посмотрит :) подскажет, как зависание программы sB избежать.
https://www.dropbox.com/sh/ctnsz8712p7y ... 1xAca?dl=0

User avatar
Фант
Posts: 1363
Joined: Sat Nov 30, 2013 10:01 am
My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
Location: Россия,Санкт-Петербург
Flag: Russia
Contact:

Re: Мне нужна помощь с изучением синтаксиса.

Post by Фант »

Ну понятно... Хорошая задумка!)
Код не смотрел, в Ваши навороты вникать не буду.
Сразу скажу одно: сложная механика движения спрайтов здесь вообще не нужна
Мой совет в качестве наводки: вспомните как выглядит экран такой игры типа ну погоди с яйцами когда он не включен. На экране можно заметить отображение всех яиц и всех волков сразу!
Так вот. Здесь на мой взгляд механика должна быть такой же:)

Tantrixx
Posts: 119
Joined: Sun Nov 22, 2015 11:24 am
My devices: iPhone 5

Re: Мне нужна помощь с изучением синтаксиса.

Post by Tantrixx »

То есть все спрайты сразу на экране? С альфа 0? А когда нужно появиться, альфа 1? Я хотел сделать плавное движение яиц :) Я без альфа не знаю, как ещё прятать спрайты.

User avatar
Фант
Posts: 1363
Joined: Sat Nov 30, 2013 10:01 am
My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
Location: Россия,Санкт-Петербург
Flag: Russia
Contact:

Re: Мне нужна помощь с изучением синтаксиса.

Post by Фант »

Tantrixx wrote:То есть все спрайты сразу на экране? С альфа 0? А когда нужно появиться, альфа 1? Я хотел сделать плавное движение яиц :) Я без альфа не знаю, как ещё прятать спрайты.
Я не знаю что лучше: можно с прозрачностью а можно прятать hide-show

Tantrixx
Posts: 119
Joined: Sun Nov 22, 2015 11:24 am
My devices: iPhone 5

Re: Мне нужна помощь с изучением синтаксиса.

Post by Tantrixx »

Hide-show так я и прячу :) с альфа попробовал, все равно зависает. Началось все с создания второго катящегося яйца. При том с прописания координат второго яйца. :shock:

User avatar
Фант
Posts: 1363
Joined: Sat Nov 30, 2013 10:01 am
My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
Location: Россия,Санкт-Петербург
Flag: Russia
Contact:

Re: Мне нужна помощь с изучением синтаксиса.

Post by Фант »

У Вас какаято глобальная ошибка. Alpha или show ни причем

User avatar
Фант
Posts: 1363
Joined: Sat Nov 30, 2013 10:01 am
My devices: iPad 4 (iOS 9.3), iMac (MAC OS 11.03)
Location: Россия,Санкт-Петербург
Flag: Russia
Contact:

Re: Мне нужна помощь с изучением синтаксиса.

Post by Фант »

Вот пример-набрал на коленке :D
МЕХАНИКА ДВИЖЕНИЯ ЯИЦ

Code: Select all

'установочные команды
GRAPHICS
'SET TOOLBAR OFF
PAGE 1 SET
SET ORIENTATION LANDSCAPE
RANDOMIZE
OPTION BASE 1
OPTION ANGLE DEGREES
OPTION TEXT POS CENTRAL
OPTION SPRITE POS CENTRAL
OPTION IMAGE POS CENTRAL
SET LISTS CUSTOM
SET BUTTONS CUSTOM
OPTION SORT DESCENDING
REFRESH OFF
maxx=SCREEN_WIDTH()
maxy=SCREEN_HEIGHT()
kof=maxy/768
kof1=maxx/1024
SHADOW OFFSET 2*.kof,2*.kof

'ввод переменных
c=50*.kof
x(1)=c ! x(2)=maxx-c ! x(3)=c ! x(4)=maxx-c
y(1)=5*c ! y(2)=5*c ! y(3)=10*c ! y(4)=10*c

'графика
FILL COLOR 0,0,1
FILL RECT 3*c,y(1)+20*.kof SIZE 3*c*1.1,10*.kof
FILL RECT 3*c,y(3)+20*.kof SIZE 3*c*1.1,10*.kof
FILL RECT maxx-3*c,y(1)+20*.kof SIZE 3*c*1.1,10*.kof
FILL RECT maxx-3*c,y(3)+20*.kof SIZE 3*c*1.1,10*.kof
REFRESH
FILL COLOR .8,.8,.8

'создаем и размещаем на экране скрытые спрайты
FOR i=1 TO 20
SPRITE i BEGIN 50*.kof,50*.kof
FILL CIRCLE 25*.kof,25*.kof SIZE 25*kof,15*.kof
SPRITE END
ang+=15
k+=1
IF k=1 THEN ! x(1)+=c ! SPRITE i AT x(1)-c/2,y(1) ANGLE ang ! ENDIF 
IF k=2 THEN ! x(2)-=c ! SPRITE i AT x(2)+c/2,y(2) ANGLE ang ! ENDIF 
IF k=3 THEN ! x(3)+=c ! SPRITE i AT x(3)-c/2,y(3) ANGLE ang ! ENDIF 
IF k=4 THEN ! x(4)-=c ! SPRITE i AT x(4)+c/2,y(4) ANGLE ang ! ENDIF
IF k=4 THEN k=0
NEXT i

'установки уровня игры-их необходимо регулировать в главном цикле в зависимости от задач игры
ur=5 'частота появления яиц. с каждым уровнем надо уменьшать на 1.
t=.9 ' определяет скорость движения яиц-постепенно должна уменьшаться.

tim=TIME() 

' главный цикл
LOOP:
GET TOUCH 0 AS xx,yy
IF TIME()>tim+t THEN
FOR i=17 TO 20
SPRITE i HIDE
NEXT i
FOR i=16 TO 1 STEP -1
i$=i
IF SPRITE_VISIBLE (i$)=1 THEN ! SPRITE i HIDE ! SPRITE i+4 SHOW ! ENDIF
NEXT i
tim=TIME()
IF k%ur=0 THEN
sl=RND(4)+1
SPRITE sl SHOW
ENDIF
k+=1
ENDIF 
GOTO LOOP

Tantrixx
Posts: 119
Joined: Sun Nov 22, 2015 11:24 am
My devices: iPhone 5

Re: Мне нужна помощь с изучением синтаксиса.

Post by Tantrixx »

mr.Kibernetik, у меня sB зависает без ошибок при создании программы. Это моя программа виновата?
https://www.dropbox.com/sh/ctnsz8712p7y ... 1xAca?dl=0
Помогите пожалуйста.

User avatar
Mr. Kibernetik
Site Admin
Posts: 4786
Joined: Mon Nov 19, 2012 10:16 pm
My devices: iPhone, iPad, MacBook
Location: Russia
Flag: Russia

Re: Мне нужна помощь с изучением синтаксиса.

Post by Mr. Kibernetik »

Фант wrote:Вот пример-набрал на коленке :D
Вот если бы и на моей коленке можно было набирать код, то айпад можно было бы вовсе не покупать! :D

User avatar
Mr. Kibernetik
Site Admin
Posts: 4786
Joined: Mon Nov 19, 2012 10:16 pm
My devices: iPhone, iPad, MacBook
Location: Russia
Flag: Russia

Re: Мне нужна помощь с изучением синтаксиса.

Post by Mr. Kibernetik »

Tantrixx wrote:mr.Kibernetik, у меня sB зависает без ошибок при создании программы. Это моя программа виновата?
https://www.dropbox.com/sh/ctnsz8712p7y ... 1xAca?dl=0
Помогите пожалуйста.
Пожалуйста подавайте баг-репорты в соответствующем разделе. С четким описанием порядка действий, который приводит к проблеме.
При подаче баг-репорта можно привести самодостаточный пример кода (который можно взять и выполнить), который иллюстрирует проблему smart BASIC. Но код целой программы не может быть иллюстрацией, так как там могут содержаться ваши собственные ошибки, а также команды, не имеющие отношение к проблеме.

Post Reply