From c8ebe009e78aa0b68a410315ff39796318cef977 Mon Sep 17 00:00:00 2001 From: Marrub Date: Mon, 1 Apr 2019 04:50:05 -0400 Subject: [PATCH] fix module use --- source/marathon/map/epnt.rs | 6 +- source/marathon/map/lite.rs | 506 ++++++++++++++++++------------------ source/marathon/map/medi.rs | 6 +- source/marathon/map/note.rs | 6 +- source/marathon/map/pnts.rs | 6 +- source/marathon/map/poly.rs | 10 +- source/marathon/map/sids.rs | 10 +- source/marathon/map/stex.rs | 8 +- 8 files changed, 279 insertions(+), 279 deletions(-) diff --git a/source/marathon/map/epnt.rs b/source/marathon/map/epnt.rs index a4828d9..5981c8a 100644 --- a/source/marathon/map/epnt.rs +++ b/source/marathon/map/epnt.rs @@ -1,14 +1,14 @@ //! `EndPoint` type. use crate::durandal::err::*; -use super::pnts::*; +use super::pnts; /// Reads an `EPNT` chunk. -pub fn read(b: &[u8]) -> ResultS<(Point, usize)> +pub fn read(b: &[u8]) -> ResultS<(pnts::Point, usize)> { read_data! { endian: BIG, buf: b, size: 16, start: 0, data { - let pnt = read_point[6; 4]; + let pnt = pnts::read_o[6; 4]; } } diff --git a/source/marathon/map/lite.rs b/source/marathon/map/lite.rs index 8b82197..3152d1d 100644 --- a/source/marathon/map/lite.rs +++ b/source/marathon/map/lite.rs @@ -1,7 +1,7 @@ //! `Light` type. use crate::durandal::{err::*, fixed::Fixed}; -use super::{ltfn::{self, LightFunc, LightFuncType}, TICKS_PER_SECOND}; +use super::{ltfn, TICKS_PER_SECOND}; use bitflags::bitflags; /// Reads a `LITE` chunk. @@ -50,12 +50,12 @@ pub fn read_old(b: &[u8]) -> ResultS<(Light, usize)> let flags = if on {lite.flags | LightFlags::INIT_ACTIVE} else {lite.flags}; // modify each old light function accordingly - let old_lfun = move |func: &LightFunc| -> LightFunc { - LightFunc{ftype: func.ftype, - prd_nrm: if strobe {prd / 4 + 1} else {func.prd_nrm}, - prd_dta: func.prd_dta, - val_nrm: if func.val_nrm > 0.into() {max} else {min}, - val_dta: func.val_dta} + let old_lfun = move |func: <fn::LightFunc| -> ltfn::LightFunc { + ltfn::LightFunc{ftype: func.ftype, + prd_nrm: if strobe {prd / 4 + 1} else {func.prd_nrm}, + prd_dta: func.prd_dta, + val_nrm: if func.val_nrm > 0.into() {max} else {min}, + val_dta: func.val_dta} }; Ok((Light{flags, @@ -78,12 +78,12 @@ pub struct Light pub ltype: LightType, pub flags: LightFlags, pub phase: i16, - pub act_pri: LightFunc, - pub act_sec: LightFunc, - pub act_mid: LightFunc, - pub ina_pri: LightFunc, - pub ina_sec: LightFunc, - pub ina_mid: LightFunc, + pub act_pri: ltfn::LightFunc, + pub act_sec: ltfn::LightFunc, + pub act_mid: ltfn::LightFunc, + pub ina_pri: ltfn::LightFunc, + pub ina_sec: ltfn::LightFunc, + pub ina_mid: ltfn::LightFunc, pub tag: u16, } @@ -115,288 +115,288 @@ const OLD_LIGHT_DEFINITIONS: [Light; 8] = [ Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, tag: 0}, // Rheostat Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 3, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 3, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 3, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 3, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, // Flourescent Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Fluorescent, - prd_nrm: TICKS_PER_SECOND * 3, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Fluorescent, + prd_nrm: TICKS_PER_SECOND * 3, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, // Strobe Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, // Flicker Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Flicker, - prd_nrm: TICKS_PER_SECOND * 3, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Flicker, + prd_nrm: TICKS_PER_SECOND * 3, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, // Pulsate Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 2, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 2 - 1, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 2 - 1, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 2, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 2 - 1, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Smooth, - prd_nrm: TICKS_PER_SECOND * 2, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 2, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 2 - 1, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 2 - 1, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 2, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 2 - 1, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Smooth, + prd_nrm: TICKS_PER_SECOND * 2, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, // Annoying Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Random, - prd_nrm: 2, - prd_dta: 1, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: 2, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Random, - prd_nrm: 1, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Random, + prd_nrm: 2, + prd_dta: 1, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: 2, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Random, + prd_nrm: 1, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, // Energy Efficient Light{ltype: LightType::Normal, flags: LightFlags::SLAVE_VALUE, phase: 0, - act_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - act_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - act_mid: LightFunc{ftype: LightFuncType::Linear, - prd_nrm: TICKS_PER_SECOND * 2, - prd_dta: 0, - val_nrm: Fixed::from_int(1), - val_dta: Fixed::from_int(0)}, - ina_pri: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_sec: LightFunc{ftype: LightFuncType::Constant, - prd_nrm: TICKS_PER_SECOND, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, - ina_mid: LightFunc{ftype: LightFuncType::Linear, - prd_nrm: TICKS_PER_SECOND * 2, - prd_dta: 0, - val_nrm: Fixed::from_int(0), - val_dta: Fixed::from_int(0)}, + act_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + act_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + act_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Linear, + prd_nrm: TICKS_PER_SECOND * 2, + prd_dta: 0, + val_nrm: Fixed::from_int(1), + val_dta: Fixed::from_int(0)}, + ina_pri: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_sec: ltfn::LightFunc{ftype: ltfn::LightFuncType::Constant, + prd_nrm: TICKS_PER_SECOND, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, + ina_mid: ltfn::LightFunc{ftype: ltfn::LightFuncType::Linear, + prd_nrm: TICKS_PER_SECOND * 2, + prd_dta: 0, + val_nrm: Fixed::from_int(0), + val_dta: Fixed::from_int(0)}, tag: 0}, ]; diff --git a/source/marathon/map/medi.rs b/source/marathon/map/medi.rs index af888ba..f2acf14 100644 --- a/source/marathon/map/medi.rs +++ b/source/marathon/map/medi.rs @@ -2,7 +2,7 @@ use crate::{durandal::{bin::OptU16, err::*, fixed::{Angle, Fixed, Unit}}, marathon::xfer::TransferMode}; -use super::pnts::*; +use super::pnts; /// Reads a `medi` chunk. pub fn read(b: &[u8]) -> ResultS<(Media, usize)> @@ -16,7 +16,7 @@ pub fn read(b: &[u8]) -> ResultS<(Media, usize)> let mag = Unit[8]; let hei_lo = Unit[10]; let hei_hi = Unit[12]; - let orig = read_point[14; 4]; + let orig = pnts::read_o[14; 4]; let hei_nrm = Unit[18]; let min_lt = Fixed[20]; let texture = OptU16[24]; @@ -42,7 +42,7 @@ pub struct Media pub mag: Unit, pub hei_lo: Unit, pub hei_hi: Unit, - pub orig: Point, + pub orig: pnts::Point, pub hei_nrm: Unit, pub min_lt: Fixed, pub texture: OptU16, diff --git a/source/marathon/map/note.rs b/source/marathon/map/note.rs index 1973d69..933d237 100644 --- a/source/marathon/map/note.rs +++ b/source/marathon/map/note.rs @@ -1,14 +1,14 @@ //! `Note` type. use crate::{durandal::err::*, marathon::text::*}; -use super::pnts::*; +use super::pnts; /// Reads a `NOTE` chunk. pub fn read(b: &[u8]) -> ResultS<(Note, usize)> { read_data! { endian: BIG, buf: b, size: 72, start: 0, data { - let pos = read_point[2; 4]; + let pos = pnts::read_o[2; 4]; let poly = u16[6]; let text = mac_roman_cstr[8; 64] no_try; } @@ -22,7 +22,7 @@ pub fn read(b: &[u8]) -> ResultS<(Note, usize)> #[derive(Debug, Eq, PartialEq)] pub struct Note { - pub pos: Point, + pub pos: pnts::Point, pub poly: u16, pub text: String, } diff --git a/source/marathon/map/pnts.rs b/source/marathon/map/pnts.rs index 6427f6e..e896cd9 100644 --- a/source/marathon/map/pnts.rs +++ b/source/marathon/map/pnts.rs @@ -3,7 +3,7 @@ use crate::durandal::{err::*, fixed::Unit}; /// Reads a `Point` object. -pub fn read_point(b: &[u8]) -> ResultS +pub fn read_o(b: &[u8]) -> ResultS { read_data! { endian: BIG, buf: b, size: 4, start: 0, data { @@ -16,7 +16,7 @@ pub fn read_point(b: &[u8]) -> ResultS } /// Writes a `Point` object. -pub fn write_point(v: Point) -> Vec +pub fn write_o(v: Point) -> Vec { let mut o = Vec::with_capacity(4); o.extend(&v.x.to_be_bytes()); @@ -27,7 +27,7 @@ pub fn write_point(v: Point) -> Vec /// Reads a `PNTS` chunk. pub fn read(b: &[u8]) -> ResultS<(Point, usize)> { - Ok((read_point(b)?, 4)) + Ok((read_o(b)?, 4)) } /// A point in world-space. diff --git a/source/marathon/map/poly.rs b/source/marathon/map/poly.rs index 1f19b1f..ed83eaf 100644 --- a/source/marathon/map/poly.rs +++ b/source/marathon/map/poly.rs @@ -2,7 +2,7 @@ use crate::{durandal::{bin::OptU16, err::*, fixed::Unit}, marathon::xfer::TransferMode}; -use super::pnts::*; +use super::pnts; use bitflags::bitflags; /// Reads a polygon for either M1 or M2. @@ -32,8 +32,8 @@ pub fn read(b: &[u8]) -> ResultS<(Polygon, usize)> endian: BIG, buf: b, size: 128, start: 0, data { let ptype = u16[0]; let pdata = u16[4]; - let ori_flr = read_point[108; 4]; - let ori_cei = read_point[112; 4]; + let ori_flr = pnts::read_o[108; 4]; + let ori_cei = pnts::read_o[112; 4]; let med_ind = OptU16[116]; let med_ctl = u16[118]; let snd_amb = OptU16[122]; @@ -143,8 +143,8 @@ pub struct Polygon pub lit_cei: u16, pub xfr_flr: TransferMode, pub xfr_cei: TransferMode, - pub ori_flr: Point, - pub ori_cei: Point, + pub ori_flr: pnts::Point, + pub ori_cei: pnts::Point, pub med_ind: OptU16, pub med_ctl: u16, pub snd_ind: u16, diff --git a/source/marathon/map/sids.rs b/source/marathon/map/sids.rs index 3612ea9..e4a3a74 100644 --- a/source/marathon/map/sids.rs +++ b/source/marathon/map/sids.rs @@ -2,7 +2,7 @@ use crate::{durandal::{bin::OptU16, err::*, fixed::Fixed}, marathon::xfer::TransferMode}; -use super::stex::{self, SideTex}; +use super::stex; use bitflags::bitflags; /// Reads a `SIDS` chunk. @@ -33,7 +33,7 @@ pub fn read_old(b: &[u8]) -> ResultS<(Side, usize)> { let (side, siz) = read(b)?; - Ok((Side{tex_tra: SideTex{tex_id: OptU16::none(), ..side.tex_tra}, + Ok((Side{tex_tra: stex::SideTex{tex_id: OptU16::none(), ..side.tex_tra}, shade: 0.into(), flags: side.flags | SideFlags::ITEM_OPT, ..side}, siz)) @@ -46,9 +46,9 @@ pub struct Side { pub stype: SideType, pub flags: SideFlags, - pub tex_pri: SideTex, - pub tex_sec: SideTex, - pub tex_tra: SideTex, + pub tex_pri: stex::SideTex, + pub tex_sec: stex::SideTex, + pub tex_tra: stex::SideTex, pub paneltyp: u16, pub paneldat: i16, pub xfer_pri: TransferMode, diff --git a/source/marathon/map/stex.rs b/source/marathon/map/stex.rs index c196bd7..8d4abdb 100644 --- a/source/marathon/map/stex.rs +++ b/source/marathon/map/stex.rs @@ -1,14 +1,14 @@ //! `SideTex` type. use crate::durandal::{bin::OptU16, err::*}; -use super::pnts::*; +use super::pnts; /// Reads a `SideTex` object. pub fn read(b: &[u8]) -> ResultS { read_data! { endian: BIG, buf: b, size: 6, start: 0, data { - let offs = read_point[0; 4]; + let offs = pnts::read_o[0; 4]; let tex_id = OptU16[4]; } } @@ -20,7 +20,7 @@ pub fn read(b: &[u8]) -> ResultS pub fn write(v: &SideTex) -> Vec { let mut o = Vec::with_capacity(6); - o.extend(write_point(v.offs)); + o.extend(pnts::write_o(v.offs)); o.extend(&v.tex_id.to_be_bytes()); o } @@ -30,7 +30,7 @@ pub fn write(v: &SideTex) -> Vec #[derive(Debug, Eq, PartialEq)] pub struct SideTex { - pub offs: Point, + pub offs: pnts::Point, pub tex_id: OptU16, }