This commit is contained in:
aozhiwei 2022-11-29 10:29:33 +08:00
parent 2c6b2bd4a1
commit a9c166cb32
5 changed files with 92 additions and 44 deletions

View File

@ -142,6 +142,12 @@ void MapInstance::Init()
fclose(fp);
}
}
#if 1
{
dtTileRef tile_ref = navmesh_->getTileRefAt(10, 10, 0);
int i = 0;
}
#endif
}
void MapInstance::UnInit()

View File

@ -8,6 +8,7 @@
#include <a8/a8.h>
#include <a8/udplog.h>
#include <a8/vec2.h>
#include <a8/vec3.h>
typedef std::function<void(const std::vector<std::any>&)> CommonCbProc;

View File

@ -12,12 +12,39 @@ namespace TypeConvert
pb_obj->set_y(v.y);
}
void ToPb(const a8::Vec2& v, cs::MFVec3* pb_obj)
{
pb_obj->set_x(v.x);
pb_obj->set_y(v.y);
pb_obj->set_z(0.0f);
}
void FromPb(a8::Vec2& v, const cs::MFVec2* pb_obj)
{
v.x = pb_obj->x();
v.y = pb_obj->y();
}
void FromPb(a8::Vec2& v, const cs::MFVec3* pb_obj)
{
v.x = pb_obj->x();
v.y = pb_obj->y();
}
void ToPb(const a8::Vec3& v, cs::MFVec3* pb_obj)
{
pb_obj->set_x(v.x);
pb_obj->set_y(v.y);
pb_obj->set_z(v.z);
}
void FromPb(a8::Vec3& v, const cs::MFVec3* pb_obj)
{
v.x = pb_obj->x();
v.y = pb_obj->y();
v.z = pb_obj->z();
}
void ToPb(const OverReward& v, cs::MFOverReward* pb_obj)
{
pb_obj->mutable_hero()->set_id(v.hero.id);

View File

@ -3,6 +3,7 @@
namespace cs
{
class MFVec2;
class MFVec3;
class MFOverReward;
}
@ -11,7 +12,12 @@ struct OverReward;
namespace TypeConvert
{
void ToPb(const a8::Vec2& v, cs::MFVec2* pb_obj);
void ToPb(const a8::Vec2& v, cs::MFVec3* pb_obj);
void FromPb(a8::Vec2& v, const cs::MFVec2* pb_obj);
void FromPb(a8::Vec2& v, const cs::MFVec3* pb_obj);
void ToPb(const a8::Vec3& v, cs::MFVec3* pb_obj);
void FromPb(a8::Vec3& v, const cs::MFVec3* pb_obj);
void ToPb(const OverReward& v, cs::MFOverReward* pb_obj);
}

View File

@ -99,13 +99,21 @@ message MFTupleString
repeated string values = 1; //values
}
//
//2d
message MFVec2
{
optional float x = 1; //x轴
optional float y = 2; //y轴
}
//3d
message MFVec3
{
optional float x = 1; //x轴
optional float y = 2; //y轴
optional float z = 3 [default = 0]; //z轴
}
//
/*
property_type: 1
@ -195,7 +203,7 @@ message MFCollider
message MFMapObject
{
optional int32 object_id = 1; //id(mapThing表id)
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
}
//
@ -219,8 +227,8 @@ message MFSkin
message MFPlayerPart
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
optional float speed = 4; //
}
@ -244,15 +252,15 @@ message MFCharacterImage
message MFTeamMarkPos
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
}
//-
message MFPlayerFull
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
optional int64 guild_id = 4; //id
optional float max_health = 5; //
@ -307,7 +315,7 @@ message MFPlayerFull
message MFObstaclePart
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
optional float scale = 3; //
}
@ -315,7 +323,7 @@ message MFObstaclePart
message MFObstacleFull
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
optional float scale = 3; //
optional float rotate = 5; //
// born_frameno == SMUpdate.frmanoe时表示在当前这帧出生(0)
@ -345,14 +353,14 @@ message MFObstacleFull
message MFBuildingPart
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
}
//-
message MFBuildingFull
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
optional int32 building_id = 3; //id
optional bool ceiling_dead = 6;
@ -362,15 +370,15 @@ message MFBuildingFull
message MFLootPart
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
}
//loot-
message MFLootFull
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 born_pos = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 born_pos = 3; //
optional bool show_anim = 4; //
optional int32 item_id = 6; //id
@ -383,8 +391,8 @@ message MFLootFull
message MFHeroPart
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
}
@ -392,8 +400,8 @@ message MFHeroPart
message MFHeroFull
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
optional int32 heroid = 4; //id
optional int32 master_uniid = 5; //id
optional float health = 10; //
@ -406,16 +414,16 @@ message MFHeroFull
message MFCarPart
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
}
//-
message MFCarFull
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
optional int32 car_id = 4; //id
optional int32 driver = 5; //id
optional int32 heroid = 7; //id
@ -565,8 +573,8 @@ message MFGasData
*/
optional int32 mode = 1; //0:inactive 1:waiting 2:moving 3:jump
optional float duration = 2; //()
optional MFVec2 pos_old = 3; //
optional MFVec2 pos_new = 4; //
optional MFVec3 pos_old = 3; //
optional MFVec3 pos_new = 4; //
optional float rad_old = 5; //
optional float rad_new = 6; //
}
@ -576,8 +584,8 @@ message MFTeamData
{
optional int32 team_id = 61; //Id
optional int32 player_id = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
optional float health = 4; //
optional bool disconnected = 5 [default = false]; //线
optional bool dead = 6 [default = false]; //
@ -607,8 +615,8 @@ message MFBullet
{
optional int32 player_id = 1; //id
optional int32 bullet_id = 2; //id
optional MFVec2 pos = 3; //
optional MFVec2 dir = 4; //
optional MFVec3 pos = 3; //
optional MFVec3 dir = 4; //
optional int32 gun_lv = 5; //
optional int32 bulletskin = 6; //
optional int32 gun_id = 10; //id
@ -635,7 +643,7 @@ message MFShot
message MFExplosion
{
optional int32 item_id = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
optional int32 player_id = 3; //id
optional int32 effect = 4 [default = 0]; // 0 1:
optional float rotate = 5; //
@ -646,7 +654,7 @@ message MFExplosion
message MFSmoke
{
optional int32 item_id = 1; //id
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
optional int32 player_id = 4; //id
optional float time_addition = 5; //()
}
@ -740,14 +748,14 @@ message MFAirDrop
{
optional int32 appear_time = 1; //()
optional int32 box_id = 2; //id
optional MFVec2 pos = 3; //
optional MFVec3 pos = 3; //
}
//
message MFAirRaid
{
optional int32 appear_time = 1; //()
optional MFVec2 pos = 3; //
optional MFVec3 pos = 3; //
optional float rad = 4; //
}
@ -794,16 +802,16 @@ message MFBodyState
//
message MFPlane
{
optional MFVec2 start_point = 1; //
optional MFVec2 end_point = 2; //
optional MFVec2 pos = 3; //
optional MFVec3 start_point = 1; //
optional MFVec3 end_point = 2; //
optional MFVec3 pos = 3; //
}
//
message MFMapCarInfo
{
optional int32 car_id = 1; //id(equip表)
optional MFVec2 pos = 2; //
optional MFVec3 pos = 2; //
}
//
@ -822,8 +830,8 @@ message MFTeamMember
message MFPosition
{
optional int32 obj_uniid = 1; //id
optional MFVec2 pos = 2; //
optional MFVec2 dir = 3; //
optional MFVec3 pos = 2; //
optional MFVec3 dir = 3; //
optional int32 race = 4; //1: 2:
}
@ -1044,8 +1052,8 @@ message CMMove
{
optional int32 seq = 1; //
optional MFVec2 move_dir = 2; //-
optional MFVec2 attack_dir = 3; //()
optional MFVec3 move_dir = 2; //-
optional MFVec3 attack_dir = 3; //()
optional bool shot_start = 4; //-
optional bool shot_hold = 5; //-
@ -1068,7 +1076,7 @@ message CMMove
optional bool use_skill = 17; //使
optional int32 skill_id = 18; //id
optional int32 skill_target_id = 19; //()
optional MFVec2 skill_dir = 20; //
optional MFVec3 skill_dir = 20; //
optional float skill_distance = 21; //
optional float skill_param1 = 22; //
@ -1103,7 +1111,7 @@ message CMImmediateMsg
//
message CMTeamMarkTargetPos
{
optional MFVec2 pos = 1; //
optional MFVec3 pos = 1; //
}
//GM指令
@ -1123,7 +1131,7 @@ message CMDropItem
message CMEmote
{
optional int32 type = 1;
optional MFVec2 pos = 2;
optional MFVec3 pos = 2;
optional bool team_only = 4;
}
@ -1265,7 +1273,7 @@ message SMUpdate
optional MFActivePlayerData active_player_data = 6; //()
optional int32 alive_count = 15; //
optional int32 gas_progress = 16; //,(gas_data.mode == moving时才会发进度)
optional MFVec2 gas_pos_old = 30; //
optional MFVec3 gas_pos_old = 30; //
optional MFGasData gas_data = 17; //
repeated MFTeamData team_data = 18; //
repeated MFBullet bullets = 20; //