Game Maker - создание игр | HellRoom Games

Game Maker | GameMaker: Studio [Game-Maker.ru] => Примеры, библиотеки, статьи, уроки, дополнения => Тема начата: Drago от Июнь 03, 2012, 18:41:10



Название: Пример кода подтверждения
Отправлено: Drago от Июнь 03, 2012, 18:41:10
Всем доброго времени суток
Вот я решил показать свои знания по Game Maker Language. Хочу чему то научить новичков своими знаниями. :xD:
Итак приступим:
Создаем объект obj_code и в событии Create  пишим:
Код:
//Объявляем переменную которая случайно выбирает число от 0 до 9.
n1 = choose(1,2,3,4,5,6,7,8,9,0);
n2 = choose(0,9,8,7,6,5,4,3,2,1);
n3 = choose(8,7,6,9,0,1,3,2,4,5);
n4 = choose(5,4,2,3,1,0,9,6,7,8);
n5 = choose(2,3,1,4,6,5,7,8,9,0);
n = string(n1)+string(n2)+string(n3)+
    string(n4)+string(n5);
code = get_string(n,''); //Код который мы будем вводить.
Потом в Step:
Код:
if code = n {show_message('True code!') game_end()}
else {show_message('False code!') game_end()}
/*Если код равняется переменной n то показываем сообщение о том,
что код правильный и заканчиваем игру, иначе код не правильный
то показываем сообщение о том, что код не правильный и
заканчиваем игру.*/
Если прописать не game_end()game_restart() то будет сложно закончить процесс программы.
Создаем комнату, ставим размеры 320 на 240 потому, что больше не понадобится. sm:)
Помешаем объект в комнату и запускаем. Все! Любуемся результатом. sm:7
P.S. Не судите строго - это моя первая статья.


Название: Re: Пример кода подтверждения
Отправлено: RPRTR258 от Июнь 03, 2012, 18:49:48
1. Непр. тема(назв. и раздел)
2. 1код можно упростить:
n1=irandom(9)
...

Добавлено: Июнь 03, 2012, 18:51:11
3. Спорим ты никогда не угодаеш этот код? ;)

Добавлено: Июнь 03, 2012, 18:52:11
Хотя...


Название: Re: Пример кода подтверждения
Отправлено: UncleDec от Июнь 03, 2012, 18:55:36
1. Непр. тема(назв. и раздел)
2. 1код можно упростить:
n1=random(9)

1) Правильное название и раздел.
2)

Код:
n1 = irandom_range(0, 9)

R2D2,  :facepalm_2:

И вообще можно было бы не создавать переменные n1, n2, n3, ..., а про занести всё в массив.


Название: Re: Пример кода подтверждения
Отправлено: Drago от Июнь 03, 2012, 18:58:52
Decoy, расскажите подробнее... Как занести все в массив? На будущие :xD:


Название: Re: Пример кода подтверждения
Отправлено: UncleDec от Июнь 03, 2012, 19:00:36
Код:
for(i = 1; i < 6; i += 1)
{
n[i] = irandom_range(0, 9)
}


Название: Re: Пример кода подтверждения
Отправлено: Nick от Июнь 03, 2012, 19:03:36
Зачем эта "каптча" вообще нужна на гм? Да и это же текст, можно сделать бота, который бы работал вместо пользователя.


Название: Re: Пример кода подтверждения
Отправлено: Drago от Июнь 03, 2012, 19:05:31
Nick, а вдруг кто то чат делает! И он не хочет что бы на его чате спамили! sm_sad
Мало ли... Может кому то для общего развития! :xD:


Название: Re: Пример кода подтверждения
Отправлено: RPRTR258 от Июнь 03, 2012, 19:09:04
2. 1код можно упростить:
n1=random(9)
2)
Код:
n1 = irandom_range(0, 9)
R2D2,  :facepalm_2:
Дэкой,  sm_fool
Какая разница?


Название: Re: Пример кода подтверждения
Отправлено: UncleDec от Июнь 03, 2012, 19:09:38
Потому что 0 не учитывается + random() генерирует нецелые числа.


Название: Re: Пример кода подтверждения
Отправлено: RPRTR258 от Июнь 03, 2012, 19:13:06
А код получения кода можно заменить на:
Код:
n=''
for(i=1;i<7;i+=1)
{
n+=execute_string('n'+string(i))
}

Добавлено: Июнь 03, 2012, 19:21:00
Можно усе заменить на:
Create:
length=7
for(i=1;i<length;i+=1}
{
n=irandom(9)
}
n=''
for(i=1;i<length;i+=1)
{
n+=string(n)
}