diff --git a/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.cpp b/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.cpp index b05f27ff0..e48d8f0ff 100644 --- a/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.cpp +++ b/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.cpp @@ -127,4 +127,9 @@ bool CCameraAnimationManager::parseCameraAnimations(const IPrimitive* prim, cons } return ok; } +} + +void CCameraAnimationManager::sendAnimation(const NLMISC::CEntityId& eid, const std::string& _AnimationName) +{ + } \ No newline at end of file diff --git a/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.h b/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.h index 009b25d95..cf9240471 100644 --- a/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.h +++ b/code/ryzom/server/src/entities_game_service/camera_animation_manager/camera_animation_manager.h @@ -20,6 +20,7 @@ #include "nel/ligo/primitive.h" #include #include "camera_animation_manager/camera_animation_step_factory.h" +#include "nel/misc/entity_id.h" /************************************************************************/ /* Class that manages the camera animations. (singleton). @@ -41,6 +42,9 @@ public: /// Releases the animations static void release(); + /// Function that sends all the instructions of a camera animation to the specified entity + void sendAnimation(const NLMISC::CEntityId& eid, const std::string& _AnimationName); + private: /// Constructor CCameraAnimationManager(); diff --git a/code/ryzom/server/src/entities_game_service/mission_manager/mission_action.cpp b/code/ryzom/server/src/entities_game_service/mission_manager/mission_action.cpp index dcf3045ca..f6c934403 100644 --- a/code/ryzom/server/src/entities_game_service/mission_manager/mission_action.cpp +++ b/code/ryzom/server/src/entities_game_service/mission_manager/mission_action.cpp @@ -56,6 +56,7 @@ #include "shop_type/named_items.h" #include "server_share/log_item_gen.h" #include "server_share/log_character_gen.h" +#include "camera_animation_manager/camera_animation_manager.h" using namespace std; using namespace NLMISC; @@ -5422,6 +5423,16 @@ class CMissionActionCameraAnimation : public IMissionAction LOGMISSIONACTION("camera_animation"); // We tell the client to play the animation by sending him the animation steps + std::vector entities; + instance->getEntities(entities); + // For all entities that do this mission + for (uint i = 0; i < entities.size(); i++) + { + // We send the message + CEntityId eid = TheDataset.getEntityId(entities[i]); + + CCameraAnimationManager::getInstance()->sendAnimation(eid, _AnimationName); + } }; std::string _AnimationName;