pub struct ContentLookups {Show 16 fields
pub item_rarity_q: HashMap<ItemRarityId, f64>,
pub item_rarity_sell_q: HashMap<ItemRarityId, f64>,
pub ability_rarity_eff: HashMap<AbilityRarityId, f64>,
pub class_ability_rarities: HashSet<AbilityRarityId>,
pub item_fixed_power: HashMap<Uuid, f64>,
pub item_id_by_mimic_code: HashMap<i64, Uuid>,
pub effects_by_code: HashMap<String, Arc<EffectTpl>>,
pub fight_template_is_dungeon: HashMap<FightTemplateId, bool>,
pub fight_template_is_bossfight: HashMap<FightTemplateId, bool>,
pub entity_template_is_boss: HashMap<EntityTemplateId, bool>,
pub ally_run_speed_mult: f64,
pub attribute_by_code: HashMap<String, AttributeId>,
pub attribute_base_value: HashMap<AttributeId, f64>,
pub quest_by_code: HashMap<String, Uuid>,
pub ability_range: HashMap<AbilityId, i64>,
pub ability_target_type: HashMap<AbilityId, String>,
}Fields§
§item_rarity_q: HashMap<ItemRarityId, f64>§item_rarity_sell_q: HashMap<ItemRarityId, f64>ItemRarity::sell_q — the Gold multiplier on sale, deliberately separate
from item_rarity_q. q sets power and grows smoothly; the sale value has
to follow the chest price ladder so sales keep funding 78-82% of the next
upgrade. Read only by behaviors::items::item_price.
ability_rarity_eff: HashMap<AbilityRarityId, f64>§class_ability_rarities: HashSet<AbilityRarityId>Rarities that belong to a class kit. Class abilities rank on their own authored ladder (BAL-034) rather than on the shard-level curve every other ability uses, and the rarity is what tells the two apart.
item_fixed_power: HashMap<Uuid, f64>§item_id_by_mimic_code: HashMap<i64, Uuid>ItemTemplate::next_mimic_item_code (an i64) → item template id, for
content::get_item_by_code. Codes are unique across items in the
shipped content.
effects_by_code: HashMap<String, Arc<EffectTpl>>Effect templates keyed by their code. The effect reactions
(on_apply / on_change) are native, dispatched by
crate::mechanics::effect_cb::OverlordEffectCb keyed by code.
fight_template_is_dungeon: HashMap<FightTemplateId, bool>§fight_template_is_bossfight: HashMap<FightTemplateId, bool>§entity_template_is_boss: HashMap<EntityTemplateId, bool>§ally_run_speed_mult: f64fight_settings.ally_run_speed_mult — ally-team run speed multiplier used by
entity_run (docs/combat-feel-porting-plan.md [3.4]). Cached here because entity_run
receives lookups, not the GameConfig. Default (0.0) is treated as 1.0 by the consumer.
attribute_by_code: HashMap<String, AttributeId>attribute.code → AttributeId, for get_attribute_by_code / stat lookups.
attribute_base_value: HashMap<AttributeId, f64>attribute.base_value extracted from content_raw (not on Rust schema).
quest_by_code: HashMap<String, Uuid>Quest code → quest UUID, for loop_tasks::get_quest_by_code.
ability_range: HashMap<AbilityId, i64>Per-ability range (cells), from content_raw::abilities[id].range.
ability_target_type: HashMap<AbilityId, String>Per-ability target_type string (“Enemy”, “Ally”, “Self”),
from content_raw::abilities[id].target_type.
Implementations§
Source§impl ContentLookups
impl ContentLookups
pub fn entity_template_cache( &self, tpl: &EntityTemplate, ) -> CachedEntityTemplate
Trait Implementations§
Source§impl Clone for ContentLookups
impl Clone for ContentLookups
Source§fn clone(&self) -> ContentLookups
fn clone(&self) -> ContentLookups
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more