Секрет в Visual Basic IDE

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 06.07.2006 (Чт) 18:55

Я тут просто промазал и не туда запостил.

http://bbs.vbstreets.ru/viewtopic.php?p=6617138#6617138
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 06.07.2006 (Чт) 19:13

Пару замечаний:

- кубики улетают слишком далеко вверх
- музыка не повторяется
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 06.07.2006 (Чт) 19:20

насчёт музыки - это не ко мне.

на счёт высоты - дай скриншот. У меня всё нормально (там от быстодейств. компа зависет)
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 06.07.2006 (Чт) 20:04

- А к кому?

- Скриншот:

Изображение

Проверил - высота соответствует оригиналу.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 06.07.2006 (Чт) 20:22

Кубики не совсем правильно летают... Например, жёлтый должен прилетать строго снизу.
Кроме того, у тебя они совсем не разлетаются, а должны...


Оффтоп: гуглил Крокодилушку, нашёл вот это :lol: :lol:
Изображение

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 06.07.2006 (Чт) 20:56

Добавил:

- повторение музыки
- управление скоростью через стрелки
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 06.07.2006 (Чт) 21:00

BV злой, Крокодилушку удалил :cry:
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 07.07.2006 (Пт) 6:36

Я не видел чтоб кубики разлетались :shock: .

У меня они не разлетаются...

На счёт того что кубики должны правильно слетаться:

Тут всё от того что ты сделал вращение камеры вокруг кубиков, а в оригинальном примере - кубики вращаются вокруг ребра, которое ближе к центру (точке) их сближения. Поэтому получилось слегка не так.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 07.07.2006 (Пт) 7:54

Вот. Исправил багу в регулировке скорости (скорость неба не менялась) и напридумывал стихов :lol:

Во-первых считаю что Донецские товарищи уже точно поняли что на VB это возможно.

Во-вторых, я обнаружил что все кто берутся за это яйцо добавляют в него какой-нибудь свой класс. Вот я думаю - а что бы мне такого добавить... может быть класс для открывания/закрывания CD под ритм музыки :lol:
Вложения
Cubes_By_SLS_Hacker.rar
.
(26.55 Кб) Скачиваний: 96
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 07.07.2006 (Пт) 7:57

В конце текста -- разлетаются, потом слетаются обратно. Надо так же.

Вместо применения sVertMovement к каждому из восьми зетов, можно было применить его только к vp.dy, и амплитуду соответственно подстроить ;-)

Сейчас, значит, закручу кубики вокруг ребра, чтобы у тебя не было повода к лени :-)
Последний раз редактировалось tyomitch 07.07.2006 (Пт) 8:20, всего редактировалось 2 раз(а).
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 07.07.2006 (Пт) 8:00

tyomitch писал(а):В конце текста -- разлетаются, потом слетаются обратно. Надо так же.

Никогда не досматривал до конца :oops:

tyomitch писал(а):Вместо применения sVertMovement к каждому из восьми зетов, можно было применить его только к vp.dy, и амплитуду соответственно подстроить ;-)


Т.е. ты имеешь ввиду поднимать опускать камеры/viewport?

tyomitch писал(а):Сейчас, значит, закручу кубики вокруг ребра, чтобы у тебя не было повода к лени :-)

Давай
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 07.07.2006 (Пт) 8:11

1) позор ;-)
2) нет, это просто сдвиг картинки в пространстве экрана

Добавка: регулировка скорости у вас тоже кривая :-(
Надо, чтобы скорость менялась от полной остановки до некоторого предела, а не от "совсем медленно" до бесконечности. И чтобы на втором снизу значении текст стоял, а кубики летали -- как в оригинале.
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 07.07.2006 (Пт) 8:54

Хакер писал(а):
tyomitch писал(а):Сейчас, значит, закручу кубики вокруг ребра, чтобы у тебя не было повода к лени :-)

Давай

Закрутил: они начали друг на друга наезжать, что было вполне предсказуемо :-(
Что сделать?


В общем, оставил как было с вращающейся камерой.
Свойство angle у кубика должно дать тебе большую свободу в действиях :-)
Попутно убрал класс clsMedia, кривую регулировку скорости, кривое слетание, и всё остальное, что попало под руку :-)
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 07.07.2006 (Пт) 9:53

Добавил возможность произвольно растягивать форму.
Будет скринсейвером :-))
Вложения
Boxes.rar
(21.61 Кб) Скачиваний: 98
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 07.07.2006 (Пт) 10:03

tyomitch вот, попозись пока, с резкостью перехода между стадиями.

А я ушёл... час меня не будет. Потом 2 часа буду. Потом будем заполнять базу - т.е. мне будет некогда :cry:
Вложения
Kubike_bv.rar
Djn cj,cndtyyj ujdjhz...
(26.76 Кб) Скачиваний: 129
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 07.07.2006 (Пт) 13:41

Посмотрим :)

Ну вот... В оригинале скорость фона НЕ изменяется. Изменяется скорость вращения кубиков, и скорость движения текста. Собственно, я так и сделал - кто всё это испортил?

