elemPropertyData.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. #ifndef ELEMPROPERTYDATA_H
  2. #define ELEMPROPERTYDATA_H
  3. #include <QString>
  4. #include <QVector>
  5. #include <QMap>
  6. class ElemPropertyData
  7. {
  8. public:
  9. ElemPropertyData();
  10. //基础属性
  11. QString labelName;
  12. QString size;
  13. QString maxLayer;
  14. QString score;
  15. int dropConfig;
  16. QString iconPath;
  17. //状态与效果动画
  18. struct StatusEffect{
  19. QString name;
  20. QString res;
  21. QString timeline;
  22. QString zOrder;
  23. };
  24. QVector<StatusEffect> statusEffect;
  25. //收集动画
  26. struct CollAnim{
  27. QString name;
  28. QString type;
  29. QString anim;
  30. QString node;
  31. QString shadow;
  32. };
  33. QVector<CollAnim> collAnim;
  34. // 状态配置
  35. // 事件配置
  36. struct EventConfig{
  37. QString name;
  38. bool consisColor;
  39. int changeMagnitude;
  40. QString specialEffect;
  41. bool elimATLattices;
  42. QString triggerAction;
  43. };
  44. struct StatusConfig{
  45. QString statusValue;
  46. QString initAnim;
  47. QString clickAnim;
  48. bool multiHit;
  49. bool dropable;
  50. bool needCollect;
  51. QString collTargetType;
  52. QString collAnim;
  53. QVector<EventConfig> eventConfig;
  54. };
  55. QVector<StatusConfig> statusConfig;
  56. // 容器
  57. struct ContainTable{
  58. QString key;
  59. QString res;
  60. QString initTimeline;
  61. QString clickTimeline;
  62. QString effectTimeline;
  63. QString vanishTimeline;
  64. QString zOrder;
  65. };
  66. struct ContainerConfig{
  67. QString poolName;
  68. QString type;
  69. QVector<ContainTable> table;
  70. };
  71. QVector<ContainerConfig> container;
  72. struct ChildElem{
  73. QString name;
  74. QString container;
  75. };
  76. QVector<ChildElem> childElem;
  77. bool isSingleContainerKey(QString poolKey,QString newKey);
  78. bool isSingleChildElemName(QString newName);
  79. bool isSingleAnimName(QString newName);
  80. int getCollAnimIndex(QString name);
  81. int getStatusValIndex(QString statusVal);
  82. int getPoolIndex(QString poolName);
  83. QList<QString> getTimelineList(QString filePath);
  84. QMap<QString,QList<QString>> timelineListMap;
  85. };
  86. #endif // ELEMPROPERTYDATA_H