skyblock_repo/models/
mod.rs

1#[cfg(feature = "python")]
2use pyo3::{pyclass, pymethods};
3use serde::{Deserialize, Serialize};
4#[cfg(feature = "python")]
5use skyblock_repo_macros::PyStr;
6
7pub mod enchantment;
8pub mod item;
9pub mod npc;
10pub mod pet;
11pub mod recipe;
12pub mod shop;
13pub mod zone;
14
15#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
16#[cfg_attr(feature = "python", pyclass, derive(PyStr))]
17pub struct UpgradeCost {
18	pub r#type: Option<UpgradeType>,
19	pub item_id: Option<String>,
20	pub essence_type: Option<String>,
21	pub amount: Option<u32>,
22}
23
24#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
25#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
26#[cfg_attr(feature = "python", pyclass, derive(PyStr))]
27pub enum UpgradeType {
28	Item,
29	Essence,
30	Coins,
31	Pelts,
32	Motes,
33	JacobMedal,
34}
35
36#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
37#[cfg_attr(feature = "python", pyclass, derive(PyStr))]
38pub struct Coordinates {
39	pub x: f64,
40	pub y: f64,
41	pub z: f64,
42}