Skip to content

Commit 030f0f1

Browse files
committed
added level blueprint api
1 parent 08d3638 commit 030f0f1

File tree

4 files changed

+24
-0
lines changed

4 files changed

+24
-0
lines changed

Source/UnrealEnginePython/Private/UEPyModule.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -877,6 +877,7 @@ static PyMethodDef ue_PyUObject_methods[] = {
877877
{ "set_current_level", (PyCFunction)py_ue_set_current_level, METH_VARARGS, "" },
878878

879879
#if WITH_EDITOR
880+
{ "get_level_script_blueprint", (PyCFunction)py_ue_get_level_script_blueprint, METH_VARARGS, "" },
880881
{ "add_foliage_asset", (PyCFunction)py_ue_add_foliage_asset, METH_VARARGS, "" },
881882
{ "get_foliage_instances", (PyCFunction)py_ue_get_foliage_instances, METH_VARARGS, "" },
882883
#endif

Source/UnrealEnginePython/Private/UObject/UEPyWorld.cpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,20 @@ PyObject *py_ue_set_current_level(ue_PyUObject *self, PyObject * args)
323323
}
324324

325325
#if WITH_EDITOR
326+
PyObject *py_ue_get_level_script_blueprint(ue_PyUObject *self, PyObject * args)
327+
{
328+
329+
ue_py_check(self);
330+
331+
ULevel *level = ue_py_check_type<ULevel>(self);
332+
if (!level)
333+
{
334+
return PyErr_Format(PyExc_Exception, "uobject is not a ULevel");
335+
}
336+
337+
Py_RETURN_UOBJECT((UObject*)level->GetLevelScriptBlueprint());
338+
}
339+
326340
PyObject *py_ue_world_create_folder(ue_PyUObject *self, PyObject * args)
327341
{
328342

Source/UnrealEnginePython/Private/UObject/UEPyWorld.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,6 @@ PyObject *py_ue_world_create_folder(ue_PyUObject *, PyObject *);
3535
PyObject *py_ue_world_delete_folder(ue_PyUObject *, PyObject *);
3636
PyObject *py_ue_world_rename_folder(ue_PyUObject *, PyObject *);
3737
PyObject *py_ue_world_folders(ue_PyUObject *, PyObject *);
38+
PyObject *py_ue_get_level_script_blueprint(ue_PyUObject *, PyObject *);
3839
#endif
3940

examples/edit_level_blueprint.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import unreal_engine as ue
2+
from unreal_engine.structs import EdGraphPinType
3+
4+
world = ue.get_editor_world()
5+
level_bp = world.CurrentLevel.get_level_script_blueprint()
6+
pin = EdGraphPinType(PinCategory='string')
7+
ue.blueprint_add_member_variable(level_bp, 'TestString', pin)
8+
ue.open_editor_for_asset(level_bp)

0 commit comments

Comments
 (0)