#Dynamic# sub radius {"in a ".random("Radi")." radius"} sub tdice { my $tdice = roll(random("Dice")); return "$tdice ".PL_N("time",$tdice)." ".A(random("Time")); } $Data{SpellsT} = [ sub {random("WzSc")." school"}, sub {random("ClSp")." sphere"} ]; $Data{Resist} = [ "immune", sub {"is ".roll('1d100')."% magic resistant"}, "has no resistance" ]; $Data{Spells} = [ "all spells", "all Wizard spells", "all Priest spells", sub {"the ".random("WzSc")." school of wizard spells"}, sub {"the ".random("ClSp")." sphere of priest spells"}, sub {random("Eff3")." spells and spell-like effects"} ]; $Data{MIGp} = [ sub {"magic items in the ".random("MITp")." group"}, "all magic items" ]; $Data{MagicItems} = [ "can use all magic items", "can not use any magic items", sub {"can only use magic items in the ".random("MITp")." group"}, sub {"can not use magic items in the ".random("MITp")." group"}, sub {"causes ".random("MIGp")." to dysfunction ".radius}, sub {"causes ".random("MIGp")." to loose their power ".radius}, sub {"attracts ".random("MIGp")." ".radius}, sub {"repels ".random("MIGp")." ".radius}, sub {"destroys ".random("MIGp")." ".radius} ]; $Data{OtherMagic} = [ "magic dead", sub {"a ".random("Radi")." radius Wild Magic zone"}, "a magic attracter", "addicted to magic energies" ]; $Data{Weapon} = [ sub {random("WpTp")}, sub {random("WpMt")}, sub {random("WpMg")."magical"}, "all" ]; $Data{NWPlearn} = [ sub {random("AbNm")." based"}, sub {random("Clss")." specific"} ]; $Data{SATS} = [ sub {"to saving throws vs. ".random("SvTr")}, "Armor Class", "THAC0 modifier", "to Surprise" ]; $Data{Attack} = [ sub {"Breath Weapon - ".random("Eff1")." for ".random("Dice")." damage"}, sub {"Gaze Attack - ".random("Gaze")}, sub {"Touch Attack - ".random("Eff2")." for ".random("Dice")." damage"}, sub {"Vocal Attack - ".random("Vocl")} ]; my %color_info = (red=>'f00',yellow=>'ff0',green=>'0f0',cyan=>'0ff',blue=>'00f',magenta=>'f0f',white=>'fff',black=>'000'); $Data{Color} = [map {"$_"} keys %color_info]; $Data{Aura} = [ sub {"visible ".random("Color")}, sub {random("Emtn")}, sub {random("Algn")} ];