Поскольку я исповедую модную идею саморазвития как цели в жизни, я вынужден ее придерживаться и постоянно пробовать что-то новое. Это касается и программирования, которым я в последнее время увлекся чересчур серьезно. Ну, правда, не стоит воспринимать мое саморазвитие всерьез, на самом деле я покодил на C# полгодика, что-то понял, мне стало скучно и я решил попробовать Python, и теперь горю желанием высказывать свое чересчур важное и авторитетное впечатление от сего ЯП.
5 2 152
0
20
8 лет назад
Отредактирован Mihahail
0
Я не апологет, но претензии какие-то несерьезные.
Первая: stackoverflow.com/questions/12882317/why-always-add-self-as-firs...
Вторая: зато полиморфизм. Можно писать довольно сильно обобщённый код. Сильно связано с третьей претензией.
Третья: при перегрузке функций выбор подходящей функции осуществляется в компайл-тайм, с помощью проверки типов аргументов функции. Как следствие динамической типизации(тип переменной может меняться в рантайме), выбор из вариантов функций должен происходить в рантайме(как и соответствующие проверки типов, а это оверхед), поэтому классическая перегрузка языкам с динамической типизацией не доступна. Как вариант - есть мультиметоды. Тут явно надо просто изменить мышление, не надо вслепую тащить идеи из таких языков, как С# в питон. Лушче ознакомиться с питоновскими best practices(с помощью stack overflow, например). Там вполне обходятся без перегрузки(которая часто нужна для полиморфизма, который в питоне принято реализовывать иначе).
Хз, лямбда как лямбда. Лично мне не хватает выделения лямбды в коде как отдельной сущности, поэтому я всегда добавляю скобки: f = (lambda x, y: x**2 + y**2)
Итак, "игра за неделю" закончилась.
2 1 131
0
21
8 лет назад
0
Uber, если разрабатывать игру более, чем за неделю, начнет угасать мотвация и желание работать, появится возможность отложить на потом, а облегчение в плане жанра тоже бы плохо сказалось на продуктивности, и получилась бы просто ускоренная раза в полтора разработка небольшой инди-игрушки. По поводу функций - не знаю, в справке их не заметил, и просто записал по формуле.

Забыл упомянуть, что было приятно, что я заинтересовал юзеров своим мини-проектом. Это было очень сильной мотивацией.
0
26
8 лет назад
0
Пусть довести проект до конца так и не удалось
Мне кажется, изначальной целью нужно было ставить именно доведение игры до законченного вида. При этом, стоило выбрать простой жанр - например, аркаду и увеличить срок до двух-трёх недель. А, ну и ещё иметь диздок - это важно.
Попробуй в следующий раз реализовать что-то простое.

» Рандомный код
x += other.sprite_width * cos(degtorad(-direction));
y += other.sprite_width * sin(degtorad(-direction));
Не проще ли было использовать lengthdir_x(len,dir) и lengthdir_y(len,dir)? Они есть в математических функциях.
В последнее время у меня все чаще возникает желание сделать не крупный проект, а что-то довольно небольшое, но цельное и играбельное за минимальные сроки, чтобы проверить свои силы и доказать себе, что с геймдевом у меня все получится. Поэтому я решил поставить перед собой следующую задачу: написать относительно полноценную инди игру за неделю.
13 3 863
0
21
8 лет назад
0
Товарищи, не успеваю сегодня залить последний лог, вдобавок надо исправить пару багов и привести все в более-менее презентабельный вид. Все будет завтра.
0
21
8 лет назад
0
darkowlom, а если препятствия? То есть если отряд стоит в поле, а затем отправляется в узкий коридор - относительная позиция юнитов должна стать другой. Изначально подсчитать, как юниты встанут по прибытию на место, нельзя.
Понять, когда юнит начинает кружить, нельзя, потому что алгоритм встроен в Game Maker и не выкидывает никаких эксепшенов за отсутствием оных. Поэтому я останавливаю всех юнитов, подошедших на достаточное расстояние к остановленному юниту, двигавшемуся в ту же самую точку, что все же является достаточно корявым решением.
0
24
8 лет назад
0
У юнитов есть построение ил рандомно? Тогда такой вариант, найти центр между юнитами и относительно него смещения юнитов, от целевой точки клика отложить каждому юниту его смещение и отправить туда.
Но по идее нужно просто останавливать юнита, когда он начинает кружить
0
21
8 лет назад
0
darkowlom, ну, так я сначала и сделал. Один из юнитов приходит раньше, второй не может попасть в точку, потому что там уже стоит первый, и начинает кружиться вокруг него. Это происходит потому, что второй воспринимает первого как препятствие и пытается обойти.
2 975
1
31
1
ну надо же... я глядя на тебя даже сегодня сел на написания редактора для своей игрули...
впервые за неделю...
чудеса, про другому не скажешь...
0
29
8 лет назад
0
Круто! Молодца, но мне кажется ты выбрал слишком много фишек, которые можно было бы опустить для челенджа)
3 1 275
0
24
8 лет назад
0
ценности жизни каждого отдельно взятого солдата
Оффтоп конечно, но в войнах отдельные жизни не ценят вообще, только цифры и процентное соотношение сил