diff --git a/CAPI/cpp/API/src/logic.cpp b/CAPI/cpp/API/src/logic.cpp index 8a83e03..799b281 100644 --- a/CAPI/cpp/API/src/logic.cpp +++ b/CAPI/cpp/API/src/logic.cpp @@ -699,6 +699,14 @@ void Logic::LoadBuffer(protobuf::MessageToClient& message) case THUAI6::MessageOfObj::StudentMessage: { bool flag = false; + for (const auto& buff : bufferState->trickerSelf->buff) + if (buff == THUAI6::TrickerBuffType::Clairaudience) + { + flag = true; + bufferState->students.push_back(Proto2THUAI6::Protobuf2THUAI6Student(item.student_message())); + logger->debug("Add Student!"); + break; + } for (int i = 0; i < item.student_message().buff_size(); i++) if (Proto2THUAI6::studentBuffTypeDict[item.student_message().buff(i)] == THUAI6::StudentBuffType::Invisible) { diff --git a/CAPI/python/PyAPI/logic.py b/CAPI/python/PyAPI/logic.py index 205eb95..1db66a7 100644 --- a/CAPI/python/PyAPI/logic.py +++ b/CAPI/python/PyAPI/logic.py @@ -452,6 +452,11 @@ class Logic(ILogic): self.__logger.debug("Add Tricker!") for item in message.obj_message: if item.WhichOneof("message_of_obj") == "student_message": + if THUAI6.TrickerBuffType.Clairaudience in self.__bufferState.self.buff: + self.__bufferState.students.append( + Proto2THUAI6.Protobuf2THUAI6Student(item.student_message)) + self.__logger.debug("Add Student!") + continue if MessageType.STUDENT_INVISIBLE in item.student_message.buff: continue if AssistFunction.HaveView(self.__bufferState.self.viewRange, self.__bufferState.self.x, self.__bufferState.self.y, item.student_message.x, item.student_message.y, self.__bufferState.gameMap):