Example #1
0
	Enchantment EnchantmentDesc::generate(id_t equipment_id, Generated const& gen) const
	{
		RNG rng = noise_coord(math::vec<2,noise_coord_t>({equipment_id,gen.gen_id()}));

		QDValue qd;

		Attributes base(m_attributes.base);

		for(unsigned i = rlrpgenumcount(Attr); i--;)
			base.flat[i] += rng.roll_dice(m_attributes.range.flat[i] +1);

		for(unsigned i = rlrpgenumcount(Attr); i--;)
			base.relative[i] += rng.roll_dice(m_attributes.range.relative[i] +1);
		
		return Enchantment(
			gen,
			qd,
			equipment_id,
			m_id,
			base);
	}