Пример #1
0
    void CreateCollider(GameObject mapContainer, List <ColliderDataInfo> aColliderDataInfo, MapInfo aMapInfo, List <string> aActivatedColliderLayers)
    {
        GameObject container = new GameObject();

        container.name = "ColliderContainer";
        container.transform.SetParent(mapContainer.transform, false);

        for (int i = 0; i < aColliderDataInfo.Count; i++)
        {
            ColliderDataInfo colliderDataInfo = aColliderDataInfo[i];

            GameObject colliderGo = new GameObject();
            colliderGo.name = CAMERA_LIMIT_NAME + i;
            colliderGo.transform.SetParent(container.transform, false);

            colliderGo.AddComponent <BoxCollider2D>();
            colliderGo.layer = colliderDataInfo.m_Layer;
            colliderGo.transform.localPosition = colliderDataInfo.m_Position;
            colliderGo.transform.localScale    = colliderDataInfo.m_Scale;
            colliderGo.transform.localRotation = colliderDataInfo.m_Rotation;

            MapColliderLayer mapColliderLayer = colliderGo.AddComponent <MapColliderLayer>();
            mapColliderLayer.m_ColliderLayer = colliderDataInfo.m_ColliderMapLayer;

            aMapInfo.m_ListMapColliderLayer.Add(mapColliderLayer);
            if (!string.IsNullOrEmpty(colliderDataInfo.m_ColliderMapLayer) && !aActivatedColliderLayers.Contains(colliderDataInfo.m_ColliderMapLayer))
            {
                colliderGo.SetActive(false);
            }
        }
    }
Пример #2
0
    public ColliderDataInfo ToColliderDataInfo()
    {
        ColliderDataInfo data = new ColliderDataInfo ();
        data.m_Layer = gameObject.layer;
        data.m_Position = transform.localPosition;
        data.m_Scale = transform.localScale;
        data.m_Rotation = transform.rotation;
        data.m_ColliderMapLayer = m_ColliderMapLayer;

        return data;
    }
Пример #3
0
    public ColliderDataInfo ToColliderDataInfo()
    {
        ColliderDataInfo data = new ColliderDataInfo();

        data.m_Layer            = gameObject.layer;
        data.m_Position         = transform.localPosition;
        data.m_Scale            = transform.localScale;
        data.m_Rotation         = transform.rotation;
        data.m_ColliderMapLayer = m_ColliderMapLayer;

        return(data);
    }