Дима Гашко, спросить у этого объекта - ты враг? Тобишь bool IsEnemy();
Или спросить его тип как вы и описали, но через енам, а не опускаться до типов данных.
Объясню почему на вашем же примере про врагов и союзников.
У вас может быть класс EnemyArcher, EnemyFighter и EnemyBoss. Все они - враги.
И есть метод (дай бог что один), который проверяет враг ли перед нами сравнивая тип данных с вот этими вот тремя классами.
Потом внезапно вы заводите EnemySorcerer. Вам надо не забыть его прописать в методе определения врагов, и - что самое важное - код вам об этом не напоминает! А если у вас все наследуется от BaseObject, у которого есть абстрактный метод IsEnemy (ну или getType(), возвращающий енам) - то вы не забудете его реализовать - иначе просто не скомпилится.
110021, я этого не писал. Если у вас цель - "писать сайтеги на jS" - учитесь сами. Если хотите погрузиться поглубже - стоит сходить в ВУЗ.
Вообще - у ВСЕХ вузов ОТКРЫТЫЕ программы обучения должны быть - походите по их сайтам и посмотрите что где изучается.
playshik, подойти к другому учителю, который знает.
Понимаете, щас вам могут насоветовать что угодно, но:
- школьная программа есть не зря - вы просто можете не знать/не понять того что посоветуют
- вряд ли многие посетители тостера мониторят что там на егэ
- кучу книг которые можно посоветовать вы не осилите за 2-2,5 месяца
Gokilla, чтобы не моргало - используйте двойную буфферизацию - рисуйте не на окне сразу, а сначала в битмапу, а потом ее одни движением переносите на окно.
Никита Погудалов, пересечения. Если у вас объекты прямоугольники - то это решается просто геометрически - проверкой координат каждого угла относительно углов другого прямоугольника.