def MomentOfPrescienceRadial(attachee, args, evt_obj): spell_id = args.get_arg(0) spell_packet = tpdp.SpellPacket(spell_id) bonus = min(spell_packet.caster_level, 25) bonusString = "+" + str(bonus) #Add the top level menu radial_parent = tpdp.RadialMenuEntryParent("Moment of Prescience") MomentOfPrescienceId = radial_parent.add_child_to_standard(attachee, tpdp.RadialMenuStandardNode.Feats) #Add a checkbox to turn on and off the various features of the spell checkboxACBonus = tpdp.RadialMenuEntryToggle(bonusString + " to AC next attack", "TAG_INTERFACE_HELP") checkboxACBonus.link_to_args(args, 2) checkboxACBonus.add_as_child(attachee, MomentOfPrescienceId) checkboxACBonus = tpdp.RadialMenuEntryToggle(bonusString + " to next save", "TAG_INTERFACE_HELP") checkboxACBonus.link_to_args(args, 3) checkboxACBonus.add_as_child(attachee, MomentOfPrescienceId) checkboxACBonus = tpdp.RadialMenuEntryToggle(bonusString + " to next Attack", "TAG_INTERFACE_HELP") checkboxACBonus.link_to_args(args, 4) checkboxACBonus.add_as_child(attachee, MomentOfPrescienceId) #checkboxACBonus = tpdp.RadialMenuEntryToggle(bonusString + " to next Skill Check", "TAG_INTERFACE_HELP") #checkboxACBonus.link_to_args(args, 5) #checkboxACBonus.add_as_child(attachee, MomentOfPrescienceId) return 0
def RecklessChargeRadial(attachee, args, evt_obj): checkboxRecklessCharge = tpdp.RadialMenuEntryToggle( "Reckless Charge", "TAG_INTERFACE_HELP") checkboxRecklessCharge.link_to_args(args, 0) checkboxRecklessCharge.add_child_to_standard( attachee, tpdp.RadialMenuStandardNode.Feats) return 0
def SwashbucklerLuckyRadial(attachee, args, evt_obj): #Add a checkbox to use the reroll if a charge is available if args.get_arg(0): radial_parent = tpdp.RadialMenuEntryParent("Lucky") LuckyID = radial_parent.add_child_to_standard( attachee, tpdp.RadialMenuStandardNode.Class) checkboxSavingThrow = tpdp.RadialMenuEntryToggle( "Reroll Next Missed Saving Throw", "TAG_INTERFACE_HELP") checkboxSavingThrow.link_to_args(args, 1) checkboxSavingThrow.add_as_child(attachee, LuckyID) checkboxAttack = tpdp.RadialMenuEntryToggle( "Reroll Next Missed Attack", "TAG_INTERFACE_HELP") checkboxAttack.link_to_args(args, 2) checkboxAttack.add_as_child(attachee, LuckyID) return 0
def particlesRadial(attachee, args, evt_obj): toggleEffectId = tpdp.RadialMenuEntryToggle("Crackling Aura", "TAG_STORMLORDS") toggleEffectId.link_to_args(args, 0) toggleEffectId.add_child_to_standard(attachee, tpdp.RadialMenuStandardNode.Class) return 0
def SuddenWidenRadial(attachee, args, evt_obj): #Add a checkbox to turn on and off sudden Widen if there is a carge available, otherwise just don't show it if args.get_arg(0): checkboxSuddenWiden = tpdp.RadialMenuEntryToggle("Sudden Widen", "TAG_INTERFACE_HELP") checkboxSuddenWiden.link_to_args(args, 1) checkboxSuddenWiden.add_child_to_standard(attachee, tpdp.RadialMenuStandardNode.Feats) return 0
def AssassinDeathAttackRadial(attachee, args, evt_obj): radial_action = tpdp.RadialMenuEntryPythonAction("Study Target", D20A_PYTHON_ACTION, deathAttackStudyEnum, 0, "TAG_INTERFACE_HELP") spell_data = tpdp.D20SpellData(3210) ass_lvl = attachee.stat_level_get(classEnum) spell_data.set_spell_level(ass_lvl) radial_action.set_spell_data(spell_data) radial_action.add_child_to_standard(attachee, tpdp.RadialMenuStandardNode.Class) #print "Death attack radial" if attachee.d20_query("Has Studied Target"): #print "Has studied target (radial)" radial_parent = tpdp.RadialMenuEntryParent("Death Attack") #print "Created radial parent" par_node_id = radial_parent.add_child_to_standard( attachee, tpdp.RadialMenuStandardNode.Class) #print "Added radial parent, ID " + str(par_node_id) check_box_paralyze = tpdp.RadialMenuEntryToggle( "Paralyze", "TAG_INTERFACE_HELP") check_box_paralyze.link_to_args(args, 1) check_box_paralyze.add_as_child(attachee, par_node_id) return 0
def MelodicCastingRadial(attachee, args, evt_obj): checkboxMelodicCasting = tpdp.RadialMenuEntryToggle( "Use Perform for Concentration", "TAG_INTERFACE_HELP") checkboxMelodicCasting.link_to_args(args, 0) checkboxMelodicCasting.add_child_to_standard( attachee, tpdp.RadialMenuStandardNode.Options) return 0