Notpetrovich / BEA

0 stars 0 forks source link

ТЗ по классу живого объекта #5

Open Dawnia opened 3 years ago

Dawnia commented 3 years ago

Атрибуты: Хитбоксы -- список из координат х, у верхнего левого угла относительно self.x и self.y, а также протяжённостей по иксу и по игреку параметр самого объекта: hitbox параметр области интеракции: damage_hitbox СПИСОК изменений, запрашиваемых активным объектом. Порядок должен быть такой: изменение по иксу, изменение по игреку, атака (количество урона), интеракция (только у объекта игрока может быть трушной, у всех прочих по умолчанию ложь) deltas = [delta_x, delta_y, attack, interaction] Прочие параметры: health_points -- здоровье (у всего живого оно есть) experience_points -- очки опыта (только у игрока) damage -- урон, да (тоже у всех) exp_plus -- прибавка к опыту за убийство (у всех, кроме игрока) mode -- состояние пассивных объектов, с которыми можно взаимодействовать

Методы: image_self() -- объект изменяет (перемещает, перерисовывает, что угодно) себя по своим параметрам (ничего не принимает)

Идея в том, что объект запрашивает изменения своих параметров, передавая их (изменения) в свой список deltas, а с каждым обновлением мир видит эти пожелания и исполняет или не исполняет их с учётом жизни прочих объектов. Затем мир заставляет объект отобразить себя image_self`ом с учётом изменений, которые мир внесёт в собственные параметры объекта