Ejemplo n.º 1
0
	spell_id = args.get_arg(0)

	# check that this spell was struck
	if evt_obj.data1 != spell_id:
		return 0

	game.particles('sp-Mirror Image Loss', attachee)
	game.sound(32228,1)

	images = args.get_arg(2)
	if images <= 1:
		args.remove_spell()
		args.remove_spell_mod()
	else:
		args.set_arg(2, images-1)
	return 0

cond = PythonModifier('sp-Greater Mirror Image', 7)
cond.AddHook(ET_OnGetTooltip,EK_NONE,MirrorTooltip,())
cond.AddHook(ET_OnGetEffectTooltip,EK_NONE,spellEffectTooltip,())
cond.AddHook(ET_OnBeginRound,EK_NONE,AddImage,())
cond.AddHook(ET_OnD20Query,EK_Q_Critter_Has_Mirror_Image,HasImage,())
cond.AddHook(ET_OnD20Query,EK_Q_Critter_Has_Spell_Active,queryActiveSpell,())
cond.AddHook(ET_OnD20Signal,EK_S_Killed,spellKilled,())
cond.AddHook(ET_OnD20Signal,EK_S_Spell_Mirror_Image_Struck,ImageStruck,())
cond.AddHook(ET_OnD20Signal,EK_S_Dismiss_Spells,checkRemoveSpell,())
cond.AddSpellDispelCheckStandard()
cond.AddSpellTeleportPrepareStandard()
cond.AddSpellTeleportReconnectStandard()
cond.AddSpellCountdownStandardHook()
Ejemplo n.º 2
0
	evt_obj.append(tpdp.hash("MIND_BLANK"), -2, " (" + str(args.get_arg(1)) + " rounds)")
	return 0
	
def MindBlankHasSpellActive(attachee, args, evt_obj):
	evt_obj.return_val = 1
	return 0
	
def MindBlankKilled(attachee, args, evt_obj):
	args.remove_spell()
	args.remove_spell_mod()
	return 0
	
def MindBlankSpellEnd(attachee, args, evt_obj):
	print "MomentOfPrescienceSpellEnd"
	spell_id = args.get_arg(0)
	if evt_obj.data1 == spell_id:
		game.particles( 'sp-Mind Blank-END', attachee)
	return 0

mindBlank = PythonModifier("sp-Mind Blank", 4)
mindBlank.AddHook(ET_OnSpellImmunityCheck, EK_NONE, MindBlankImmunity, ()) # spell_id, duration, spare, spare
mindBlank.AddHook(ET_OnGetTooltip, EK_NONE, MindBlankTooltip, ())
mindBlank.AddHook(ET_OnGetEffectTooltip, EK_NONE, MindBlankEffectTooltip, ())
mindBlank.AddHook(ET_OnD20Signal, EK_S_Spell_End, MindBlankSpellEnd, ())
mindBlank.AddHook(ET_OnD20Query, EK_Q_Critter_Has_Spell_Active, MindBlankHasSpellActive, ())
mindBlank.AddHook(ET_OnD20Signal, EK_S_Killed, MindBlankKilled, ())
mindBlank.AddSpellDispelCheckStandard()
mindBlank.AddSpellTeleportPrepareStandard()
mindBlank.AddSpellTeleportReconnectStandard()
mindBlank.AddSpellCountdownStandardHook()
Ejemplo n.º 3
0
	
def ForesightSpellEnd(attachee, args, evt_obj):
	spell_id = args.get_arg(0)
	if evt_obj.data1 == spell_id:
		game.particles( 'sp-Foresight-END', attachee)
	return 0
	
def ForesightHasSpellActive(attachee, args, evt_obj):
	if evt_obj.data1 == 186:
		evt_obj.return_val = 1
	return 0
	
def ForesightKilled(attachee, args, evt_obj):
	args.remove_spell()
	args.remove_spell_mod()
	return 0

foresight = PythonModifier("sp-Foresight", 4)
foresight.AddHook(ET_OnGetTooltip, EK_NONE, ForesightTooltip, ())
foresight.AddHook(ET_OnGetEffectTooltip, EK_NONE, ForesightEffectTooltip, ())
foresight.AddHook(ET_OnConditionAddPre, EK_NONE, ConditionImmunityOnPreAdd, ())
foresight.AddHook(ET_OnGetAC, EK_NONE, ForesightAcBonus, ())
foresight.AddHook(ET_OnSaveThrowLevel , EK_SAVE_REFLEX , ForesightReflexSaveBonus, ())
foresight.AddHook(ET_OnD20Signal, EK_S_Spell_End, ForesightSpellEnd, ())
foresight.AddHook(ET_OnD20Query, EK_Q_Critter_Has_Spell_Active, ForesightHasSpellActive, ())
foresight.AddHook(ET_OnD20Signal, EK_S_Killed, ForesightKilled, ())
foresight.AddSpellDispelCheckStandard()
foresight.AddSpellTeleportPrepareStandard()
foresight.AddSpellTeleportReconnectStandard()
foresight.AddSpellCountdownStandardHook()
Ejemplo n.º 4
0
    print "MomentOfPrescienceSpellEnd"
    spell_id = args.get_arg(0)
    if evt_obj.data1 == spell_id:
        game.particles('sp-Moment of Prescience-END', attachee)
    return 0


