#ifndef ELEMPROPERTYDATA_H #define ELEMPROPERTYDATA_H #include #include #include class ElemPropertyData { public: ElemPropertyData(); //基础属性 QString labelName; QString size; QString maxLayer; QString score; int dropConfig; QString iconPath; //状态与效果动画 struct StatusEffect{ QString name; QString res; QString timeline; QString zOrder; StatusEffect(QString animName):name(animName),res("双击添加资源文件"){} }; QVector statusEffect; //收集动画 struct CollAnim{ QString name; QString type; QString anim; QMap dataMap; CollAnim(QString collAnimName):name(collAnimName),type("尚未选择"),anim("尚未选择"){} }; QVector collAnim; // 状态配置 // 事件配置 struct EventConfig{ QString name; bool consisColor; int changeMagnitude; QString specialEffect; bool elimATLattices; QString triggerAction; QMap actionConfig; EventConfig():name("尚未选择"),specialEffect("尚未选择"),triggerAction("尚未选择"),consisColor(false),changeMagnitude(0),elimATLattices(false){} }; struct StatusConfig{ QString statusValue; QString initAnim; QString clickAnim; bool multiHit; bool dropable; bool needCollect; QString collTargetType; QString collAnim; QVector eventConfig; StatusConfig(QString statusVal):statusValue(statusVal),multiHit(false),dropable(false),needCollect(false),initAnim("尚未选择"),clickAnim("尚未选择"),collAnim("尚未选择"){} }; QVector statusConfig; // 容器 struct ContainTable{ QString key; QString res; QString initTimeline; QString clickTimeline; QString effectTimeline; QString vanishTimeline; QString zOrder; ContainTable(QString keyName):key(keyName),res("双击添加资源文件"){} }; struct ContainerConfig{ QString poolName; QString type; QVector table; ContainerConfig(QString pool):poolName(pool),type("尚未选择"){} }; QVector container; struct ChildElem{ QString name; QString container; ChildElem(QString childElemName):name(childElemName),container("尚未选择"){} }; QVector childElem; bool isSingleContainerKey(QString poolKey,QString newKey); bool isSingleChildElemName(QString newName); bool isSingleAnimName(QString newName); int getCollAnimIndex(QString name); int getStatusValIndex(QString statusVal); int getPoolIndex(QString poolName); QList getTimelineList(QString filePath); QMap> timelineListMap; }; #endif // ELEMPROPERTYDATA_H