![]() |
|
||||||||||
|
|||||
|
Banned
Регистрация: Sep 2001
Сообщений: 6,162
|
Итак код следующий:
bb=random(7); aa=int(bb); if(aa==0){ aaa._y++ aaa._x-- } else if(aa==1){ aaa._y-- } else if(aa==2){ aaa._y-- aaa._x++ } else if(aa==3){ aaa._x-- } else if(aa==4){ aaa._x++ } else if(aa==5){ aaa._x-- aaa._y++ } else if(aa==6){ aaa._y++ } else if(aa==7){ aaa._y++ aaa._x++ } ааа почему-то всегда движется в левый нижний угол. Почемууу??? Хэлпните плз. ![]() |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
—рандом(7) выдает:
0,1,2,3,4,5,6 то есть else if(aa==7){ в любом случае не работает... и еще замечание: bb = random(7); выдает целое число то есть aa=int(bb); инт() здесь незачем... Последний раз редактировалось Nox Noctis; 07.10.2002 в 02:53. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
и еще (япросто подписал направления):
if (aa == 0) {
// left down
aaa._y++;
aaa._x--;
} else if (aa == 1) {
// up
aaa._y--;
} else if (aa == 2) {
// right up
aaa._y--;
aaa._x++;
} else if (aa == 3) {
// left
aaa._x--;
} else if (aa == 4) {
// right
aaa._x++;
} else if (aa == 5) {
// left down
aaa._x--;
aaa._y++;
} else if (aa == 6) {
// down
aaa._y++;
} else if (aa == 7) {
// right down
aaa._y++;
aaa._x++;
}
то есть это двежение НЕ равновероятно всем остальным... ты я так понял хотел добиться дрожания объекта на одном месте, да ? тогда гораздо проще засечь его начальные координаты и сделать: _y = defaultY + random(2)||-1; _x = defaultX + random(2)||-1; гораздо проще, правда ? :)) |
|
|||||
|
Banned
Регистрация: Sep 2001
Сообщений: 6,162
|
Пасиб
![]() я хотел сделать хатичное движение Чтобы мувик двигался непонятно куда, а он зараза по ему только понятному направлению пошёл ![]() |
|
|||||
|
Banned
Регистрация: Sep 2001
Сообщений: 6,162
|
Блин я сам напорол
![]() if(aa==0){ aaa._y++ aaa._x-- } ведь при нуле у меня подразумевалось движение в верхний левый угол Значит _y-- _x-- |
|
|||||
|
Banned
Регистрация: Sep 2001
Сообщений: 6,162
|
Кстати Noctis не подскажеш как сделать, чтобы мувик плавно летал по всему ролику?
Я что-то не допру никак. Только принцип дальше я сам |
|
|||||
|
Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
|
Давай уясним, что движение в левый нижний угол - это увеличение _У и уменьшение _Х. Правильно?
Теперь рассмотрим твой код, и посчитаем, сколько раз мы заставляем увеличиваться _Х и _У, и сколько раз уменьшаться. Сразу условимся, что этот блок кода else if(aa==7){ aaa._y++ aaa._x++ } ты написал зря, т.к. аа никогда не примет значение 7. (Протрассируй аа для проверки.) Из 7 условий, у тебя 2 увеличения _Х и три уменьшения. И 3 увеличения _У и всего два уменьшения. То есть, ты сам заставляешь постепенно передвигаться "ааа" в левый нижний угол. Удивляться нечему.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный. (S.Wizard) |
|
|||||
|
Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
|
Блин, пока я писал ответ, Nox Noctis уже ответил. И даже переписку завязал. Ну что ж, кто не успел, тот протютюкал.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный. (S.Wizard) |
|
|||||
|
Banned
Регистрация: Sep 2001
Сообщений: 6,162
|
ты не расстраивайся. Я тут ещё вопрос задал. ![]() |
|
|||||
|
Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
|
Успокоил. Тогда получай исходник. Может быть, он тебе поможет. Если тебе достаточно одного объекта, поставь n = 1 и не дублируй МС. Разберешься.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный. (S.Wizard) |
![]() |
Часовой пояс GMT +4, время: 00:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|