Example #1
0
    public void AddConstructAnim(Vector3 pos, PlatformEditorData platformEditor)
    {
        ConstructAnim newConstructAnim = Instantiate(constructAnim);

        newConstructAnim.Init(pos, platformEditor, timeToCreate);
        Invoke("UpdateWorldFloorCorners", timeToCreate + 0.1f);
    }
Example #2
0
    public override void OnCreateAt(Transform t)
    {
        PlatformEditorData platformEditor     = t.gameObject.GetComponent <PlatformEditorData>();
        WorldFloor         worldFloorSelected = platformEditor.GetComponentInParent <WorldFloor>();

        if (worldFloorSelected == null)
        {
            return;
        }

        Vector3 pos = worldFloorSelected.transform.position;

        switch (platformEditor.part)
        {
        case PlatformEditorData.parts.FRONT: pos.z += 3; break;

        case PlatformEditorData.parts.BACK: pos.z -= 3; break;

        case PlatformEditorData.parts.LEFT: pos.x -= 3; break;

        case PlatformEditorData.parts.RIGHT: pos.x += 3; break;
        }
        if (!worldCreator.GetWorldAssetAt(worldAsset, worldCreator.roomContainer.GetComponentsInChildren <WorldFloor>(), pos))
        {
            worldFloorSelected.SetCorner(platformEditor, false);
            worldCreator.EditorCreateWorldAsset(worldAsset, pos, Vector3.zero);
            worldCreator.AddConstructAnim(pos, platformEditor);
        }
    }
Example #3
0
    public override void OnCreateAt(Transform t)
    {
        PlatformEditorData platformEditor = t.gameObject.GetComponent <PlatformEditorData>();
        Vector3            pos            = platformEditor.transform.position;
        Vector3            rot            = Vector3.zero;

        if (platformEditor.part == PlatformEditorData.parts.LEFT || platformEditor.part == PlatformEditorData.parts.RIGHT)
        {
            rot.y = 90;
        }
        worldCreator.EditorCreateWorldAsset(worldAsset, pos, rot);
    }
Example #4
0
    public void SetCorner(PlatformEditorData platformEditor, bool showIt)
    {
        switch (platformEditor.part)
        {
        case PlatformEditorData.parts.FRONT: editingObjects[0].SetState(showIt); break;

        case PlatformEditorData.parts.BACK: editingObjects[1].SetState(showIt); break;

        case PlatformEditorData.parts.LEFT: editingObjects[3].SetState(showIt); break;

        case PlatformEditorData.parts.RIGHT: editingObjects[2].SetState(showIt); break;
        }
    }
Example #5
0
    public void Init(Vector3 pos, PlatformEditorData platformEditor, float timeToCreate)
    {
        int Y_degrees = 0;

        switch (platformEditor.part)
        {
        case PlatformEditorData.parts.FRONT: Y_degrees = 0; break;

        case PlatformEditorData.parts.BACK: Y_degrees = 180; break;

        case PlatformEditorData.parts.LEFT: Y_degrees = 270; break;

        case PlatformEditorData.parts.RIGHT: Y_degrees = 90; break;
        }
        transform.localPosition    = pos;
        transform.localEulerAngles = new Vector3(0, Y_degrees, 0);
        Invoke("SetOff", timeToCreate);
    }