Вопрос к Фанту, программка про словарные слова - с чего начать?

Flower
Posts: 59
Joined: Sat Feb 07, 2015 12:33 pm
My devices: iPad 3 - у сына,
IPhone 4s,
iPad Air - моя игрушка,
Iwatch 2 - мечтаю ;), может куплю.

Re: Вопрос к Фанту, программка про словарные слова - с чего начать?

Post by Flower »

Решила вместо циклов сделать так:

if button_pressed("и") and a2$="и" then
DRAW IMAGE "tetrad3.jpg" AT xx,150
draw text a3$ at maxx/2,(maxy/2-100)! pause 1
button "дальше" show!
goto 19
endif

if button_pressed("и") and a2$<>"и" then
music 1 play! mistake=mistake+1! goto 150 ! endif

Но вот это второе if срабатывает не всегда, а только с третьего-четвертого нажатия. Что у меня неправильно?

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 Фант »

Для отображения всех графических шрифтов надо делать программу.
К примеру:
graphics
Option base 1
LIST FONTS TO A$,k
button 1 title ">>" at 0,100 size 100,50
loop:
if button_pressed("1") then
If n=k then n=1 else n+=1
graphics clear 0,0,0
draw FONT NAME A$(n)
draw text a$(n) at 0,0
draw text "hello-привет" at 0,50
endif
goto loop

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 Фант »

Flower wrote:Решила вместо циклов сделать так:

if button_pressed("и") and a2$="и" then
DRAW IMAGE "tetrad3.jpg" AT xx,150
draw text a3$ at maxx/2,(maxy/2-100)! pause 1
button "дальше" show!
goto 19
endif

if button_pressed("и") and a2$<>"и" then
music 1 play! mistake=mistake+1! goto 150 ! endif

Но вот это второе if срабатывает не всегда, а только с третьего-четвертого нажатия. Что у меня неправильно?
Мне сложно судить по Вашему приведенному отрывку из кода
Опишите в кратце, что должен делать проблемный кусок кода?

Flower
Posts: 59
Joined: Sat Feb 07, 2015 12:33 pm
My devices: iPad 3 - у сына,
IPhone 4s,
iPad Air - моя игрушка,
Iwatch 2 - мечтаю ;), может куплю.

Re: Вопрос к Фанту, программка про словарные слова - с чего начать?

Post by Flower »

Фант,
Можно Вас попросить посмотреть программу?

https://www.dropbox.com/sh/u6251rxhqoux ... n=39178204

Если ответ на вопрос в программе правильный, то цикл работает, а если ребенок нажимает на неправильную букву, то срабатывает не сразу.

Где у меня ошибка?
Заранее благодарю.

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 Фант »

Code: Select all

music 1 load "gun.mp3"

GRAPHICS ! GRAPHICS CLEAR
SET ORIENTATION 2
OPTION TEXT POS CENTRAL
maxx=screen_width()
maxy=screen_height()
xx=(maxx-512)/2


DRAW IMAGE "tetrad.jpg" AT 0,0 SCALE 2.5

draw color 0.2,0.1,0.5 'цвет шрифта
draw font name "AvenirNextCondensed-Italic"
draw font size maxy/10

draw text "Учим" at maxx/2, 200
draw text "словарные слова и" at maxx/2, 315
draw text "слова с орфограммами" at maxx/2, 430
draw text "4 класс" at maxx/2, 545
pause 3
DRAW IMAGE "tetrad.jpg" AT 0,0 SCALE 2.5
'b'
data "и","е","о","а"
''

begin1: 'начало программы
mistake=0

fill color 0.2,0.7,0.8
fill circle maxx-100,50 size 10
fill circle maxx-70,50 size 10
fill circle maxx-40,50 size 10
fill color 0.2,0.7,0.8
fill rect xx-5,145 to xx+517,150+285-5

button "дальше" title "дальше" at 20,maxy-100 size 500,60

begin2:
'b'
button "и" title "и" at 20,maxy-200 size 200,60
button "е" title "е" at 250,maxy-200 size 200,60
button "о" title "о" at 500,maxy-200 size 200,60
button "а" title "а" at 750,maxy-200 size 200,60
''
File "Slova-slova.txt" Readline a1$, a2$, a3$

if a1$="" then goto 200

draw color 0.2,0.1,0.5 'цвет шрифта

draw font name "AvenirNextCondensed-Italic"
draw font size maxy/10
DRAW IMAGE "tetrad3.jpg" AT xx,150
draw text a1$ at maxx/2,maxy/2-100
button "дальше" hide


loop1:
'b'
restore
for i=1 to 4
read buk$
if button_pressed (buk$) then 15
next i
goto loop1

15 if buk$=a2$ then
DRAW IMAGE "tetrad3.jpg" AT xx,150
draw text a3$ at maxx/2,(maxy/2-100)
pause 1
button "дальше" show
goto 19
else
music 1 play
mistake+=1
 goto 150
