1use crate :: potion :: { Potion , PotionEffect , PotionRegistry } ; use crate :: vanilla_mob_effects ; use steel_utils :: Identifier ; static WATER_EFFECTS : & [PotionEffect] = & [] ; pub static WATER : Potion = Potion :: new (Identifier :: vanilla_static ("water") , "water" , WATER_EFFECTS ,) ; static MUNDANE_EFFECTS : & [PotionEffect] = & [] ; pub static MUNDANE : Potion = Potion :: new (Identifier :: vanilla_static ("mundane") , "mundane" , MUNDANE_EFFECTS ,) ; static THICK_EFFECTS : & [PotionEffect] = & [] ; pub static THICK : Potion = Potion :: new (Identifier :: vanilla_static ("thick") , "thick" , THICK_EFFECTS ,) ; static AWKWARD_EFFECTS : & [PotionEffect] = & [] ; pub static AWKWARD : Potion = Potion :: new (Identifier :: vanilla_static ("awkward") , "awkward" , AWKWARD_EFFECTS ,) ; static NIGHT_VISION_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: NIGHT_VISION , duration : 3600i32 , amplifier : 0i32 , }] ; pub static NIGHT_VISION : Potion = Potion :: new (Identifier :: vanilla_static ("night_vision") , "night_vision" , NIGHT_VISION_EFFECTS ,) ; static LONG_NIGHT_VISION_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: NIGHT_VISION , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_NIGHT_VISION : Potion = Potion :: new (Identifier :: vanilla_static ("long_night_vision") , "night_vision" , LONG_NIGHT_VISION_EFFECTS ,) ; static INVISIBILITY_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INVISIBILITY , duration : 3600i32 , amplifier : 0i32 , }] ; pub static INVISIBILITY : Potion = Potion :: new (Identifier :: vanilla_static ("invisibility") , "invisibility" , INVISIBILITY_EFFECTS ,) ; static LONG_INVISIBILITY_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INVISIBILITY , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_INVISIBILITY : Potion = Potion :: new (Identifier :: vanilla_static ("long_invisibility") , "invisibility" , LONG_INVISIBILITY_EFFECTS ,) ; static LEAPING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: JUMP_BOOST , duration : 3600i32 , amplifier : 0i32 , }] ; pub static LEAPING : Potion = Potion :: new (Identifier :: vanilla_static ("leaping") , "leaping" , LEAPING_EFFECTS ,) ; static LONG_LEAPING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: JUMP_BOOST , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_LEAPING : Potion = Potion :: new (Identifier :: vanilla_static ("long_leaping") , "leaping" , LONG_LEAPING_EFFECTS ,) ; static STRONG_LEAPING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: JUMP_BOOST , duration : 1800i32 , amplifier : 1i32 , }] ; pub static STRONG_LEAPING : Potion = Potion :: new (Identifier :: vanilla_static ("strong_leaping") , "leaping" , STRONG_LEAPING_EFFECTS ,) ; static FIRE_RESISTANCE_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: FIRE_RESISTANCE , duration : 3600i32 , amplifier : 0i32 , }] ; pub static FIRE_RESISTANCE : Potion = Potion :: new (Identifier :: vanilla_static ("fire_resistance") , "fire_resistance" , FIRE_RESISTANCE_EFFECTS ,) ; static LONG_FIRE_RESISTANCE_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: FIRE_RESISTANCE , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_FIRE_RESISTANCE : Potion = Potion :: new (Identifier :: vanilla_static ("long_fire_resistance") , "fire_resistance" , LONG_FIRE_RESISTANCE_EFFECTS ,) ; static SWIFTNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SPEED , duration : 3600i32 , amplifier : 0i32 , }] ; pub static SWIFTNESS : Potion = Potion :: new (Identifier :: vanilla_static ("swiftness") , "swiftness" , SWIFTNESS_EFFECTS ,) ; static LONG_SWIFTNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SPEED , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_SWIFTNESS : Potion = Potion :: new (Identifier :: vanilla_static ("long_swiftness") , "swiftness" , LONG_SWIFTNESS_EFFECTS ,) ; static STRONG_SWIFTNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SPEED , duration : 1800i32 , amplifier : 1i32 , }] ; pub static STRONG_SWIFTNESS : Potion = Potion :: new (Identifier :: vanilla_static ("strong_swiftness") , "swiftness" , STRONG_SWIFTNESS_EFFECTS ,) ; static SLOWNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOWNESS , duration : 1800i32 , amplifier : 0i32 , }] ; pub static SLOWNESS : Potion = Potion :: new (Identifier :: vanilla_static ("slowness") , "slowness" , SLOWNESS_EFFECTS ,) ; static LONG_SLOWNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOWNESS , duration : 4800i32 , amplifier : 0i32 , }] ; pub static LONG_SLOWNESS : Potion = Potion :: new (Identifier :: vanilla_static ("long_slowness") , "slowness" , LONG_SLOWNESS_EFFECTS ,) ; static STRONG_SLOWNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOWNESS , duration : 400i32 , amplifier : 3i32 , }] ; pub static STRONG_SLOWNESS : Potion = Potion :: new (Identifier :: vanilla_static ("strong_slowness") , "slowness" , STRONG_SLOWNESS_EFFECTS ,) ; static TURTLE_MASTER_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOWNESS , duration : 400i32 , amplifier : 3i32 , } , PotionEffect { effect : & vanilla_mob_effects :: RESISTANCE , duration : 400i32 , amplifier : 2i32 , }] ; pub static TURTLE_MASTER : Potion = Potion :: new (Identifier :: vanilla_static ("turtle_master") , "turtle_master" , TURTLE_MASTER_EFFECTS ,) ; static LONG_TURTLE_MASTER_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOWNESS , duration : 800i32 , amplifier : 3i32 , } , PotionEffect { effect : & vanilla_mob_effects :: RESISTANCE , duration : 800i32 , amplifier : 2i32 , }] ; pub static LONG_TURTLE_MASTER : Potion = Potion :: new (Identifier :: vanilla_static ("long_turtle_master") , "turtle_master" , LONG_TURTLE_MASTER_EFFECTS ,) ; static STRONG_TURTLE_MASTER_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOWNESS , duration : 400i32 , amplifier : 5i32 , } , PotionEffect { effect : & vanilla_mob_effects :: RESISTANCE , duration : 400i32 , amplifier : 3i32 , }] ; pub static STRONG_TURTLE_MASTER : Potion = Potion :: new (Identifier :: vanilla_static ("strong_turtle_master") , "turtle_master" , STRONG_TURTLE_MASTER_EFFECTS ,) ; static WATER_BREATHING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: WATER_BREATHING , duration : 3600i32 , amplifier : 0i32 , }] ; pub static WATER_BREATHING : Potion = Potion :: new (Identifier :: vanilla_static ("water_breathing") , "water_breathing" , WATER_BREATHING_EFFECTS ,) ; static LONG_WATER_BREATHING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: WATER_BREATHING , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_WATER_BREATHING : Potion = Potion :: new (Identifier :: vanilla_static ("long_water_breathing") , "water_breathing" , LONG_WATER_BREATHING_EFFECTS ,) ; static HEALING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INSTANT_HEALTH , duration : 1i32 , amplifier : 0i32 , }] ; pub static HEALING : Potion = Potion :: new (Identifier :: vanilla_static ("healing") , "healing" , HEALING_EFFECTS ,) ; static STRONG_HEALING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INSTANT_HEALTH , duration : 1i32 , amplifier : 1i32 , }] ; pub static STRONG_HEALING : Potion = Potion :: new (Identifier :: vanilla_static ("strong_healing") , "healing" , STRONG_HEALING_EFFECTS ,) ; static HARMING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INSTANT_DAMAGE , duration : 1i32 , amplifier : 0i32 , }] ; pub static HARMING : Potion = Potion :: new (Identifier :: vanilla_static ("harming") , "harming" , HARMING_EFFECTS ,) ; static STRONG_HARMING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INSTANT_DAMAGE , duration : 1i32 , amplifier : 1i32 , }] ; pub static STRONG_HARMING : Potion = Potion :: new (Identifier :: vanilla_static ("strong_harming") , "harming" , STRONG_HARMING_EFFECTS ,) ; static POISON_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: POISON , duration : 900i32 , amplifier : 0i32 , }] ; pub static POISON : Potion = Potion :: new (Identifier :: vanilla_static ("poison") , "poison" , POISON_EFFECTS ,) ; static LONG_POISON_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: POISON , duration : 1800i32 , amplifier : 0i32 , }] ; pub static LONG_POISON : Potion = Potion :: new (Identifier :: vanilla_static ("long_poison") , "poison" , LONG_POISON_EFFECTS ,) ; static STRONG_POISON_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: POISON , duration : 432i32 , amplifier : 1i32 , }] ; pub static STRONG_POISON : Potion = Potion :: new (Identifier :: vanilla_static ("strong_poison") , "poison" , STRONG_POISON_EFFECTS ,) ; static REGENERATION_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: REGENERATION , duration : 900i32 , amplifier : 0i32 , }] ; pub static REGENERATION : Potion = Potion :: new (Identifier :: vanilla_static ("regeneration") , "regeneration" , REGENERATION_EFFECTS ,) ; static LONG_REGENERATION_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: REGENERATION , duration : 1800i32 , amplifier : 0i32 , }] ; pub static LONG_REGENERATION : Potion = Potion :: new (Identifier :: vanilla_static ("long_regeneration") , "regeneration" , LONG_REGENERATION_EFFECTS ,) ; static STRONG_REGENERATION_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: REGENERATION , duration : 450i32 , amplifier : 1i32 , }] ; pub static STRONG_REGENERATION : Potion = Potion :: new (Identifier :: vanilla_static ("strong_regeneration") , "regeneration" , STRONG_REGENERATION_EFFECTS ,) ; static STRENGTH_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: STRENGTH , duration : 3600i32 , amplifier : 0i32 , }] ; pub static STRENGTH : Potion = Potion :: new (Identifier :: vanilla_static ("strength") , "strength" , STRENGTH_EFFECTS ,) ; static LONG_STRENGTH_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: STRENGTH , duration : 9600i32 , amplifier : 0i32 , }] ; pub static LONG_STRENGTH : Potion = Potion :: new (Identifier :: vanilla_static ("long_strength") , "strength" , LONG_STRENGTH_EFFECTS ,) ; static STRONG_STRENGTH_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: STRENGTH , duration : 1800i32 , amplifier : 1i32 , }] ; pub static STRONG_STRENGTH : Potion = Potion :: new (Identifier :: vanilla_static ("strong_strength") , "strength" , STRONG_STRENGTH_EFFECTS ,) ; static WEAKNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: WEAKNESS , duration : 1800i32 , amplifier : 0i32 , }] ; pub static WEAKNESS : Potion = Potion :: new (Identifier :: vanilla_static ("weakness") , "weakness" , WEAKNESS_EFFECTS ,) ; static LONG_WEAKNESS_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: WEAKNESS , duration : 4800i32 , amplifier : 0i32 , }] ; pub static LONG_WEAKNESS : Potion = Potion :: new (Identifier :: vanilla_static ("long_weakness") , "weakness" , LONG_WEAKNESS_EFFECTS ,) ; static LUCK_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: LUCK , duration : 6000i32 , amplifier : 0i32 , }] ; pub static LUCK : Potion = Potion :: new (Identifier :: vanilla_static ("luck") , "luck" , LUCK_EFFECTS ,) ; static SLOW_FALLING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOW_FALLING , duration : 1800i32 , amplifier : 0i32 , }] ; pub static SLOW_FALLING : Potion = Potion :: new (Identifier :: vanilla_static ("slow_falling") , "slow_falling" , SLOW_FALLING_EFFECTS ,) ; static LONG_SLOW_FALLING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: SLOW_FALLING , duration : 4800i32 , amplifier : 0i32 , }] ; pub static LONG_SLOW_FALLING : Potion = Potion :: new (Identifier :: vanilla_static ("long_slow_falling") , "slow_falling" , LONG_SLOW_FALLING_EFFECTS ,) ; static WIND_CHARGED_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: WIND_CHARGED , duration : 3600i32 , amplifier : 0i32 , }] ; pub static WIND_CHARGED : Potion = Potion :: new (Identifier :: vanilla_static ("wind_charged") , "wind_charged" , WIND_CHARGED_EFFECTS ,) ; static WEAVING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: WEAVING , duration : 3600i32 , amplifier : 0i32 , }] ; pub static WEAVING : Potion = Potion :: new (Identifier :: vanilla_static ("weaving") , "weaving" , WEAVING_EFFECTS ,) ; static OOZING_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: OOZING , duration : 3600i32 , amplifier : 0i32 , }] ; pub static OOZING : Potion = Potion :: new (Identifier :: vanilla_static ("oozing") , "oozing" , OOZING_EFFECTS ,) ; static INFESTED_EFFECTS : & [PotionEffect] = & [PotionEffect { effect : & vanilla_mob_effects :: INFESTED , duration : 3600i32 , amplifier : 0i32 , }] ; pub static INFESTED : Potion = Potion :: new (Identifier :: vanilla_static ("infested") , "infested" , INFESTED_EFFECTS ,) ; pub fn register_potions (registry : & mut PotionRegistry) { registry . register (& WATER) ; registry . register (& MUNDANE) ; registry . register (& THICK) ; registry . register (& AWKWARD) ; registry . register (& NIGHT_VISION) ; registry . register (& LONG_NIGHT_VISION) ; registry . register (& INVISIBILITY) ; registry . register (& LONG_INVISIBILITY) ; registry . register (& LEAPING) ; registry . register (& LONG_LEAPING) ; registry . register (& STRONG_LEAPING) ; registry . register (& FIRE_RESISTANCE) ; registry . register (& LONG_FIRE_RESISTANCE) ; registry . register (& SWIFTNESS) ; registry . register (& LONG_SWIFTNESS) ; registry . register (& STRONG_SWIFTNESS) ; registry . register (& SLOWNESS) ; registry . register (& LONG_SLOWNESS) ; registry . register (& STRONG_SLOWNESS) ; registry . register (& TURTLE_MASTER) ; registry . register (& LONG_TURTLE_MASTER) ; registry . register (& STRONG_TURTLE_MASTER) ; registry . register (& WATER_BREATHING) ; registry . register (& LONG_WATER_BREATHING) ; registry . register (& HEALING) ; registry . register (& STRONG_HEALING) ; registry . register (& HARMING) ; registry . register (& STRONG_HARMING) ; registry . register (& POISON) ; registry . register (& LONG_POISON) ; registry . register (& STRONG_POISON) ; registry . register (& REGENERATION) ; registry . register (& LONG_REGENERATION) ; registry . register (& STRONG_REGENERATION) ; registry . register (& STRENGTH) ; registry . register (& LONG_STRENGTH) ; registry . register (& STRONG_STRENGTH) ; registry . register (& WEAKNESS) ; registry . register (& LONG_WEAKNESS) ; registry . register (& LUCK) ; registry . register (& SLOW_FALLING) ; registry . register (& LONG_SLOW_FALLING) ; registry . register (& WIND_CHARGED) ; registry . register (& WEAVING) ; registry . register (& OOZING) ; registry . register (& INFESTED) ; }