This commit is contained in:
aozhiwei 2021-03-05 17:46:05 +08:00
parent 4387cece7b
commit cdbd277987
3 changed files with 69 additions and 1 deletions

View File

@ -252,7 +252,7 @@ enum EntityType_e
//ET_Decal = 7,
//ET_Projectile = 8,
//ET_Smoke = 9,
//ET_Hero = 10,
ET_Hero = 10,
ET_Car = 11,
ET_Bullet = 20,

42
server/gameserver/hero.cc Normal file
View File

@ -0,0 +1,42 @@
#include "precompile.h"
#include "hero.h"
#include "human.h"
#include "room.h"
#include "metamgr.h"
#include "loot.h"
#include "perfmonitor.h"
#include "typeconvert.h"
Hero::Hero():MoveableEntity()
{
++PerfMonitor::Instance()->entity_num[ET_Hero];
}
Hero::~Hero()
{
--PerfMonitor::Instance()->entity_num[ET_Hero];
}
void Hero::Initialize()
{
MoveableEntity::Initialize();
}
void Hero::FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data)
{
part_data->set_object_type(ET_Hero);
cs::MFHeroPart* p = part_data->mutable_union_obj_10();
p->set_obj_uniid(GetEntityUniId());
TypeConvert::ToPb(GetPos(), p->mutable_pos());
//TypeConvert::ToPb(move_dir, p->mutable_dir());
}
void Hero::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data)
{
full_data->set_object_type(ET_Hero);
cs::MFHeroFull* p = full_data->mutable_union_obj_10();
p->set_obj_uniid(GetEntityUniId());
TypeConvert::ToPb(GetPos(), p->mutable_pos());
//TypeConvert::ToPb(move_dir, p->mutable_dir());
}

26
server/gameserver/hero.h Normal file
View File

@ -0,0 +1,26 @@
#pragma once
#include "moveableentity.h"
#include "cs_proto.pb.h"
namespace MetaData
{
struct Equip;
}
class Human;
class Room;
class Hero : public MoveableEntity
{
public:
Hero();
virtual ~Hero() override;
virtual void Initialize() override;
virtual void FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data) override;
virtual void FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data) override;
private:
bool later_removed_ = false;
};