endif
''

150
fill color 0.5,0.1,0.1
if mistake=1 then fill circle maxx-100,50 size 10
if mistake=2 then fill circle maxx-70,50 size 10
if mistake=3 then fill circle maxx-40,50 size 10
if mistake=4 then 
draw font size maxy/20
draw color 0,0,0
draw text "слишком много ошибок, начинаем сначала" at maxx/2,50
pause 2
goto begin1
endif
goto loop1

19  
if button_pressed("дальше") then  begin2 else 19

'g'
200
DRAW IMAGE "tetrad.jpg" AT 0,0 SCALE 2.5
draw text "Молодец!" at maxx/2,(maxy/2-100)! 

draw text "всего ошибок:" at maxx/2,maxy/2
draw text mistake at maxx/2+250, maxy/2

button "дальше" hide
'button "выбор урока" title "выбор урока" at 20,maxy-100 size 500,60

if button_pressed("выбор урока") then goto begin1

pause 2
''

Чуть подкорректировал код.
Синим отметил мои исправления.
Как видите цикл получился компактным и сам код заметно разгрузился.
Все теперь должно работать.
При правильном ответе стоит включать звук-к примеру аплодисменты. Ну и звук выстрела наверное для ребенка не очень оптимальный :D но это все на Ваше усмотрение.

Flower
Posts: 59
Joined: Sat Feb 07, 2015 12:33 pm
My devices: iPad 3 - у сына,
IPhone 4s,
iPad Air - моя игрушка,
Iwatch 2 - мечтаю ;), может куплю.

Re: Вопрос к Фанту, программка про словарные слова - с чего начать?

Post by Flower »

Спасибо большое!!!
Как Вы хорошо поправили программу!

Flower
Posts: 59
Joined: Sat Feb 07, 2015 12:33 pm
My devices: iPad 3 - у сына,
IPhone 4s,
iPad Air - моя игрушка,
Iwatch 2 - мечтаю ;), может куплю.

Re: Вопрос к Фанту, программка про словарные слова - с чего начать?

Post by Flower »

Фант, добрый вечер!

Посоветуйте, пожалуйста.
Хочу сделать меню, в котором можно было бы выбрать номер урока.
Планирую сделать десяток кнопок с номерами уроков и к каждой будет свой файл со словами.
И если урок пройден, то кнопка становится зеленого цвета.
Уроки можно проходить в любой последовательности.

1) Как лучше контролировать прохождение урока? Записью в отдельный файл номеров пройденных уроков? Или есть проще решение?

( так как я не понимаю, как работает спрайт и что это такое, мне проще сделать кнопки как я сделала буквы).

2) Извините за глупый вопрос, а меню по выбору уроков и меню общее с описанием программы лучше делать в отдельном файле или в том же самом где и программа?

3) а как можно поменять цвет кнопки? Что-то не могу найти в описании ...

Заранее благодарю за ответ!

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 Фант »

Для меню есть много вариантов.
Это и кнопки, и спрайты, и изображения кнопок, и рисование кнопок. Два последние варианта подразумевают реагирование на нажатие пальцем в определенном месте экрана по координатам х и y.
Два первых варианта программировать проще.
Чем хороши два последних варианта-они практически не требуют нагрузки на оперативную память устройства. Кнопки и спрайты занимают память устройства даже в спрятанном виде (HIDE). Для того чтобы память устройства не перегружать элементы интерфейса и спрайты после использования лучше удалять...
Если бы я делал меню-я бы использовал спрайты. Цвет у спрайтов я бы не менял, а менял бы их прозрачность.
Как вариант: для меню и самой программы можно использовать разные файлы и переходить из одного в другое с помощью команды RUN... Но лично я данные переходы стараюсь не использовать, а всегда все делаю в одном файле: это на Ваше усмотрение.
Прохождение уроков конечно же надо делать через запись в файл-так как подругому информацию после выхода из программы никак не сохранить.
Для замены цвета кнопок Вам потребуется команда описанная в разделе ИНТЕРФЕЙС: SET BUTTONS CUSTOM.
Для замены цвета кнопок Вам прийдется кнопку создавать заново.

Flower
Posts: 59
Joined: Sat Feb 07, 2015 12:33 pm
My devices: iPad 3 - у сына,
IPhone 4s,
iPad Air - моя игрушка,
Iwatch 2 - мечтаю ;), может куплю.

Re: Вопрос к Фанту, программка про словарные слова - с чего начать?

Post by Flower »

Спасибо большое за ответ.
Не поняла как параметры следует задавать в set button custom.

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 Фант »

После того как Вы поместили в код данную команду перед созданием кнопки определяйте цвет заливки fill color r,g,b и цвет пера draw color r,g,b. Это будет соответственно цветом кнопки и цветом текста в ней.

Post Reply