protected override void Execute()
 {
     if (!GenerateableLevelObjectLibrary.IsLevelObject(collision.gameObject.name))
     {
         Abort();
     }
 }
Ejemplo n.º 2
0
    protected override void Execute()
    {
        Vector2 selectionFieldStartPosition = SelectionFieldStatusView.SelectionFieldStartGridPosition;
        Vector2 selectionFieldEndPosition   = SelectionFieldStatusView.SelectionFieldEndGridPosition;

        List <ILevelObject> levelObjectsToRemove = new List <ILevelObject>();

        foreach (ILevelObject levelObject in levelObjectRefs)
        {
            GenerateableLevelObjectNode generateableLevelObjectNode = GenerateableLevelObjectLibrary.GetNode(levelObject.LevelObjectType);
            if (!generateableLevelObjectNode.CanCollideWithTiles)
            {
                continue;
            }

            GameObject levelObjectGameObject   = levelObject.GameObject;
            Vector2    levelObjectGridPosition = LevelEditorGridHelper.WorldToGridPosition(levelObjectGameObject.transform.position);

            if (!levelObjectGridPosition.IsBetweenVectors(selectionFieldStartPosition, selectionFieldEndPosition))
            {
                continue;
            }

            levelObjectsToRemove.Add(levelObject);
        }

        foreach (ILevelObject levelObject in levelObjectsToRemove)
        {
            levelObject.DestroyLevelObject();
        }
    }
Ejemplo n.º 3
0
 private static GenerateableLevelObjectLibrary GetInstance()
 {
     if (instance == null)
     {
         instance = Resources.Load <GenerateableLevelObjectLibrary>(GENERATABLE_LEVEL_OBJECT_LIBRARY_PATH);
     }
     return(instance);
 }
Ejemplo n.º 4
0
    protected override void Execute()
    {
        bool isLevelObject = GenerateableLevelObjectLibrary.IsLevelObject(collision2D.transform.name);

        if (isLevelObject)
        {
            Abort();
        }
    }
    protected override void Execute()
    {
        LevelObjectType             levelObjectType             = selectedLevelObjectRef.Get().LevelObjectType;
        GenerateableLevelObjectNode generateableLevelObjectNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);

        if (generateableLevelObjectNode.CanCollideWithLevelObjects)
        {
            Abort();
        }
    }
Ejemplo n.º 6
0
    public void SetLevelObject(LevelObjectType levelObjectType)
    {
        this.levelObjectType = levelObjectType;
        GenerateableLevelObjectNode levelObjectEditorNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);

        SpriteRenderer levelObjectEditorNodeSpriteRenderer = levelObjectEditorNode.Prefab.GetComponentInChildren <SpriteRenderer>();

        GetButton().image.sprite = levelObjectEditorNodeSpriteRenderer.sprite;
        GetButton().image.color  = levelObjectEditorNodeSpriteRenderer.color;
    }
Ejemplo n.º 7
0
    private void SpawnLevelObjects(List <LevelObjectSaveData> levelObjectsSaveData)
    {
        foreach (LevelObjectSaveData levelObjectSaveData in levelObjectsSaveData)
        {
            LevelObjectType             levelObjectType = levelObjectSaveData.LevelObjectType;
            GenerateableLevelObjectNode levelEditorLevelObjectEditorNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);
            GameObject prefab   = levelEditorLevelObjectEditorNode.Prefab;
            Vector2    position = levelObjectSaveData.Position;

            GameObject levelObjectGameObject = Object.Instantiate(prefab, position, new Quaternion(), levelContainerStatus.LevelContainer);
            levelObjectGameObject.transform.localScale = levelObjectSaveData.Size;
        }
    }
    private void SpawnLevelObjects(List <LevelObjectSaveData> levelObjectsSaveData)
    {
        foreach (LevelObjectSaveData levelObjectSaveData in levelObjectsSaveData)
        {
            LevelObjectType             levelObjectType = levelObjectSaveData.LevelObjectType;
            GenerateableLevelObjectNode levelEditorLevelObjectEditorNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);
            Vector2 position = levelObjectSaveData.Position;

            GameObject levelObject = LevelObjectHelper.InstantiateLevelObject(levelEditorLevelObjectEditorNode, position, context);
            levelObject.transform.localScale = levelObjectSaveData.Size;
            levelObject.transform.rotation   = levelObjectSaveData.Rotation;
        }
    }
Ejemplo n.º 9
0
    protected override void Execute()
    {
        List <Transform> transforms = RaycastHelper.GetTransformOnPosition2D(Input.mousePosition);

        foreach (Transform transform in transforms)
        {
            bool isLevelObject = GenerateableLevelObjectLibrary.IsLevelObject(transform.name);
            if (isLevelObject)
            {
                Abort();
                return;
            }
        }
    }
    protected override void Execute()
    {
        LevelObjectType             levelObjectType             = selectedLevelObjectRef.Get().LevelObjectType;
        GenerateableLevelObjectNode generateableLevelObjectNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);

        if (SelectedLevelObjectTransformTypeStatusView.TransformType == null)
        {
            SelectedLevelObjectTransformTypeStatusView.TransformType = generateableLevelObjectNode.GetDefaultLevelObjectInputType();
        }
        else
        {
            bool selectedLevelObjectContainsCurrentTransformType = generateableLevelObjectNode.TransformTypes.Contains((LevelObjectTransformType)SelectedLevelObjectTransformTypeStatusView.TransformType);
            if (!selectedLevelObjectContainsCurrentTransformType)
            {
                SelectedLevelObjectTransformTypeStatusView.TransformType = generateableLevelObjectNode.GetDefaultLevelObjectInputType();
            }
        }
    }
Ejemplo n.º 11
0
    protected override void Execute()
    {
        GenerateableLevelObjectNode generateableLevelObjectNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);

        SelectedLevelObjectNodeStatus.LevelObjectNode = generateableLevelObjectNode;
    }
Ejemplo n.º 12
0
    protected override void Execute()
    {
        LevelObjectType levelObjectType = selectedLevelObjectRef.Get().LevelObjectType;

        SelectedLevelObjectNodeStatus.LevelObjectNode = GenerateableLevelObjectLibrary.GetNode(levelObjectType);
    }