Crate rakata_generics

Crate rakata_generics 

Source
Expand description

Higher-level typed wrappers around GFF-backed game resources.

This crate hosts strongly typed structures such as ARE, UTC, and related conversion helpers.

§Clone discipline in to_gff() methods

Serialization methods take &self and must hand owned data to GffValue variants (which store owned String, GffLocalizedString, Vec<_>, etc.). Cloning is necessary because &self cannot move fields out. This is a uniform pattern across all typed generics and is not flagged per-clone.

Re-exports§

pub use are::read_are;
pub use are::read_are_from_bytes;
pub use are::write_are;
pub use are::write_are_to_vec;
pub use are::Are;
pub use are::AreError;
pub use are::AreMap;
pub use are::AreMiniGame;
pub use are::AreMiniGameEnemy;
pub use are::AreMiniGameModel;
pub use are::AreMiniGameMouse;
pub use are::AreMiniGameObstacle;
pub use are::AreMiniGamePlayer;
pub use are::AreRoom;
pub use dlg::read_dlg;
pub use dlg::read_dlg_from_bytes;
pub use dlg::write_dlg;
pub use dlg::write_dlg_to_vec;
pub use dlg::Dlg;
pub use dlg::DlgAnimation;
pub use dlg::DlgError;
pub use dlg::DlgNode;
pub use dlg::DlgStunt;
pub use git::read_git;
pub use git::read_git_from_bytes;
pub use git::write_git;
pub use git::write_git_to_vec;
pub use git::Git;
pub use git::GitAreaEffect;
pub use git::GitAreaProperties;
pub use git::GitCamera;
pub use git::GitCreature;
pub use git::GitDoor;
pub use git::GitEncounter;
pub use git::GitEncounterPoint;
pub use git::GitError;
pub use git::GitItem;
pub use git::GitPlaceable;
pub use git::GitSound;
pub use git::GitSpawnPoint;
pub use git::GitStore;
pub use git::GitTrigger;
pub use git::GitWaypoint;
pub use ifo::read_ifo;
pub use ifo::read_ifo_from_bytes;
pub use ifo::write_ifo;
pub use ifo::write_ifo_to_vec;
pub use ifo::Ifo;
pub use ifo::IfoArea;
pub use ifo::IfoCutScene;
pub use ifo::IfoError;
pub use ifo::IfoExpansion;
pub use ifo::IfoPlayer;
pub use ifo::IfoToken;
pub use shared::CommonTrapScripts;
pub use shared::GitTriggerPoint;
pub use shared::InventoryGridPosition;
pub use shared::TrapSettings;
pub use utc::read_utc;
pub use utc::read_utc_from_bytes;
pub use utc::write_utc;
pub use utc::write_utc_to_vec;
pub use utc::Utc;
pub use utc::UtcClass;
pub use utc::UtcError;
pub use utc::UtcSkills;
pub use utd::read_utd;
pub use utd::read_utd_from_bytes;
pub use utd::write_utd;
pub use utd::write_utd_to_vec;
pub use utd::Utd;
pub use utd::UtdError;
pub use ute::read_ute;
pub use ute::read_ute_from_bytes;
pub use ute::write_ute;
pub use ute::write_ute_to_vec;
pub use ute::Ute;
pub use ute::UteAreaEntry;
pub use ute::UteCreature;
pub use ute::UteError;
pub use ute::UteGeometryVertex;
pub use ute::UteSpawnEntry;
pub use ute::UteSpawnPoint;
pub use uti::read_uti;
pub use uti::read_uti_from_bytes;
pub use uti::write_uti;
pub use uti::write_uti_to_vec;
pub use uti::Uti;
pub use uti::UtiError;
pub use uti::UtiProperty;
pub use utm::read_utm;
pub use utm::read_utm_from_bytes;
pub use utm::write_utm;
pub use utm::write_utm_to_vec;
pub use utm::Utm;
pub use utm::UtmError;
pub use utm::UtmInventoryItem;
pub use utp::read_utp;
pub use utp::read_utp_from_bytes;
pub use utp::write_utp;
pub use utp::write_utp_to_vec;
pub use utp::Utp;
pub use utp::UtpError;
pub use utp::UtpInventoryItem;
pub use uts::read_uts;
pub use uts::read_uts_from_bytes;
pub use uts::write_uts;
pub use uts::write_uts_to_vec;
pub use uts::Uts;
pub use uts::UtsError;
pub use uts::UtsSound;
pub use utt::read_utt;
pub use utt::read_utt_from_bytes;
pub use utt::write_utt;
pub use utt::write_utt_to_vec;
pub use utt::Utt;
pub use utt::UttError;
pub use utw::read_utw;
pub use utw::read_utw_from_bytes;
pub use utw::write_utw;
pub use utw::write_utw_to_vec;
pub use utw::Utw;
pub use utw::UtwError;

Modules§

are
Typed ARE (.are) model and conversion helpers. ARE (.are) typed generic wrapper.
dlg
Typed DLG (.dlg) model and conversion helpers. DLG (.dlg) typed generic wrapper.
git
Typed GIT (.git) model and conversion helpers. GIT (.git) typed generic wrapper.
ifo
Typed IFO (.ifo) model and conversion helpers. IFO (.ifo) typed generic wrapper.
shared
Shared typed components reused across generic wrappers. Shared typed building blocks used across multiple GFF generic wrappers.
utc
Typed UTC (.utc) model and conversion helpers. UTC (.utc) typed generic wrapper.
utd
Typed UTD (.utd) model and conversion helpers. UTD (.utd) typed generic wrapper.
ute
Typed UTE (.ute) model and conversion helpers. UTE (.ute) typed generic wrapper.
uti
Typed UTI (.uti) model and conversion helpers. UTI (.uti) typed generic wrapper.
utm
Typed UTM (.utm) model and conversion helpers. UTM (.utm) typed generic wrapper.
utp
Typed UTP (.utp) model and conversion helpers. UTP (.utp) typed generic wrapper.
uts
Typed UTS (.uts) model and conversion helpers. UTS (.uts) typed generic wrapper.
utt
Typed UTT (.utt) model and conversion helpers. UTT (.utt) typed generic wrapper.
utw
Typed UTW (.utw) model and conversion helpers. UTW (.utw) typed generic wrapper.

Constants§

PORT_STATUS
Current implementation status for this crate.