eolib-cpp 0.1.0-beta.7
Core C++ library for writing Endless Online applications
Loading...
Searching...
No Matches
eolib::protocol::pub::EifRecord Class Referencefinal

Record of Item data in an Endless Item File. More...

#include <eolib/protocol/pub/structs.hpp>

Inherits eolib::protocol::Serializable.

Public Member Functions

int ByteSize () const noexcept override
 Gets the size of the data that this object was deserialized from.
void Serialize (data::EoWriter &writer) const override
 Serializes this object to the provided writer.
void Deserialize (data::EoReader &reader) override
 Deserializes this object from the provided reader, replacing its current data.
std::string ToString () const override
 Gets a human-readable representation of this object, for debugging purposes.
bool operator== (const EifRecord &other) const
 Compares this object with another for equality.
bool operator!= (const EifRecord &other) const
 Compares this object with another for inequality.
Public Member Functions inherited from eolib::protocol::Serializable
virtual ~Serializable ()=default

Public Attributes

std::string name {}
int graphic_id {}
ItemType type {}
ItemSubtype subtype {}
ItemSpecial special {}
int hp {}
int tp {}
int min_damage {}
int max_damage {}
int accuracy {}
int evade {}
int armor {}
int return_damage {}
int str {}
int intl {}
int wis {}
int agi {}
int con {}
int cha {}
int light_resistance {}
int dark_resistance {}
int earth_resistance {}
int air_resistance {}
int water_resistance {}
int fire_resistance {}
int spec1 {}
 Holds one the following values, depending on item type: scroll_map, doll_graphic, exp_reward, hair_color, effect, key, alcohol_potency.
int spec2 {}
 Holds one the following values, depending on item type: scroll_x, gender.
int spec3 {}
 Holds one the following values, depending on item type: scroll_y.
int level_requirement {}
int class_requirement {}
int str_requirement {}
int int_requirement {}
int wis_requirement {}
int agi_requirement {}
int con_requirement {}
int cha_requirement {}
Element element {}
int element_damage {}
int weight {}
ItemSize size {}

Additional Inherited Members

Protected Member Functions inherited from eolib::protocol::Serializable
 Serializable ()=default
 Serializable (const Serializable &)=default
 Serializable (Serializable &&)=default
Serializable & operator= (const Serializable &)=default
Serializable & operator= (Serializable &&)=default

Detailed Description

Record of Item data in an Endless Item File.

Member Function Documentation

◆ ByteSize()

int eolib::protocol::pub::EifRecord::ByteSize ( ) const
overridevirtualnoexcept

Gets the size of the data that this object was deserialized from.

Returns
the deserialized size in bytes, or 0 for an object that was not deserialized.

Implements eolib::protocol::Serializable.

◆ Serialize()

void eolib::protocol::pub::EifRecord::Serialize ( data::EoWriter & writer) const
overridevirtual

Serializes this object to the provided writer.

Parameters
writerthe writer that the data will be written to.
Exceptions
SerializationErrorif the object's data is invalid for serialization.

Implements eolib::protocol::Serializable.

◆ Deserialize()

void eolib::protocol::pub::EifRecord::Deserialize ( data::EoReader & reader)
overridevirtual

Deserializes this object from the provided reader, replacing its current data.

Parameters
readerthe reader that the data will be read from.

Implements eolib::protocol::Serializable.

◆ ToString()

std::string eolib::protocol::pub::EifRecord::ToString ( ) const
overridevirtual

Gets a human-readable representation of this object, for debugging purposes.

Returns
the object's fields and values, as a string.

Implements eolib::protocol::Serializable.

◆ operator==()

bool eolib::protocol::pub::EifRecord::operator== ( const EifRecord & other) const

Compares this object with another for equality.

The deserialized byte size is not compared.

Parameters
otherthe object to compare with.
Returns
true if all fields are equal, otherwise false.

◆ operator!=()

bool eolib::protocol::pub::EifRecord::operator!= ( const EifRecord & other) const

Compares this object with another for inequality.

The deserialized byte size is not compared.

Parameters
otherthe object to compare with.
Returns
true if any field differs, otherwise false.

Member Data Documentation

◆ name

std::string eolib::protocol::pub::EifRecord::name {}
Note
  • Length must be 252 or less.

◆ graphic_id

int eolib::protocol::pub::EifRecord::graphic_id {}
Note
  • Value range is 0-64008.

◆ type

ItemType eolib::protocol::pub::EifRecord::type {}

◆ subtype

