move weapon logic from elseware
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
552f7d5774
commit
0e2cac0f1b
@ -1,25 +1,37 @@
|
||||
#![allow(dead_code)]
|
||||
pub mod weapon;
|
||||
pub mod tool;
|
||||
pub mod armor;
|
||||
pub mod shield;
|
||||
//pub mod tool;
|
||||
//pub mod armor;
|
||||
//pub mod shield;
|
||||
|
||||
use std::io::{Read, Seek};
|
||||
use crate::{PacketParseError};
|
||||
//use std::io::{Read, Seek};
|
||||
//use crate::{PacketParseError};
|
||||
|
||||
|
||||
pub trait ItemBytes {
|
||||
fn as_bytes(&self) -> [u8; 16] {
|
||||
// this is one of those things that should be easier than it is
|
||||
let mut result = [0; 16];
|
||||
let (left, right) = result.split_at_mut(12);
|
||||
left.copy_from_slice(&self.as_bytes_upper());
|
||||
right.copy_from_slice(&self.as_bytes_lower());
|
||||
result
|
||||
}
|
||||
fn as_bytes_upper(&self) -> [u8; 12];
|
||||
fn as_bytes_lower(&self) -> [u8; 4];
|
||||
}
|
||||
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
pub enum Item {
|
||||
Weapon(weapon::Weapon),
|
||||
Armor(armor::Armor),
|
||||
Shield(shield::Shield),
|
||||
//Armor(armor::Armor),
|
||||
//Shield(shield::Shield),
|
||||
//Unit(Unit),
|
||||
//Mag(Mag),
|
||||
Tool(tool::Tool),
|
||||
//Tool(tool::Tool),
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
impl Item {
|
||||
fn from_bytes<R: Read + Seek>(_cursor: &mut R) -> Result<Self, PacketParseError> {
|
||||
unimplemented!()
|
||||
@ -27,9 +39,9 @@ impl Item {
|
||||
pub fn as_bytes(&self) -> [u8; 16] {
|
||||
match self {
|
||||
Item::Weapon(wep) => wep.as_bytes(),
|
||||
Item::Armor(armor) => armor.as_bytes(),
|
||||
Item::Shield(shield) => shield.as_bytes(),
|
||||
Item::Tool(tool) => tool.as_bytes(),
|
||||
//Item::Armor(armor) => armor.as_bytes(),
|
||||
//Item::Shield(shield) => shield.as_bytes(),
|
||||
//Item::Tool(tool) => tool.as_bytes(),
|
||||
}
|
||||
}
|
||||
|
||||
@ -41,3 +53,4 @@ impl Item {
|
||||
}
|
||||
|
||||
}
|
||||
*/
|
||||
|
1613
src/item/weapon.rs
1613
src/item/weapon.rs
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@ pub mod crypto;
|
||||
pub mod packet;
|
||||
pub mod character;
|
||||
pub mod util;
|
||||
//pub mod item;
|
||||
pub mod item;
|
||||
|
||||
use std::io::{Read, Seek};
|
||||
#[derive(Debug, PartialEq)]
|
||||
|
Loading…
x
Reference in New Issue
Block a user