Enabling/disabling an entity?

0

Hi folks,

I'm attempting to enable and disable an entity (with Transform, Static Mesh, Rigid Body Physics and Mesh Collider components) via Lua scripting, using the following code:


GameEntityContextRequestBus.Broadcast.DeactivateGameEntity(entityIdHere);
GameEntityContextRequestBus.Broadcast.ActivateGameEntity(entityIdHere);

However this appears to actually do nothing at all. In Unity or similar this is as simple as setting a property of the entity (like isActive) to true or false via the code, however this isn't possible in LY and even the way to do it through EBuses doesn't seem to work!

All I want to do is remove, and then bring back, this entity in the scene, including visuals and physics.

asked 7 years ago176 views
5 Answers
0
Accepted Answer

Hello @REDACTEDUSER

I see what you are attempting to do. By calling these EBus methods you would get the Activate() and Deactivate() methods called on GameEntityContextComponent.cpp which doesn't really do much other than connect and disconnect to some buses and resets the AssetCatalog.

To be able to disable and enable entities and their associated components in 1.8, we recommend using the SimpleStateComponent. The SimpleStateComponent allows you to define several states and allows you to assign entities to those states. When a state is enabled all of the entities and the components for each entity is activated, conversely when a state is disabled all of the entities in that state and their components will be deactivated.

Let us know if that helps!

Thanks!

answered 7 years ago
0

Hi @REDACTEDUSER

answered 7 years ago
0

I come here to help, but there isn't enough data to make a focused answer.

I believe he have to post his script then it will be way more clear to understand why it doesn't work.

answered 7 years ago
0

Thanks! @REDACTEDUSER

answered 7 years ago
0

@REDACTEDUSER

answered 7 years ago

This post is closed: Adding new answers, comments, and votes is disabled.