REDPolygonClippingNodeLoader.cpp 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. //
  2. // REDPolygonClippingNodeLoader.cpp
  3. // redream_runtime
  4. //
  5. // Created by RedInfinity on 2024/1/19.
  6. //
  7. #include "REDPolygonClippingNodeLoader.hpp"
  8. ///C++标准库
  9. #include <string>
  10. namespace redream {
  11. const std::string kPropertyInverted = "Inverted";
  12. const std::string kPropertyPolygonFile= "PolygonFile";
  13. void PolygonClippingNodeLoader::onHandlePropTypeCheck(Node* pNode, Node* pParent, const char* pPropertyName, bool pCheck, REDReader* ccbReader) {
  14. if (std::strcmp(pPropertyName, kPropertyInverted.c_str()) == 0) {
  15. static_cast<PolygonClippingNode*>(pNode)->setInverted(pCheck);
  16. } else {
  17. NodeLoader::onHandlePropTypeCheck(pNode, pParent, pPropertyName, pCheck, ccbReader);
  18. }
  19. }
  20. void PolygonClippingNodeLoader::onHandlePropTypePolygonFile(cocos2d::Node* pNode, cocos2d::Node* pParent, const char* pPropertyName, const std::string& filePath, REDReader* ccbReader) {
  21. if (std::strcmp(pPropertyName, kPropertyPolygonFile.c_str()) == 0) {
  22. static_cast<PolygonClippingNode*>(pNode)->setPolygonFile(filePath);
  23. } else {
  24. NodeLoader::onHandlePropTypePbVertsFile(pNode, pParent, pPropertyName, filePath, ccbReader);
  25. }
  26. }
  27. }