Added new tangible ops, including tangible.delete

This commit is contained in:
2021-03-19 13:41:41 -04:00
parent 05052f846e
commit e06bae63f7
5 changed files with 138 additions and 41 deletions

View File

@@ -67,6 +67,7 @@ public:
// Get the ID
//
int64_t id() { return plane_item_.id(); }
void be_a_player();
void update_plane_item();
};
@@ -99,6 +100,7 @@ public:
StreamBuffer snapshot_;
void run_scheduled_threads(int64_t clk);
static void store_global_pointer(lua_State *L, World *w);
public:
// Constructor.
//
@@ -149,13 +151,11 @@ public:
// a lua error is generated.
//
Tangible *tangible_get(lua_State *L, int idx);
// Delete a tangible with the specified ID.
//
// If the tangible doesn't exist, does nothing.
//
void tangible_del(int64_t id);
// Delete the specified tangible.
//
void tangible_delete(lua_State *L, int64_t id);
// Probe the 'interface' function of the specified sprite.
//
void update_gui(int64_t actor_id, int64_t place_id, Gui *gui);
@@ -166,12 +166,11 @@ public:
//
void invoke_plan(int64_t actor_id, int64_t place_id, const std::string &action, const GuiResult &gres);
// fetch
// fetch_global_pointer
//
// Given a lua state, fetch the world model associated with
// that lua state.
//
static void store_global_pointer(lua_State *L, World *w);
static World *fetch_global_pointer(lua_State *L);
// Serialize and deserialize.