mirror of
https://github.com/polserver/polserver
synced 2026-08-13 08:23:08 -04:00
1) Made all module methods [[nodiscard]]. Glad to report no leaks were found. We should add the same to BObjects. 2) Protected members of NPCExecutorModule (were public before). 3) Added NPCExecutorModule::controlled_npc() so that osmod can access the npc's name and position. 4) Removed declarations for undefined functions: - attributemod.h: mf_SetAttributeIntrinsicMod() - osmod.h: mf_System_RPM() - vitalmod.h: mf_SetVitalMaximumValue() and mf_SetVitalRegenRate()
72 lines
2.1 KiB
C++
72 lines
2.1 KiB
C++
/** @file
|
|
*
|
|
* @par History
|
|
*/
|
|
|
|
|
|
#ifndef BSCRIPT_BASICMOD_H
|
|
#define BSCRIPT_BASICMOD_H
|
|
|
|
namespace Pol
|
|
{
|
|
namespace Bscript
|
|
{
|
|
class BObjectImp;
|
|
class Executor;
|
|
} // namespace Bscript
|
|
} // namespace Pol
|
|
#ifndef BSCRIPT_EXECMODL_H
|
|
#include "../../bscript/execmodl.h"
|
|
#endif
|
|
|
|
// FIXME: this is currently misnamed, should be StringExecutorModule
|
|
namespace Pol
|
|
{
|
|
namespace Module
|
|
{
|
|
class BasicExecutorModule
|
|
: public Bscript::TmplExecutorModule<BasicExecutorModule, Bscript::ExecutorModule>
|
|
{
|
|
public:
|
|
/* These probably belong in a string module */
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Find();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Len();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Upper();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Lower();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_SubStr();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Trim();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_StrReplace();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_SubStrReplace();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Compare();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CInt();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CStr();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CDbl();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CAsc();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CAscZ();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CChr();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_CChrZ();
|
|
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Bin();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Hex();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_SplitWords();
|
|
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Pack();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Unpack();
|
|
|
|
[[nodiscard]] Bscript::BObjectImp* mf_TypeOf();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_SizeOf();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_TypeOfInt();
|
|
|
|
[[nodiscard]] Bscript::BObjectImp* mf_PackJSON();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_UnpackJSON();
|
|
|
|
[[nodiscard]] Bscript::BObjectImp* mf_Boolean();
|
|
|
|
[[nodiscard]] Bscript::BObjectImp* mf_EncodeBase64();
|
|
[[nodiscard]] Bscript::BObjectImp* mf_DecodeBase64();
|
|
|
|
BasicExecutorModule( Bscript::Executor& exec );
|
|
};
|
|
} // namespace Module
|
|
} // namespace Pol
|
|
#endif
|