void UnlockPortals::SetLockCollision(cocos2d::Vec2 collBoxSize, cocos2d::Vec2 collBoxOffset)
{
	m_lockCollision = cocos2d::PhysicsBody::createBox(cocos2d::Size(collBoxSize), cocos2d::PhysicsMaterial(1.0f, 0.0f, 0.0f), collBoxOffset);
	m_lockCollision->setContactTestBitmask(0x0);
	m_lockCollision->setCollisionBitmask(0x1 << curOffset);
	m_lockCollision->setDynamic(false);
	m_lockCollision->setGravityEnable(true);
	m_lockCollision->setRotationEnable(false);
	m_lockCollision->retain();


	if (curOffset < 30)
		++curOffset;
	else
		curOffset = 27;
	
	if (!IsUnlocked())
	{
		setPhysicsBody(m_lockCollision);
		removeAllChildrenWithCleanup(true);
		if (!collBoxSize.isZero() && m_boundaryImg != "none")
		{
			removeAllChildrenWithCleanup(true);
			auto boundary = cocos2d::Sprite::create();
			boundary->setAnchorPoint(cocos2d::Vec2(0, 0));
			boundary->setTexture(m_boundaryImg);
			boundary->setTextureRect(cocos2d::Rect(collBoxOffset.x - collBoxSize.x / 2, collBoxOffset.y - collBoxSize.y / 3, collBoxSize.x, collBoxSize.y));
			cocos2d::Texture2D::TexParams params = cocos2d::Texture2D::TexParams();
			params.magFilter = GL_LINEAR;
			params.minFilter = GL_LINEAR;
			params.wrapS = GL_REPEAT;
			params.wrapT = GL_REPEAT;
			boundary->getTexture()->setTexParameters(params);
			boundary->setCameraMask(4);
			addChild(boundary,22);
			boundary->setPosition(cocos2d::Vec2(collBoxOffset.x - collBoxSize.x / 3.0, collBoxOffset.y - collBoxSize.y / 3.0) + cocos2d::Vec2(m_imgXOffset, m_imgYOffset));
		}
	}
}