Boss update - #146
Conversation
PGSStas
left a comment
There was a problem hiding this comment.
В целом, у меня огромный вопрос по поводу того, почему мы не делаем отдельный класс, который наследуется от Enemy. Это - 3000 костылей в одном месте. Согласен, это добавит 1000 в другом, но мы тогда сможем делать много разных боссов без дополнительных костылей.
|
|
||
|
|
||
| qt5_add_big_resources(SOURCES database.qrc music.qrc images.qrc) | ||
| #qt5_add_big_resources(SOURCES database.qrc music.qrc images.qrc) |
|
|
||
| void Controller::TickEnemies() { | ||
| bool boss_is_alive = false; | ||
| int start_boss_music = -1; |
There was a problem hiding this comment.
Хм. Это все равно выглядит как костыль. Может просто сделать enum с аудио-дорожками?
| } | ||
| start_boss_music = enemy->GetBossMusicId(); | ||
| if (enemy->IsTowerKiller()) { | ||
| KillTowerByEnemy(enemy.get()); |
There was a problem hiding this comment.
Можешь плиз объяснить, как это работает. И зачем тебе указывать, кто убивает башню?
| if (enemy->GetPosition().GetVectorTo(base->GetPosition()).GetLength() | ||
| < 200) { | ||
| if (enemy->GetSize().width > base->GetSize().width-30) { | ||
| enemy->SetSize(enemy->GetSize() *= 0.995); |
There was a problem hiding this comment.
Выглядит забавно, но что будет если они назад отходить будут (что мне до сих пор не нравится)?
| return current_game_time_; | ||
| } | ||
|
|
||
| #include "qdebug.h" |
| if (is_boss_) { | ||
| position_ += Size(size_.width / 6, -size_.width / 6); | ||
| } | ||
|
|
| } | ||
|
|
||
| void Enemy::Breed() { | ||
| times_to_breed_--; |
| { | ||
| new_health["size_attitude"].toObject()["size_x_multi"].toDouble(), | ||
| new_health["size_attitude"].toObject()["size_y_multi"].toDouble() | ||
| }, |
| auto new_health = special["bigger_health_bar"].toObject(); | ||
| id_to_enemy_.back().SetBigHealth( | ||
| { | ||
| new_health["size_attitude"].toObject()["size_x_multi"].toDouble(), |
There was a problem hiding this comment.
Вытащи объект. Ты к нему 2 раза обращаешься. И назови в json их нормально, а не size_x_multi.
| kTitlesMusic, | ||
|
|
||
| // Need to be last -> | ||
| kEpicBossMusic |
There was a problem hiding this comment.
Может просто присвоишь им номера? 100, 200, 1337. Чтобы не нужно было делать этих пометок диких.
Сделал босса менее костыльным.
Добавлены типа якоря для врагов
Добавлены свойства для врага:
breeder - разделяльщик при смерти
tower_killer - убиватель башен
boss_music - музыка которая сопровождает юнита
bigger_health_bar - увеличивает размеры хелс бара