From 98ff269651758fdcf8bc9e577b5afc8d1c069fc9 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 11 Oct 2023 15:34:40 +0800 Subject: [PATCH] 1 --- server/gameserver/new_base_agent.cc | 22 ++++++++++++++++++++++ server/gameserver/new_base_agent.h | 9 +++++++++ 2 files changed, 31 insertions(+) diff --git a/server/gameserver/new_base_agent.cc b/server/gameserver/new_base_agent.cc index 3a279b0d..a56161c9 100644 --- a/server/gameserver/new_base_agent.cc +++ b/server/gameserver/new_base_agent.cc @@ -2,6 +2,8 @@ #include "new_base_agent.h" +#include "room.h" + BaseAgent::BaseAgent():behaviac::Agent() { @@ -10,3 +12,23 @@ BaseAgent::BaseAgent():behaviac::Agent() BaseAgent::~BaseAgent() { } + +bool BaseAgent::IsGameOver() +{ + return room->IsGameOver(); +} + +int BaseAgent::GetTickCount() +{ + return room->GetFrameNo() * FRAME_RATE_MS; +} + +int BaseAgent::RandRange(int min_val, int max_val) +{ + return a8::RandEx(min_val, max_val); +} + +int BaseAgent::Rand() +{ + return rand(); +} diff --git a/server/gameserver/new_base_agent.h b/server/gameserver/new_base_agent.h index 9ed5bef0..4fdfcff8 100644 --- a/server/gameserver/new_base_agent.h +++ b/server/gameserver/new_base_agent.h @@ -4,6 +4,7 @@ #include "behaviac/behaviac.h" #include "behaviac_customized_types.h" +class Room; class BaseAgent : public behaviac::Agent { public: @@ -16,4 +17,12 @@ public: void Exec() {} void SetOwner(Creature* owner) { } + bool IsGameOver(); + int GetTickCount(); + int RandRange(int min_val, int max_val); + int Rand(); + + public: + Room* room = nullptr; + };