momentOfPrescience = PythonModifier("sp-Moment of Prescience", 6)  #
momentOfPrescience.AddHook(ET_OnBuildRadialMenuEntry, EK_NONE,
                           MomentOfPrescienceRadial, ())
momentOfPrescience.AddHook(ET_OnGetTooltip, EK_NONE, MomentOfPrescienceTooltip,
                           ())
momentOfPrescience.AddHook(ET_OnGetEffectTooltip, EK_NONE,
                           MomentOfPrescienceEffectTooltip, ())
momentOfPrescience.AddHook(ET_OnGetAC, EK_NONE, MomentOfPrescienceAcBonus, ())
momentOfPrescience.AddHook(ET_OnSaveThrowLevel, EK_NONE,
                           MomentOfPrescienceSaveBonus, ())
momentOfPrescience.AddHook(ET_OnToHitBonus2, EK_NONE,
                           MomentOfPrescienceAttackBonus, ())
#momentOfPrescience.AddHook(ET_OnGetSkillLevel, EK_NONE, MomentOfPrescienceSkillCheck, ())
momentOfPrescience.AddHook(ET_OnD20Query, EK_Q_Critter_Has_Spell_Active,
                           MomentOfPrescienceHasSpellActive, ())
momentOfPrescience.AddHook(ET_OnD20Signal, EK_S_Killed,
                           MomentOfPrescienceKilled, ())
momentOfPrescience.AddHook(ET_OnD20Signal, EK_S_Spell_End,
                           MomentOfPrescienceSpellEnd, ())
momentOfPrescience.AddSpellDispelCheckStandard()
momentOfPrescience.AddSpellTeleportPrepareStandard()
momentOfPrescience.AddSpellTeleportReconnectStandard()
momentOfPrescience.AddSpellCountdownStandardHook()
                           MagicCircleOutwardAoEEntered, ())
magicCircleOutward.AddHook(ET_OnD20Query, EK_Q_Critter_Has_Spell_Active,
                           MagicCircleOutwardHasSpellActive, ())
magicCircleOutward.AddHook(ET_OnD20Signal, EK_S_Killed,
                           MagicCircleOutwardKilled, ())
magicCircleOutward.AddHook(ET_OnD20Signal, EK_S_Spell_End,
                           MagicCircleOutwardSpellEnd, ())
magicCircleOutward.AddHook(ET_OnD20PythonQuery, "Has Magic Circle Spell",
                           HasMagicCircleQuery, ())
magicCircleOutward.AddHook(ET_OnGetTooltip, EK_NONE, MagicCircleOutwardTooltip,
                           ())
magicCircleOutward.AddHook(ET_OnGetEffectTooltip, EK_NONE,
                           MagicCircleOutwardEffectTooltip, ())
magicCircleOutward.AddSpellDispelCheckStandard()
magicCircleOutward.AddSpellTeleportPrepareStandard()
magicCircleOutward.AddSpellTeleportReconnectStandard()
magicCircleOutward.AddSpellCountdownStandardHook()


def MagicCircleOutwardEffAoEExited(attachee, args, evt_obj):
    obj_evt_id = args.get_arg(0)
    if obj_evt_id != evt_obj.evt_id:
        print "Magic Circle Outward Aura: ID mismatch " + str(
            evt_obj.evt_id) + ", stored was: " + str(obj_evt_id)
        return 0
    print "Magic Circle Outward Aura (ID " + str(
        obj_evt_id) + ") Exited, critter: " + attachee.description + " "
    args.condition_remove()
    return 0

Ejemplo n.º 6
0
def Remove(attachee, args, evt_obj):
	args.condition_remove()
	return 0

vertigo = PythonModifier('sp-Vertigo', 4)
vertigo.AddHook(ET_OnGetTooltip, EK_NONE, spellTooltip, ())
vertigo.AddHook(ET_OnGetEffectTooltip, EK_NONE, spellEffectTooltip, ())
vertigo.AddHook(ET_OnToHitBonus2, EK_NONE, Penalty, ())
vertigo.AddHook(ET_OnSaveThrowLevel, EK_NONE, Penalty, ())
vertigo.AddHook(ET_OnD20Signal, EK_S_BeginTurn, Balance, ())
vertigo.AddHook(ET_OnD20Signal, EK_S_Killed, Remove, ())
vertigo.AddHook(ET_OnD20Signal, EK_S_Dismiss_Spells, checkRemoveSpell, ())
vertigo.AddSpellDispelCheckStandard()
vertigo.AddSpellTeleportPrepareStandard()
vertigo.AddSpellTeleportReconnectStandard()
vertigo.AddSpellCountdownStandardHook()

def Unsteady(attachee, args, evt_obj):
	# flags, newCap, capType, mesline
	evt_obj.bonus_list.set_overall_cap(1, 0, 0, 1004)
	evt_obj.bonus_list.set_overall_cap(2, 0, 0, 1004)
	return 0

def UTooltip(attachee, args, evt_obj):
	evt_obj.append('Unsteady')
	return 0

def UETooltip(attachee, args, evt_obj):
	key = tpdp.hash('UNSTEADY')
	evt_obj.append(key, -2, '')