From 63a377cf0b953083d8e5e26d4da465ad41763fe1 Mon Sep 17 00:00:00 2001 From: Alayan Date: Sat, 22 Sep 2018 16:22:52 +0200 Subject: [PATCH] Tell the AI to not gift free nitro cans when a switch is active --- src/items/item_manager.hpp | 1 + src/karts/controller/skidding_ai.cpp | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/items/item_manager.hpp b/src/items/item_manager.hpp index 83f5f9a9e..8c96e4951 100644 --- a/src/items/item_manager.hpp +++ b/src/items/item_manager.hpp @@ -135,6 +135,7 @@ public: void reset (); virtual void collectedItem (Item *item, AbstractKart *kart); void switchItems (); + bool areItemSwitched() { return (m_switch_ticks > 0); } bool randomItemsForArena(const AlignedArray& pos); // ------------------------------------------------------------------------ /** Only used in the NetworkItemManager. */ diff --git a/src/karts/controller/skidding_ai.cpp b/src/karts/controller/skidding_ai.cpp index a6e5bc03a..9780e5fca 100644 --- a/src/karts/controller/skidding_ai.cpp +++ b/src/karts/controller/skidding_ai.cpp @@ -1424,7 +1424,8 @@ void SkiddingAI::handleBubblegum(int item_skill, const std::vector if (abs_angle < 0.2f) straight_behind = true; } - if(m_distance_behind < 8.0f && straight_behind ) + if(m_distance_behind < 8.0f && straight_behind && + (!ItemManager::get()->areItemSwitched() || item_skill < 4)) { m_controls->setFire(true); m_controls->setLookBack(true);