From b2bb5abb78b8e6a13b50703f02802ac950298fd3 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 15 Mar 2024 11:34:15 +0800 Subject: [PATCH] 1 --- server/gameserver/lispenv.cc | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/server/gameserver/lispenv.cc b/server/gameserver/lispenv.cc index 53ee9569..1040b7e6 100644 --- a/server/gameserver/lispenv.cc +++ b/server/gameserver/lispenv.cc @@ -220,6 +220,40 @@ public: return std::make_shared(a8::lisp::Atom(result)); }); + RegisterCProc + ( + "caster.get_pos_x", + [this] (const a8::lisp::List& params) -> std::shared_ptr + { + double result = 0.0f; + if (context_.buff->GetCaster().Get()) { + result = context_.buff->GetCaster().Get()->GetPos().GetX(); + } + return std::make_shared(a8::lisp::Atom(result)); + }); + RegisterCProc + ( + "caster.get_pos_y", + [this] (const a8::lisp::List& params) -> std::shared_ptr + { + double result = 0.0f; + if (context_.buff->GetCaster().Get()) { + result = context_.buff->GetCaster().Get()->GetPos().GetY(); + } + return std::make_shared(a8::lisp::Atom(result)); + }); + RegisterCProc + ( + "caster.get_pos_z", + [this] (const a8::lisp::List& params) -> std::shared_ptr + { + double result = 0.0f; + if (context_.buff->GetCaster().Get()) { + result = context_.buff->GetCaster().Get()->GetPos().GetZ(); + } + return std::make_shared(a8::lisp::Atom(result)); + }); + RegisterCProc ( "caster.get_skill_target_pos_x",