SimsWorld/MessageBasic/entity_operate.h

102 lines
2.7 KiB
C
Raw Normal View History

2025-06-23 16:37:10 +00:00
#pragma once
#include "messagebasic.h"
/// <summary>
/// <20><>ѯϵͳ<CFB5>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT TypesQuery : public AbstractMessage {
TypesQuery();
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
};
/// <summary>
/// <20><><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD>ʵ<EFBFBD><CAB5>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT TypesQueryResult : public AbstractMessage {
QStringList _component_types;
QHash<QString, uint64_t> _entity_templets;
TypesQueryResult();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
enum class EntityOperateType {
NEW, DELETE, MODIFY
};
/// <summary>
/// ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT TempletOperate : public AbstractMessage {
uint64_t _operate_code = (uint64_t)EntityOperateType::NEW;
QString _template_name = "";
uint64_t _template_id_within_0x2ff_0xffff = 0x2ff;
TempletOperate();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// ʵ<><EFBFBD><E5B9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT EntityOperate : public AbstractMessage {
uint64_t _operate_code = (uint64_t)EntityOperateType::NEW;
QString _template_name = "";
QString _entity_name = "";
uint64_t _entity_id_over_0xffff = 0xffff;
EntityOperate();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// <20><>ָ<EFBFBD><D6B8>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><D0B2><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT ComponentOperate : public AbstractMessage {
uint64_t _entity_id_within_0x2ff_0xffffffffffffffff = 0x2ff;
QStringList _component_types;
ComponentOperate();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT EntityTotalGet : public AbstractMessage {
EntityTotalGet();
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
};
/// <summary>
/// <20><><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD>б<EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT EntityTotalList : public AbstractMessage {
QList<uint64_t> _entities_list;
EntityTotalList();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};