diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2024-05-02 16:34:05 +0200 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2024-05-02 22:35:39 +0200 |
commit | 6abcd7d52cda334c58ec999d212491fc24f13c9d (patch) | |
tree | 86998508afe8eb7447ad70a2d5beebdbc9995a8f /src/critter-script.cpp | |
parent | 03b67a512ec9ef1cf5c337aa5c47a5a76d4a8a61 (diff) |
script lifecycle mostly implemented
Diffstat (limited to 'src/critter-script.cpp')
-rw-r--r-- | src/critter-script.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/critter-script.cpp b/src/critter-script.cpp index 7b80234f..b222f628 100644 --- a/src/critter-script.cpp +++ b/src/critter-script.cpp @@ -34,24 +34,28 @@ void empty_critter_script::on_init(const std::shared_ptr<critter>& p) } void empty_critter_script::on_update(const std::shared_ptr<critter>& p, size_t&, const Ns&) { - DBG_nospace << "> update critter:" << (void*)&*p << " id:" << p->id << (p->name ? " name:" : "") << p->name; + DBG_nospace << " update critter:" << (void*)&*p << " id:" << p->id << (p->name ? " name:" : "") << p->name; touch_ptr(p); } void empty_critter_script::on_destroy(const std::shared_ptr<critter>& p, script_destroy_reason r) { - DBG_nospace << "> destroy critter:" << (void*)&*p << " id:" << p->id << " reason:" << (int)r << (p->name ? " name:" : "") << p->name; + DBG_nospace << " destroy critter:" << (void*)&*p << " id:" << p->id << " reason:" << (int)r << (p->name ? " name:" : "") << p->name; touch_ptr(p); } void empty_critter_script::delete_self() noexcept { - DBG_nospace << "> delete critter"; + DBG_nospace << "< delete critter"; } empty_critter_script empty_script_ = {}; } // namespace -critter_script* const critter_script::empty_script = &empty_script_; +template <> +critter_script* Script<critter_script, critter>::make_empty() +{ + return &empty_script_; +} critter_script::critter_script(const std::shared_ptr<critter>&) {} critter_script::~critter_script() noexcept {} |