mirror of
https://github.com/TombEngine/TombEngine.git
synced 2025-05-13 05:57:05 +03:00
Update savegame schema
This commit is contained in:
parent
d4cde2886f
commit
aa0e51ae71
3 changed files with 156 additions and 174 deletions
|
@ -614,7 +614,6 @@ bool SaveGame::Save(int slot)
|
|||
}
|
||||
|
||||
Save::ItemBuilder serializedItem{ fbb };
|
||||
|
||||
serializedItem.add_next_item(itemToSerialize.NextItem);
|
||||
serializedItem.add_next_item_active(itemToSerialize.NextActive);
|
||||
serializedItem.add_anim_number(itemToSerialize.Animation.AnimNumber - obj->animIndex);
|
||||
|
@ -622,7 +621,6 @@ bool SaveGame::Save(int slot)
|
|||
serializedItem.add_box_number(itemToSerialize.BoxNumber);
|
||||
serializedItem.add_carried_item(itemToSerialize.CarriedItem);
|
||||
serializedItem.add_active_state(itemToSerialize.Animation.ActiveState);
|
||||
serializedItem.add_vertical_velocity(itemToSerialize.Animation.Velocity.y);
|
||||
serializedItem.add_flags(itemToSerialize.Flags);
|
||||
serializedItem.add_floor(itemToSerialize.Floor);
|
||||
serializedItem.add_frame_number(itemToSerialize.Animation.FrameNumber);
|
||||
|
@ -634,7 +632,7 @@ bool SaveGame::Save(int slot)
|
|||
serializedItem.add_pose(&FromPHD(itemToSerialize.Pose));
|
||||
serializedItem.add_required_state(itemToSerialize.Animation.RequiredState);
|
||||
serializedItem.add_room_number(itemToSerialize.RoomNumber);
|
||||
serializedItem.add_velocity(itemToSerialize.Animation.Velocity.z);
|
||||
serializedItem.add_velocity(&FromVector3(itemToSerialize.Animation.Velocity));
|
||||
serializedItem.add_timer(itemToSerialize.Timer);
|
||||
serializedItem.add_color(&FromVector4(itemToSerialize.Color));
|
||||
serializedItem.add_touch_bits(itemToSerialize.TouchBits);
|
||||
|
@ -1331,8 +1329,7 @@ bool SaveGame::Load(int slot)
|
|||
item->Pose = ToPHD(savedItem->pose());
|
||||
item->RoomNumber = savedItem->room_number();
|
||||
|
||||
item->Animation.Velocity.z = savedItem->velocity();
|
||||
item->Animation.Velocity.y = savedItem->vertical_velocity();
|
||||
item->Animation.Velocity = ToVector3(savedItem->velocity());
|
||||
|
||||
if (item->ObjectNumber == ID_LARA && !dynamicItem)
|
||||
{
|
||||
|
|
|
@ -381,18 +381,18 @@ struct KeyValPair::Traits {
|
|||
|
||||
struct ItemT : public flatbuffers::NativeTable {
|
||||
typedef Item TableType;
|
||||
int32_t active_state = 0;
|
||||
int32_t anim_number = 0;
|
||||
int32_t frame_number = 0;
|
||||
bool is_airborne = false;
|
||||
int32_t required_state = 0;
|
||||
int32_t target_state = 0;
|
||||
std::unique_ptr<TEN::Save::Vector3> velocity{};
|
||||
int32_t floor = 0;
|
||||
int32_t touch_bits = 0;
|
||||
int32_t mesh_bits = 0;
|
||||
int32_t object_id = 0;
|
||||
int32_t active_state = 0;
|
||||
int32_t target_state = 0;
|
||||
int32_t required_state = 0;
|
||||
int32_t anim_number = 0;
|
||||
int32_t frame_number = 0;
|
||||
int32_t room_number = 0;
|
||||
int32_t velocity = 0;
|
||||
int32_t vertical_velocity = 0;
|
||||
int32_t hit_points = 0;
|
||||
int32_t box_number = 0;
|
||||
int32_t timer = 0;
|
||||
|
@ -408,7 +408,6 @@ struct ItemT : public flatbuffers::NativeTable {
|
|||
bool triggered = false;
|
||||
bool active = false;
|
||||
int32_t status = 0;
|
||||
bool is_airborne = false;
|
||||
bool hit_stauts = false;
|
||||
bool collidable = false;
|
||||
bool looked_at = false;
|
||||
|
@ -427,18 +426,18 @@ struct Item FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
|||
typedef ItemBuilder Builder;
|
||||
struct Traits;
|
||||
enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
|
||||
VT_FLOOR = 4,
|
||||
VT_TOUCH_BITS = 6,
|
||||
VT_MESH_BITS = 8,
|
||||
VT_OBJECT_ID = 10,
|
||||
VT_ACTIVE_STATE = 12,
|
||||
VT_ACTIVE_STATE = 4,
|
||||
VT_ANIM_NUMBER = 6,
|
||||
VT_FRAME_NUMBER = 8,
|
||||
VT_IS_AIRBORNE = 10,
|
||||
VT_REQUIRED_STATE = 12,
|
||||
VT_TARGET_STATE = 14,
|
||||
VT_REQUIRED_STATE = 16,
|
||||
VT_ANIM_NUMBER = 18,
|
||||
VT_FRAME_NUMBER = 20,
|
||||
VT_ROOM_NUMBER = 22,
|
||||
VT_VELOCITY = 24,
|
||||
VT_VERTICAL_VELOCITY = 26,
|
||||
VT_VELOCITY = 16,
|
||||
VT_FLOOR = 18,
|
||||
VT_TOUCH_BITS = 20,
|
||||
VT_MESH_BITS = 22,
|
||||
VT_OBJECT_ID = 24,
|
||||
VT_ROOM_NUMBER = 26,
|
||||
VT_HIT_POINTS = 28,
|
||||
VT_BOX_NUMBER = 30,
|
||||
VT_TIMER = 32,
|
||||
|
@ -454,20 +453,40 @@ struct Item FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
|||
VT_TRIGGERED = 52,
|
||||
VT_ACTIVE = 54,
|
||||
VT_STATUS = 56,
|
||||
VT_IS_AIRBORNE = 58,
|
||||
VT_HIT_STAUTS = 60,
|
||||
VT_COLLIDABLE = 62,
|
||||
VT_LOOKED_AT = 64,
|
||||
VT_AI_BITS = 66,
|
||||
VT_SWAP_MESH_FLAGS = 68,
|
||||
VT_DATA_TYPE = 70,
|
||||
VT_DATA = 72,
|
||||
VT_LUA_NAME = 74,
|
||||
VT_LUA_ON_KILLED_NAME = 76,
|
||||
VT_LUA_ON_HIT_NAME = 78,
|
||||
VT_LUA_ON_COLLIDED_WITH_OBJECT_NAME = 80,
|
||||
VT_LUA_ON_COLLIDED_WITH_ROOM_NAME = 82
|
||||
VT_HIT_STAUTS = 58,
|
||||
VT_COLLIDABLE = 60,
|
||||
VT_LOOKED_AT = 62,
|
||||
VT_AI_BITS = 64,
|
||||
VT_SWAP_MESH_FLAGS = 66,
|
||||
VT_DATA_TYPE = 68,
|
||||
VT_DATA = 70,
|
||||
VT_LUA_NAME = 72,
|
||||
VT_LUA_ON_KILLED_NAME = 74,
|
||||
VT_LUA_ON_HIT_NAME = 76,
|
||||
VT_LUA_ON_COLLIDED_WITH_OBJECT_NAME = 78,
|
||||
VT_LUA_ON_COLLIDED_WITH_ROOM_NAME = 80
|
||||
};
|
||||
int32_t active_state() const {
|
||||
return GetField<int32_t>(VT_ACTIVE_STATE, 0);
|
||||
}
|
||||
int32_t anim_number() const {
|
||||
return GetField<int32_t>(VT_ANIM_NUMBER, 0);
|
||||
}
|
||||
int32_t frame_number() const {
|
||||
return GetField<int32_t>(VT_FRAME_NUMBER, 0);
|
||||
}
|
||||
bool is_airborne() const {
|
||||
return GetField<uint8_t>(VT_IS_AIRBORNE, 0) != 0;
|
||||
}
|
||||
int32_t required_state() const {
|
||||
return GetField<int32_t>(VT_REQUIRED_STATE, 0);
|
||||
}
|
||||
int32_t target_state() const {
|
||||
return GetField<int32_t>(VT_TARGET_STATE, 0);
|
||||
}
|
||||
const TEN::Save::Vector3 *velocity() const {
|
||||
return GetStruct<const TEN::Save::Vector3 *>(VT_VELOCITY);
|
||||
}
|
||||
int32_t floor() const {
|
||||
return GetField<int32_t>(VT_FLOOR, 0);
|
||||
}
|
||||
|
@ -480,30 +499,9 @@ struct Item FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
|||
int32_t object_id() const {
|
||||
return GetField<int32_t>(VT_OBJECT_ID, 0);
|
||||
}
|
||||
int32_t active_state() const {
|
||||
return GetField<int32_t>(VT_ACTIVE_STATE, 0);
|
||||
}
|
||||
int32_t target_state() const {
|
||||
return GetField<int32_t>(VT_TARGET_STATE, 0);
|
||||
}
|
||||
int32_t required_state() const {
|
||||
return GetField<int32_t>(VT_REQUIRED_STATE, 0);
|
||||
}
|
||||
int32_t anim_number() const {
|
||||
return GetField<int32_t>(VT_ANIM_NUMBER, 0);
|
||||
}
|
||||
int32_t frame_number() const {
|
||||
return GetField<int32_t>(VT_FRAME_NUMBER, 0);
|
||||
}
|
||||
int32_t room_number() const {
|
||||
return GetField<int32_t>(VT_ROOM_NUMBER, 0);
|
||||
}
|
||||
int32_t velocity() const {
|
||||
return GetField<int32_t>(VT_VELOCITY, 0);
|
||||
}
|
||||
int32_t vertical_velocity() const {
|
||||
return GetField<int32_t>(VT_VERTICAL_VELOCITY, 0);
|
||||
}
|
||||
int32_t hit_points() const {
|
||||
return GetField<int32_t>(VT_HIT_POINTS, 0);
|
||||
}
|
||||
|
@ -549,9 +547,6 @@ struct Item FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
|||
int32_t status() const {
|
||||
return GetField<int32_t>(VT_STATUS, 0);
|
||||
}
|
||||
bool is_airborne() const {
|
||||
return GetField<uint8_t>(VT_IS_AIRBORNE, 0) != 0;
|
||||
}
|
||||
bool hit_stauts() const {
|
||||
return GetField<uint8_t>(VT_HIT_STAUTS, 0) != 0;
|
||||
}
|
||||
|
@ -657,18 +652,18 @@ struct Item FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
|||
}
|
||||
bool Verify(flatbuffers::Verifier &verifier) const {
|
||||
return VerifyTableStart(verifier) &&
|
||||
VerifyField<int32_t>(verifier, VT_ACTIVE_STATE) &&
|
||||
VerifyField<int32_t>(verifier, VT_ANIM_NUMBER) &&
|
||||
VerifyField<int32_t>(verifier, VT_FRAME_NUMBER) &&
|
||||
VerifyField<uint8_t>(verifier, VT_IS_AIRBORNE) &&
|
||||
VerifyField<int32_t>(verifier, VT_REQUIRED_STATE) &&
|
||||
VerifyField<int32_t>(verifier, VT_TARGET_STATE) &&
|
||||
VerifyField<TEN::Save::Vector3>(verifier, VT_VELOCITY) &&
|
||||
VerifyField<int32_t>(verifier, VT_FLOOR) &&
|
||||
VerifyField<int32_t>(verifier, VT_TOUCH_BITS) &&
|
||||
VerifyField<int32_t>(verifier, VT_MESH_BITS) &&
|
||||
VerifyField<int32_t>(verifier, VT_OBJECT_ID) &&
|
||||
VerifyField<int32_t>(verifier, VT_ACTIVE_STATE) &&
|
||||
VerifyField<int32_t>(verifier, VT_TARGET_STATE) &&
|
||||
VerifyField<int32_t>(verifier, VT_REQUIRED_STATE) &&
|
||||
VerifyField<int32_t>(verifier, VT_ANIM_NUMBER) &&
|
||||
VerifyField<int32_t>(verifier, VT_FRAME_NUMBER) &&
|
||||
VerifyField<int32_t>(verifier, VT_ROOM_NUMBER) &&
|
||||
VerifyField<int32_t>(verifier, VT_VELOCITY) &&
|
||||
VerifyField<int32_t>(verifier, VT_VERTICAL_VELOCITY) &&
|
||||
VerifyField<int32_t>(verifier, VT_HIT_POINTS) &&
|
||||
VerifyField<int32_t>(verifier, VT_BOX_NUMBER) &&
|
||||
VerifyField<int32_t>(verifier, VT_TIMER) &&
|
||||
|
@ -685,7 +680,6 @@ struct Item FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
|||
VerifyField<uint8_t>(verifier, VT_TRIGGERED) &&
|
||||
VerifyField<uint8_t>(verifier, VT_ACTIVE) &&
|
||||
VerifyField<int32_t>(verifier, VT_STATUS) &&
|
||||
VerifyField<uint8_t>(verifier, VT_IS_AIRBORNE) &&
|
||||
VerifyField<uint8_t>(verifier, VT_HIT_STAUTS) &&
|
||||
VerifyField<uint8_t>(verifier, VT_COLLIDABLE) &&
|
||||
VerifyField<uint8_t>(verifier, VT_LOOKED_AT) &&
|
||||
|
@ -803,6 +797,27 @@ struct ItemBuilder {
|
|||
typedef Item Table;
|
||||
flatbuffers::FlatBufferBuilder &fbb_;
|
||||
flatbuffers::uoffset_t start_;
|
||||
void add_active_state(int32_t active_state) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_ACTIVE_STATE, active_state, 0);
|
||||
}
|
||||
void add_anim_number(int32_t anim_number) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_ANIM_NUMBER, anim_number, 0);
|
||||
}
|
||||
void add_frame_number(int32_t frame_number) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_FRAME_NUMBER, frame_number, 0);
|
||||
}
|
||||
void add_is_airborne(bool is_airborne) {
|
||||
fbb_.AddElement<uint8_t>(Item::VT_IS_AIRBORNE, static_cast<uint8_t>(is_airborne), 0);
|
||||
}
|
||||
void add_required_state(int32_t required_state) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_REQUIRED_STATE, required_state, 0);
|
||||
}
|
||||
void add_target_state(int32_t target_state) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_TARGET_STATE, target_state, 0);
|
||||
}
|
||||
void add_velocity(const TEN::Save::Vector3 *velocity) {
|
||||
fbb_.AddStruct(Item::VT_VELOCITY, velocity);
|
||||
}
|
||||
void add_floor(int32_t floor) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_FLOOR, floor, 0);
|
||||
}
|
||||
|
@ -815,30 +830,9 @@ struct ItemBuilder {
|
|||
void add_object_id(int32_t object_id) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_OBJECT_ID, object_id, 0);
|
||||
}
|
||||
void add_active_state(int32_t active_state) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_ACTIVE_STATE, active_state, 0);
|
||||
}
|
||||
void add_target_state(int32_t target_state) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_TARGET_STATE, target_state, 0);
|
||||
}
|
||||
void add_required_state(int32_t required_state) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_REQUIRED_STATE, required_state, 0);
|
||||
}
|
||||
void add_anim_number(int32_t anim_number) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_ANIM_NUMBER, anim_number, 0);
|
||||
}
|
||||
void add_frame_number(int32_t frame_number) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_FRAME_NUMBER, frame_number, 0);
|
||||
}
|
||||
void add_room_number(int32_t room_number) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_ROOM_NUMBER, room_number, 0);
|
||||
}
|
||||
void add_velocity(int32_t velocity) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_VELOCITY, velocity, 0);
|
||||
}
|
||||
void add_vertical_velocity(int32_t vertical_velocity) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_VERTICAL_VELOCITY, vertical_velocity, 0);
|
||||
}
|
||||
void add_hit_points(int32_t hit_points) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_HIT_POINTS, hit_points, 0);
|
||||
}
|
||||
|
@ -884,9 +878,6 @@ struct ItemBuilder {
|
|||
void add_status(int32_t status) {
|
||||
fbb_.AddElement<int32_t>(Item::VT_STATUS, status, 0);
|
||||
}
|
||||
void add_is_airborne(bool is_airborne) {
|
||||
fbb_.AddElement<uint8_t>(Item::VT_IS_AIRBORNE, static_cast<uint8_t>(is_airborne), 0);
|
||||
}
|
||||
void add_hit_stauts(bool hit_stauts) {
|
||||
fbb_.AddElement<uint8_t>(Item::VT_HIT_STAUTS, static_cast<uint8_t>(hit_stauts), 0);
|
||||
}
|
||||
|
@ -936,18 +927,18 @@ struct ItemBuilder {
|
|||
|
||||
inline flatbuffers::Offset<Item> CreateItem(
|
||||
flatbuffers::FlatBufferBuilder &_fbb,
|
||||
int32_t active_state = 0,
|
||||
int32_t anim_number = 0,
|
||||
int32_t frame_number = 0,
|
||||
bool is_airborne = false,
|
||||
int32_t required_state = 0,
|
||||
int32_t target_state = 0,
|
||||
const TEN::Save::Vector3 *velocity = 0,
|
||||
int32_t floor = 0,
|
||||
int32_t touch_bits = 0,
|
||||
int32_t mesh_bits = 0,
|
||||
int32_t object_id = 0,
|
||||
int32_t active_state = 0,
|
||||
int32_t target_state = 0,
|
||||
int32_t required_state = 0,
|
||||
int32_t anim_number = 0,
|
||||
int32_t frame_number = 0,
|
||||
int32_t room_number = 0,
|
||||
int32_t velocity = 0,
|
||||
int32_t vertical_velocity = 0,
|
||||
int32_t hit_points = 0,
|
||||
int32_t box_number = 0,
|
||||
int32_t timer = 0,
|
||||
|
@ -963,7 +954,6 @@ inline flatbuffers::Offset<Item> CreateItem(
|
|||
bool triggered = false,
|
||||
bool active = false,
|
||||
int32_t status = 0,
|
||||
bool is_airborne = false,
|
||||
bool hit_stauts = false,
|
||||
bool collidable = false,
|
||||
bool looked_at = false,
|
||||
|
@ -998,25 +988,24 @@ inline flatbuffers::Offset<Item> CreateItem(
|
|||
builder_.add_timer(timer);
|
||||
builder_.add_box_number(box_number);
|
||||
builder_.add_hit_points(hit_points);
|
||||
builder_.add_vertical_velocity(vertical_velocity);
|
||||
builder_.add_velocity(velocity);
|
||||
builder_.add_room_number(room_number);
|
||||
builder_.add_frame_number(frame_number);
|
||||
builder_.add_anim_number(anim_number);
|
||||
builder_.add_required_state(required_state);
|
||||
builder_.add_target_state(target_state);
|
||||
builder_.add_active_state(active_state);
|
||||
builder_.add_object_id(object_id);
|
||||
builder_.add_mesh_bits(mesh_bits);
|
||||
builder_.add_touch_bits(touch_bits);
|
||||
builder_.add_floor(floor);
|
||||
builder_.add_velocity(velocity);
|
||||
builder_.add_target_state(target_state);
|
||||
builder_.add_required_state(required_state);
|
||||
builder_.add_frame_number(frame_number);
|
||||
builder_.add_anim_number(anim_number);
|
||||
builder_.add_active_state(active_state);
|
||||
builder_.add_data_type(data_type);
|
||||
builder_.add_looked_at(looked_at);
|
||||
builder_.add_collidable(collidable);
|
||||
builder_.add_hit_stauts(hit_stauts);
|
||||
builder_.add_is_airborne(is_airborne);
|
||||
builder_.add_active(active);
|
||||
builder_.add_triggered(triggered);
|
||||
builder_.add_is_airborne(is_airborne);
|
||||
return builder_.Finish();
|
||||
}
|
||||
|
||||
|
@ -1027,18 +1016,18 @@ struct Item::Traits {
|
|||
|
||||
inline flatbuffers::Offset<Item> CreateItemDirect(
|
||||
flatbuffers::FlatBufferBuilder &_fbb,
|
||||
int32_t active_state = 0,
|
||||
int32_t anim_number = 0,
|
||||
int32_t frame_number = 0,
|
||||
bool is_airborne = false,
|
||||
int32_t required_state = 0,
|
||||
int32_t target_state = 0,
|
||||
const TEN::Save::Vector3 *velocity = 0,
|
||||
int32_t floor = 0,
|
||||
int32_t touch_bits = 0,
|
||||
int32_t mesh_bits = 0,
|
||||
int32_t object_id = 0,
|
||||
int32_t active_state = 0,
|
||||
int32_t target_state = 0,
|
||||
int32_t required_state = 0,
|
||||
int32_t anim_number = 0,
|
||||
int32_t frame_number = 0,
|
||||
int32_t room_number = 0,
|
||||
int32_t velocity = 0,
|
||||
int32_t vertical_velocity = 0,
|
||||
int32_t hit_points = 0,
|
||||
int32_t box_number = 0,
|
||||
int32_t timer = 0,
|
||||
|
@ -1054,7 +1043,6 @@ inline flatbuffers::Offset<Item> CreateItemDirect(
|
|||
bool triggered = false,
|
||||
bool active = false,
|
||||
int32_t status = 0,
|
||||
bool is_airborne = false,
|
||||
bool hit_stauts = false,
|
||||
bool collidable = false,
|
||||
bool looked_at = false,
|
||||
|
@ -1075,18 +1063,18 @@ inline flatbuffers::Offset<Item> CreateItemDirect(
|
|||
auto lua_on_collided_with_room_name__ = lua_on_collided_with_room_name ? _fbb.CreateString(lua_on_collided_with_room_name) : 0;
|
||||
return TEN::Save::CreateItem(
|
||||
_fbb,
|
||||
active_state,
|
||||
anim_number,
|
||||
frame_number,
|
||||
is_airborne,
|
||||
required_state,
|
||||
target_state,
|
||||
velocity,
|
||||
floor,
|
||||
touch_bits,
|
||||
mesh_bits,
|
||||
object_id,
|
||||
active_state,
|
||||
target_state,
|
||||
required_state,
|
||||
anim_number,
|
||||
frame_number,
|
||||
room_number,
|
||||
velocity,
|
||||
vertical_velocity,
|
||||
hit_points,
|
||||
box_number,
|
||||
timer,
|
||||
|
@ -1102,7 +1090,6 @@ inline flatbuffers::Offset<Item> CreateItemDirect(
|
|||
triggered,
|
||||
active,
|
||||
status,
|
||||
is_airborne,
|
||||
hit_stauts,
|
||||
collidable,
|
||||
looked_at,
|
||||
|
@ -6413,18 +6400,18 @@ inline ItemT *Item::UnPack(const flatbuffers::resolver_function_t *_resolver) co
|
|||
inline void Item::UnPackTo(ItemT *_o, const flatbuffers::resolver_function_t *_resolver) const {
|
||||
(void)_o;
|
||||
(void)_resolver;
|
||||
{ auto _e = active_state(); _o->active_state = _e; }
|
||||
{ auto _e = anim_number(); _o->anim_number = _e; }
|
||||
{ auto _e = frame_number(); _o->frame_number = _e; }
|
||||
{ auto _e = is_airborne(); _o->is_airborne = _e; }
|
||||
{ auto _e = required_state(); _o->required_state = _e; }
|
||||
{ auto _e = target_state(); _o->target_state = _e; }
|
||||
{ auto _e = velocity(); if (_e) _o->velocity = std::unique_ptr<TEN::Save::Vector3>(new TEN::Save::Vector3(*_e)); }
|
||||
{ auto _e = floor(); _o->floor = _e; }
|
||||
{ auto _e = touch_bits(); _o->touch_bits = _e; }
|
||||
{ auto _e = mesh_bits(); _o->mesh_bits = _e; }
|
||||
{ auto _e = object_id(); _o->object_id = _e; }
|
||||
{ auto _e = active_state(); _o->active_state = _e; }
|
||||
{ auto _e = target_state(); _o->target_state = _e; }
|
||||
{ auto _e = required_state(); _o->required_state = _e; }
|
||||
{ auto _e = anim_number(); _o->anim_number = _e; }
|
||||
{ auto _e = frame_number(); _o->frame_number = _e; }
|
||||
{ auto _e = room_number(); _o->room_number = _e; }
|
||||
{ auto _e = velocity(); _o->velocity = _e; }
|
||||
{ auto _e = vertical_velocity(); _o->vertical_velocity = _e; }
|
||||
{ auto _e = hit_points(); _o->hit_points = _e; }
|
||||
{ auto _e = box_number(); _o->box_number = _e; }
|
||||
{ auto _e = timer(); _o->timer = _e; }
|
||||
|
@ -6440,7 +6427,6 @@ inline void Item::UnPackTo(ItemT *_o, const flatbuffers::resolver_function_t *_r
|
|||
{ auto _e = triggered(); _o->triggered = _e; }
|
||||
{ auto _e = active(); _o->active = _e; }
|
||||
{ auto _e = status(); _o->status = _e; }
|
||||
{ auto _e = is_airborne(); _o->is_airborne = _e; }
|
||||
{ auto _e = hit_stauts(); _o->hit_stauts = _e; }
|
||||
{ auto _e = collidable(); _o->collidable = _e; }
|
||||
{ auto _e = looked_at(); _o->looked_at = _e; }
|
||||
|
@ -6463,18 +6449,18 @@ inline flatbuffers::Offset<Item> CreateItem(flatbuffers::FlatBufferBuilder &_fbb
|
|||
(void)_rehasher;
|
||||
(void)_o;
|
||||
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ItemT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
|
||||
auto _active_state = _o->active_state;
|
||||
auto _anim_number = _o->anim_number;
|
||||
auto _frame_number = _o->frame_number;
|
||||
auto _is_airborne = _o->is_airborne;
|
||||
auto _required_state = _o->required_state;
|
||||
auto _target_state = _o->target_state;
|
||||
auto _velocity = _o->velocity ? _o->velocity.get() : 0;
|
||||
auto _floor = _o->floor;
|
||||
auto _touch_bits = _o->touch_bits;
|
||||
auto _mesh_bits = _o->mesh_bits;
|
||||
auto _object_id = _o->object_id;
|
||||
auto _active_state = _o->active_state;
|
||||
auto _target_state = _o->target_state;
|
||||
auto _required_state = _o->required_state;
|
||||
auto _anim_number = _o->anim_number;
|
||||
auto _frame_number = _o->frame_number;
|
||||
auto _room_number = _o->room_number;
|
||||
auto _velocity = _o->velocity;
|
||||
auto _vertical_velocity = _o->vertical_velocity;
|
||||
auto _hit_points = _o->hit_points;
|
||||
auto _box_number = _o->box_number;
|
||||
auto _timer = _o->timer;
|
||||
|
@ -6490,7 +6476,6 @@ inline flatbuffers::Offset<Item> CreateItem(flatbuffers::FlatBufferBuilder &_fbb
|
|||
auto _triggered = _o->triggered;
|
||||
auto _active = _o->active;
|
||||
auto _status = _o->status;
|
||||
auto _is_airborne = _o->is_airborne;
|
||||
auto _hit_stauts = _o->hit_stauts;
|
||||
auto _collidable = _o->collidable;
|
||||
auto _looked_at = _o->looked_at;
|
||||
|
@ -6505,18 +6490,18 @@ inline flatbuffers::Offset<Item> CreateItem(flatbuffers::FlatBufferBuilder &_fbb
|
|||
auto _lua_on_collided_with_room_name = _o->lua_on_collided_with_room_name.empty() ? _fbb.CreateSharedString("") : _fbb.CreateString(_o->lua_on_collided_with_room_name);
|
||||
return TEN::Save::CreateItem(
|
||||
_fbb,
|
||||
_active_state,
|
||||
_anim_number,
|
||||
_frame_number,
|
||||
_is_airborne,
|
||||
_required_state,
|
||||
_target_state,
|
||||
_velocity,
|
||||
_floor,
|
||||
_touch_bits,
|
||||
_mesh_bits,
|
||||
_object_id,
|
||||
_active_state,
|
||||
_target_state,
|
||||
_required_state,
|
||||
_anim_number,
|
||||
_frame_number,
|
||||
_room_number,
|
||||
_velocity,
|
||||
_vertical_velocity,
|
||||
_hit_points,
|
||||
_box_number,
|
||||
_timer,
|
||||
|
@ -6532,7 +6517,6 @@ inline flatbuffers::Offset<Item> CreateItem(flatbuffers::FlatBufferBuilder &_fbb
|
|||
_triggered,
|
||||
_active,
|
||||
_status,
|
||||
_is_airborne,
|
||||
_hit_stauts,
|
||||
_collidable,
|
||||
_looked_at,
|
||||
|
|
|
@ -1,23 +1,25 @@
|
|||
include "ten_itemdata.fbs";
|
||||
namespace TEN.Save;
|
||||
|
||||
struct RoomVector {
|
||||
room: uint32;
|
||||
y_location: uint32;
|
||||
}
|
||||
|
||||
table Item {
|
||||
active_state: int32;
|
||||
anim_number: int32;
|
||||
frame_number: int32;
|
||||
is_airborne: bool;
|
||||
required_state: int32;
|
||||
target_state: int32;
|
||||
velocity: Vector3;
|
||||
|
||||
floor: int;
|
||||
touch_bits: int32;
|
||||
mesh_bits: int32;
|
||||
object_id: int32;
|
||||
active_state: int32;
|
||||
target_state: int32;
|
||||
required_state: int32;
|
||||
anim_number: int32;
|
||||
frame_number: int32;
|
||||
room_number: int32;
|
||||
velocity: int32;
|
||||
vertical_velocity: int32;
|
||||
hit_points: int32;
|
||||
box_number: int32;
|
||||
timer: int32;
|
||||
|
@ -33,7 +35,6 @@ table Item {
|
|||
triggered: bool;
|
||||
active: bool;
|
||||
status: int32;
|
||||
is_airborne: bool;
|
||||
hit_stauts: bool;
|
||||
collidable: bool;
|
||||
looked_at: bool;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue