Проверка объекта
| |
Beavisxxi | Дата: Четверг, 18 Августа 2011, 06:13 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Как проверить есть ли между двумя объектами третий? Желательно что бы проверка происходила в одном из крайних объектов..
|
|
| |
миха | Дата: Четверг, 18 Августа 2011, 07:52 | Сообщение # 2 |
почти ветеран
Сейчас нет на сайте
| В одном из крайних объектов, в степ пишешь: Quote if collision_line(x,y,второй_объект.x,второй_объект.y,третий_объект,1,1)>0 и_дальше_что_должно_случиться
Сообщение отредактировал миха - Четверг, 18 Августа 2011, 07:54 |
|
| |
Transced | Дата: Четверг, 18 Августа 2011, 09:51 | Сообщение # 3 |
TransceD = Game Maker
Сейчас нет на сайте
| миха, так а почему >0, может так: Code if collision_line(x,y,второй_объект.x,второй_объект.y,третий_объект,1,1)<0
|
|
| |
Dva_Kota | Дата: Четверг, 18 Августа 2011, 10:24 | Сообщение # 4 |
заслуженный участник
Сейчас нет на сайте
| можно вообще не сравнивать с нолем: если на линии будет третий объект то функция возвращает true
Новый пример инвентаря! /20.06.2012/
Energy Wars
|
|
| |
миха | Дата: Пятница, 19 Августа 2011, 08:37 | Сообщение # 5 |
почти ветеран
Сейчас нет на сайте
| Dva_Kota, спасибо. Если честно не знал.
|
|
| |
SalahAdDin | Дата: Пятница, 19 Августа 2011, 17:58 | Сообщение # 6 |
постоянный участник
Сейчас нет на сайте
| О том что функция возвращает булевые написано в справке. И возвращает она только булевые, либо ложь либо истина. Чем вы читаете?
Фотошоп это не сложно. Немного теории, полезной на практике: Работа с наложением текстур Рисуем без планшета
|
|
| |
миха | Дата: Суббота, 20 Августа 2011, 16:18 | Сообщение # 7 |
почти ветеран
Сейчас нет на сайте
| SalahAdDin, Я НЕ ЧИТАЛ СПРАВКУ!!! Я САМОУЧКА!!!
|
|
| |
SalahAdDin | Дата: Суббота, 20 Августа 2011, 17:42 | Сообщение # 8 |
постоянный участник
Сейчас нет на сайте
| Quote (миха) SalahAdDin, Я НЕ ЧИТАЛ СПРАВКУ!!! Я САМОУЧКА!!! Жаль что буквы нельзя сделать еще больше, м? Ты не самоучка, есть более подходящее слово, за которое, впрочем, меня точно забанят. Тут все самоучки. Тут все, кроме тебя очевидно, учились по справке. Так почему у большинства хватает мозгов прочитать ее а у тебя нет? Это ведь очевидно, да?
Фотошоп это не сложно. Немного теории, полезной на практике: Работа с наложением текстур Рисуем без планшета
|
|
| |
BrightSpot | Дата: Суббота, 20 Августа 2011, 18:23 | Сообщение # 9 |
заслуженный участник
Сейчас нет на сайте
| Quote (SalahAdDin) Тут все, кроме тебя очевидно, учились по справке. Так почему у большинства хватает мозгов прочитать ее а у тебя нет? Это ведь очевидно, да? biggrin слушай булевые значения это те же самые 1 и 0 так смысл тут понты за справку разводить? я к тому времени как справку первый раз открыл уже знал большую часть GML-a! Поэтому каждый имеет выбор как ему учится!
Более мощный компьютер глючит быстрее и точнее.
|
|
| |
SalahAdDin | Дата: Суббота, 20 Августа 2011, 21:42 | Сообщение # 10 |
постоянный участник
Сейчас нет на сайте
| Quote (BrightSpot) слушай булевые значения это те же самые 1 и 0 так смысл тут понты за справку разводить Еще один индус? Ты тоже яичницу в кастрюле жаришь? К слову, ты очень переоцениваешь себя. Можно выучить наизусть все функции из справки, но ничему так и не научиться толком. Ты об этом?
Quote (BrightSpot) Поэтому каждый имеет выбор как ему учится! Попробуй научиться готовить без продуктов, или без посуды и ты поймешь о чем я.
Фотошоп это не сложно. Немного теории, полезной на практике: Работа с наложением текстур Рисуем без планшета
|
|
| |
BrightSpot | Дата: Суббота, 20 Августа 2011, 21:57 | Сообщение # 11 |
заслуженный участник
Сейчас нет на сайте
| Quote (SalahAdDin) Попробуй научиться готовить без продуктов, или без посуды и ты поймешь о чем я. если тема перешла на готовку пищи то разница только в том учится готовить при помощи рецептов(та же справка) или, получая опыт, творить на свое усмотрение! Quote (SalahAdDin) К слову, ты очень переоцениваешь себя Может ты и прав, но я все еще даже половину справки не прочитал и при всем при этом мне не составит труда написать основу под любой жанр игры...
Более мощный компьютер глючит быстрее и точнее.
|
|
| |
SalahAdDin | Дата: Воскресенье, 21 Августа 2011, 01:28 | Сообщение # 12 |
постоянный участник
Сейчас нет на сайте
| Quote (BrightSpot) творить на свое усмотрение! Например селедку в шоколаде, м? Quote (BrightSpot) Может ты и прав, но я все еще даже половину справки не прочитал и при всем при этом мне не составит труда написать основу под любой жанр игры... А я и не говорю что сам вызубрил ее от и до. Просто перед тем (или после того) как что-то написать, я себя проверяю на предмет вот таких глупостей как было оговорено выше. Это очень помогает избежать досадных нелепых ошибок. И не нужно говорить что я не прав. Справка именно для этих целей была написана.
Фотошоп это не сложно. Немного теории, полезной на практике: Работа с наложением текстур Рисуем без планшета
|
|
| |
Йакуд | Дата: Воскресенье, 21 Августа 2011, 01:48 | Сообщение # 13 |
участник
Сейчас нет на сайте
| В ГМ нету булевых переменных! Есть только две константы true и false для более читабельного кода. Они эквивалентны единице и нулю соответственно. Т.е. не имеет значения что сравнивать true|1 или false|0 Но меня всегда поражала такая особенность, что если значение в условии >= 0.5 то возвращается всегда true и условие выполняется. Но если это же значение сравнивать с true, то вернется ложный результат и условие перейдет на следующий этап..
вот простое сравнение Code if(0.5) show_message(1); else show_message(0); В данном случае выведет сообщение 1. Code if(0.5 == true) show_message(1) else show_message(0) А теперь нуль, хотя по идее тут написано практически тоже самое..
"Хороший художник – копирует, гениальный – ворует!" — Pablo Picasso .blanco 2.0
Сообщение отредактировал Йакуд - Воскресенье, 21 Августа 2011, 01:49 |
|
| |
миха | Дата: Воскресенье, 21 Августа 2011, 13:43 | Сообщение # 14 |
почти ветеран
Сейчас нет на сайте
| SalahAdDin, ЛС. BrightSpot, Спасибо за поддержку.
|
|
| |
Saitei | Дата: Воскресенье, 21 Августа 2011, 13:52 | Сообщение # 15 |
старожил
Сейчас нет на сайте
| SalahAdDin, каждый учится как хочет.
Сообщение отредактировал Arz - Воскресенье, 21 Августа 2011, 13:52 |
|
| |
SalahAdDin | Дата: Воскресенье, 21 Августа 2011, 14:58 | Сообщение # 16 |
постоянный участник
Сейчас нет на сайте
| Quote (Йакуд) В ГМ нету булевых переменных! Есть только две константы true и false для более читабельного кода. Они эквивалентны единице и нулю соответственно. Т.е. не имеет значения что сравнивать true|1 или false|0 Но меня всегда поражала такая особенность, что если значение в условии >= 0.5 то возвращается всегда true и условие выполняется. Но если это же значение сравнивать с true, то вернется ложный результат и условие перейдет на следующий этап.. Булевые переменные в гм есть. Точнее да, есть две константы, которые играют роль булевых, и для этого они собственно и присутствуют. Функция выше не может возвращать никаких значений кроме ложь или истина (ноль или единица, без разницы), и уж тем более дробных. А оператор отрицания как ты применишь к дробным? м...? Он может быть примерен только к булевым, то есть ты противоречишь сам себе. А константами это организовано потому, что бы вот такие нубы не пытались вместо сравнения использовать присваивание и ломать и без того хрупкий код в котором они ни бум-бум. Quote (Arz) SalahAdDin, каждый учится как хочет. Нет, каждый учится так как позволяют мозги. Если мозги не позволяют учиться нормально, то закономерно прикрыть глупость хамством, чтобы не выглядеть совсем идиотом, что прекрасно демонстрирует мне в лс Миха.
Фотошоп это не сложно. Немного теории, полезной на практике: Работа с наложением текстур Рисуем без планшета
Сообщение отредактировал SalahAdDin - Воскресенье, 21 Августа 2011, 14:59 |
|
| |
Apati | Дата: Понедельник, 22 Августа 2011, 00:11 | Сообщение # 17 |
заслуженный участник
Сейчас нет на сайте
| Quote (Йакуд) Но меня всегда поражала такая особенность, что если значение в условии >= 0.5 то возвращается всегда true и условие выполняется. Но если это же значение сравнивать с true, то вернется ложный результат и условие перейдет на следующий этап.. Ты же сам сказал, что true - это константа равная единице. Следовательно код Code if(0.5 == true) show_message(1) else show_message(0) будет идентичен Code if(0.5 == 1) show_message(1) else show_message(0) а 0,5 не равно 1, вот и не выполняется условие
|
|
| |
server-doom3 | Дата: Понедельник, 22 Августа 2011, 00:36 | Сообщение # 18 |
001 Worker
Сейчас нет на сайте
| Beavisxxi, слушайте, рекомендую читать туторы!
http://gcup.ru/forum/13-17607-1#289394
|
|
| |
SalahAdDin | Дата: Понедельник, 22 Августа 2011, 08:52 | Сообщение # 19 |
постоянный участник
Сейчас нет на сайте
| Code if(0.5 == 1) show_message(1) else show_message(0) С точки зрения логики это вообще идиотизм. Как можно допустить что выражение (в данном случае это 0.5, что по сути даже не есть выражением) ложно или истинно не имея условия? Значение само по себе просто есть, оно в принципе не может быть ложно или истинно. Неужели какой нибудь язык даст тебе ЭТО скомпилировать? Дробь должна быть результатом выполнения функции. Если результат 0.5 - вернуть истину, иначе - ложь. Так и только так твои дробные будут работать как нужно. Это настолько элементарно, что даже смешно.
Фотошоп это не сложно. Немного теории, полезной на практике: Работа с наложением текстур Рисуем без планшета
|
|
| | |
|