Добавленно позже:

tyomitch писал(а):Попутно убрал класс clsMedia, кривую регулировку скорости


Месть за "текст"?
Регулировка скорости не кривая - достаточно изменить шаг с 0.02 на, например, 0.05 а нижний предел указать как 0.
Вот чем тебе clsMedia не угодил - не знаю.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Сообщение --=GAMER=-- » 07.07.2006 (Пт) 14:06

Будет скринсейвером


А Это Неплохая Идея!
Думаю "докрутить" можно :P
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

AjaxVS
Постоялец
Постоялец
 
Сообщения: 506
Зарегистрирован: 01.12.2004 (Ср) 13:12
Откуда: Donetsk, Battle.Net

Сообщение AjaxVS » 07.07.2006 (Пт) 22:01

Донецкие товарищи скажут, что это супер круто и вообще нереально +_+ Признаю ваш талант и во веки веков.. Жаль только, что мои условия не были выполнены до конца (ведь проект юзает API из gdi32, user32) =( Чем тогда этот код будет отличаться от Сишного? Синтаксисом и компилятором?..

Ну а вообще, я думаю, такие "яйца" теперь буду вставлять и в свои проги. Возможно, вместо "About".

ЗЫ. Как проигравший - выставляюсь +_+ Раз тут пошла речь о скринсейверах, вылаживаю один из своих любимых. Если видели уже - ногами не бить. Не видели и хотите еще - маякните, у меня еще с десяток подобных есть.
Вложения
dx_world_demo (11).zip
(48.88 Кб) Скачиваний: 102

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.07.2006 (Сб) 3:23

AjaxVS писал(а):Жаль только, что мои условия не были выполнены до конца (ведь проект юзает API из gdi32, user32) =(

Запрет был только на DX и флеш, разве не так?

AjaxVS писал(а):Чем тогда этот код будет отличаться от Сишного? Синтаксисом и компилятором?..

Угу. Цель была именно в том, чтобы показать, что когда руки некривые, язык не имеет значения.

Собственно, а чем вообще отличается Си от VB, кроме синтаксиса и компилятора? :-)
Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.07.2006 (Сб) 4:21

BV писал(а):Ну вот... В оригинале скорость фона НЕ изменяется. Изменяется скорость вращения кубиков, и скорость движения текста.

Там зато фон можно совсем остановить.
Изображение

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 08.07.2006 (Сб) 4:49

Можно.

Ладно. Сегодня днём доделаю.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 08.07.2006 (Сб) 9:03

AjaxVS
А на ВиБи весч написать?
[Место cдаётся]

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 08.07.2006 (Сб) 17:46

Как и обещал - доработал контроль скорости. С одним НО. Изменения в анимацию "разлетания/слёта" кубиков вводить не решился - она работает как-то криво. Так что оставляю эту часть на Хакер'а.

Да, я заодно заменил TextBox загрузкой текста из файла.
Вложения
Cubes_VBST.rar
(52.4 Кб) Скачиваний: 109
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.07.2006 (Сб) 22:15

Ещё пара пояснений:
1) Вертикальный сдвиг по Sin((VBA.Timer) позволяет, ритмично меняя скорость, отправить кубики выше верха формы. И вообще, зачем на VBA.Timer смотреть? В качестве счётчика angle прекрасно подходит.
2) В оригинале есть такая скорость, на которой фон и кубики ездят, а текст стоит. У BV такого нет.
3) В оригинале последняя скорость медленнее, чем у BV. Легко поставить рядом обе формы, и сравнить.
Слёт-разлёт, действительно, кривой. Если дойдут руки, погляжу в чём дело.
Изображение

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 08.07.2006 (Сб) 22:51

2 и 3 - всё решается подбором значений:

Код: Выделить всё
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
        Case vbKeyUp
            If bSpeedCoef < 5 Then bSpeedCoef = bSpeedCoef + 1
            If sngACoef < 0.12 Then sngACoef = sngACoef + 0.02
        Case vbKeyDown
            If bSpeedCoef >= 1 Then bSpeedCoef = bSpeedCoef - 1
            If sngACoef >= 0.02 Then sngACoef = sngACoef - 0.02
    End Select
End Sub


И начальной скоростью текста:

Код: Выделить всё
Private Sub Form_Load()
    bSpeedCoef = 1
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.07.2006 (Сб) 23:43

2) не решено
3) теперь на последней скорости текст обгоняет оригинальный, а кубики не догоняют.

Кроме прочего, скоростей должно быть 6, а после исправления их 7 (перед исправлением не считал)
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 08.07.2006 (Сб) 23:48

Эх tyomitch кто тебя учил так объекты называть... я когда твой пример модифицировал - 2 часа не мог понять почему Timer возвращет не число а True.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.07.2006 (Сб) 23:54

Хакер, ты просто не смотрел, как названы переменные в Box.render ;-)
Изображение

Пред.

Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 35

    TopList