ItemSubtype eolib::protocol::pub::EifRecord::subtype {}

◆ special

ItemSpecial eolib::protocol::pub::EifRecord::special {}

◆ hp

int eolib::protocol::pub::EifRecord::hp {}
Note
  • Value range is 0-64008.

◆ tp

int eolib::protocol::pub::EifRecord::tp {}
Note
  • Value range is 0-64008.

◆ min_damage

int eolib::protocol::pub::EifRecord::min_damage {}
Note
  • Value range is 0-64008.

◆ max_damage

int eolib::protocol::pub::EifRecord::max_damage {}
Note
  • Value range is 0-64008.

◆ accuracy

int eolib::protocol::pub::EifRecord::accuracy {}
Note
  • Value range is 0-64008.

◆ evade

int eolib::protocol::pub::EifRecord::evade {}
Note
  • Value range is 0-64008.

◆ armor

int eolib::protocol::pub::EifRecord::armor {}
Note
  • Value range is 0-64008.

◆ return_damage

int eolib::protocol::pub::EifRecord::return_damage {}
Note
  • Value range is 0-252.

◆ str

int eolib::protocol::pub::EifRecord::str {}
Note
  • Value range is 0-252.

◆ intl

int eolib::protocol::pub::EifRecord::intl {}
Note
  • Value range is 0-252.

◆ wis

int eolib::protocol::pub::EifRecord::wis {}
Note
  • Value range is 0-252.

◆ agi

int eolib::protocol::pub::EifRecord::agi {}
Note
  • Value range is 0-252.

◆ con

int eolib::protocol::pub::EifRecord::con {}
Note
  • Value range is 0-252.

◆ cha

int eolib::protocol::pub::EifRecord::cha {}
Note
  • Value range is 0-252.

◆ light_resistance

int eolib::protocol::pub::EifRecord::light_resistance {}
Note
  • Value range is 0-252.

◆ dark_resistance

int eolib::protocol::pub::EifRecord::dark_resistance {}
Note
  • Value range is 0-252.

◆ earth_resistance

int eolib::protocol::pub::EifRecord::earth_resistance {}
Note
  • Value range is 0-252.

◆ air_resistance

int eolib::protocol::pub::EifRecord::air_resistance {}
Note
  • Value range is 0-252.

◆ water_resistance

int eolib::protocol::pub::EifRecord::water_resistance {}
Note
  • Value range is 0-252.

◆ fire_resistance

int eolib::protocol::pub::EifRecord::fire_resistance {}
Note
  • Value range is 0-252.

◆ spec1

int eolib::protocol::pub::EifRecord::spec1 {}

Holds one the following values, depending on item type: scroll_map, doll_graphic, exp_reward, hair_color, effect, key, alcohol_potency.

Note
  • Value range is 0-16194276.

◆ spec2

int eolib::protocol::pub::EifRecord::spec2 {}

Holds one the following values, depending on item type: scroll_x, gender.

Note
  • Value range is 0-252.

◆ spec3

int eolib::protocol::pub::EifRecord::spec3 {}

Holds one the following values, depending on item type: scroll_y.

Note
  • Value range is 0-252.

◆ level_requirement

int eolib::protocol::pub::EifRecord::level_requirement {}
Note
  • Value range is 0-64008.

◆ class_requirement

int eolib::protocol::pub::EifRecord::class_requirement {}
Note
  • Value range is 0-64008.

◆ str_requirement

int eolib::protocol::pub::EifRecord::str_requirement {}
Note
  • Value range is 0-64008.

◆ int_requirement

int eolib::protocol::pub::EifRecord::int_requirement {}
Note
  • Value range is 0-64008.

◆ wis_requirement

int eolib::protocol::pub::EifRecord::wis_requirement {}
Note
  • Value range is 0-64008.

◆ agi_requirement

int eolib::protocol::pub::EifRecord::agi_requirement {}
Note
  • Value range is 0-64008.

◆ con_requirement

int eolib::protocol::pub::EifRecord::con_requirement {}
Note
  • Value range is 0-64008.

◆ cha_requirement

int eolib::protocol::pub::EifRecord::cha_requirement {}
Note
  • Value range is 0-64008.

◆ element

Element eolib::protocol::pub::EifRecord::element {}

◆ element_damage

int eolib::protocol::pub::EifRecord::element_damage {}
Note
  • Value range is 0-252.

◆ weight

int eolib::protocol::pub::EifRecord::weight {}
Note
  • Value range is 0-252.

◆ size

ItemSize eolib::protocol::pub::EifRecord::size {}