|
Когда писал про простые числа, имел в виду, что не надо под тип невидимости и под тип детектора выделять один байт, значения которого: 1- невидимка типа1, 2 - невидимка типа 2, 3 - невидимка типа 3 и так далее. Либо битовая маска (как в твоём примере), либо раздельные параметры. Важно, чтобы они сочетались между собой.
А мины. Разница между морскими и наземными только в том, что они имеют разную графику и разные id, например для апгрейда. То есть они раздельно апгрейдятся. Других отличий нет. То есть можно ввести абстракцию - мина. Если минёр бросает мину, то проверить, что под ним, если море - мина морская (атрибут мина + уровень на поверхности), если суша - мина сухопутная (атрибут мина + уровень под водой). Вместо атрибута минёр я бы ввёл оружие - мина. Хотя это не принципиально. Укладка мин больше на строительство похожа, так что тут ближе строимый минёром :) |
|