CCTMXObjectGroup

#ifndef __CCTMX_OBJECT_GROUP_H__

#define __CCTMX_OBJECT_GROUP_H__


#include "cocoa/CCGeometry.h"

#include "cocoa/CCString.h"

#include "cocoa/CCArray.h"

#include "cocoa/CCDictionary.h"


NS_CC_BEGIN


/**

 * @addtogroup tilemap_parallax_nodes

 * @{

 */


/** @brief CCTMXObjectGroup represents the TMX object group.

@since v0.99.0

*/

class CC_DLL CCTMXObjectGroup : public CCObject

{

    /** offset position of child objects */

    CC_SYNTHESIZE_PASS_BY_REF(CCPoint, m_tPositionOffset, PositionOffset);

    /** list of properties stored in a dictionary */

    CC_PROPERTY(CCDictionary*, m_pProperties, Properties);

    /** array of the objects */

    CC_PROPERTY(CCArray*, m_pObjects, Objects);

public:

    CCTMXObjectGroup();

    virtual ~CCTMXObjectGroup();


    inline const char* getGroupName(){ return m_sGroupName.c_str(); }

    inline void setGroupName(const char *groupName){ m_sGroupName = groupName; }


    /** return the value for the specific property name */

    CCString *propertyNamed(const char* propertyName);


    /** return the dictionary for the specific object name.

    It will return the 1st object found on the array for the given name.

    */

    CCDictionary* objectNamed(const char *objectName);

protected:    

    /** name of the group */

    std::string m_sGroupName;

};


// end of tilemap_parallax_nodes group

/// @}


NS_CC_END


#endif //__CCTMX_OBJECT_GROUP_H__

posted @ 2014-05-22 21:01  sssssnian  阅读(133)  评论(0编辑  收藏  举报