Типы переменных: object - объект игрового мира int - целое число float - число с плавающей точкой (дробное проще говоря) location - это локация vector - вектор talent - талант effect - эффект
И так, начну сверху вниз (по списку в тулсете).
//ActionAttack (Действие - Атака) void ActionAttack(object oAttackee, int bPassive=FALSE)
object - это объект, на который будет происходить атака. int bPassive= - атака в пассивном (если стоит TRUE) или в активном режиме (если стоит FALSE)
//ActionCastFakeSpellAtLocation(Действие - Кстование спеллов, которые только дают эффект и визуализацию, больше ничего, на определенное место void ActionCastFakeSpellAtLocation(int nSpell, location lTarget, int nProjectilePathType=PROJECTILE_PATH_TYPE_DEFAULT)
int nSpell - nSpell, который вы собираетесь кастовать location lTarget - lTarget, куда будет направлен спелл int nProjectilePathType - тип траектории (PROJECTILE_PATH_*)
//ActionCastFakeSpellAtObject (Тоже, что и в предыдущем варианте, только здесь используется не точка на карте, а объект как мишень) void ActionCastFakeSpellAtObject(int nSpell, object oTarget, int nProjectilePathType=PROJECTILE_PATH_TYPE_DEFAULT)
int nSpell - nSpell, который вы собираетесь кастовать object oTarget - oTarget, куда будет направлен спелл int nProjectilePathType - тип траектории (PROJECTILE_PATH_*)
//ActionCastSpellAtLocation (Действие - Кастование спелла на определенную точку на карте) void ActionCastSpellAtLocation(int nSpell, location lTargetLocation, int nMetaMagic=METAMAGIC_ANY, int bCheat=FALSE, int nProjectilePathType=PROJECTILE_PATH_TYPE_DEFAULT, int bInstantSpell=FALSE)
int nSpell - nSpell, который вы хотите скастовать location lTargetLocation - lTargetLocation, куда направлен спелл int nMetaMagic - вид метамагии, который вы примените к этому спеллу (METAMAGIC_ANY, METAMAGIC_EMPOWER, METAMAGIC_EXTEND, METAMAGIC_MAXIMIZE, METAMAGIC_NONE, METAMAGIC_QUICKEN, METAMAGIC_SILENT, METAMAGIC_STILL) int bCheat - если установлено в TRUE, то объект скастит спелл независимо от того, является ли он кастером, либо не имеет данного спелла. int nProjectilePathType - тип траектории (PROJECTILE_PATH_*) int bInstantSpell - если FALSE, то спелл будет кастоваться до дефолту, если TRUE - спелл будет скастован немедленно
//ActionCastSpellAtObject (Тоже, что и в предыдущем варианте, но целью является уже объект) void ActionCastSpellAtObject(int nSpell, object oTarget, int nMetaMagic=METAMAGIC_ANY, int bCheat=FALSE, int nDomainLevel=0, int nProjectilePathType=PROJECTILE_PATH_TYPE_DEFAULT, int bInstantSpell=FALSE)
int nSpell - nSpell, который вы хотите скастовать object oTarget - oTarget, куда направлен спелл int nMetaMagic - вид метамагии, который вы примените к этому спеллу (METAMAGIC_ANY, METAMAGIC_EMPOWER, METAMAGIC_EXTEND, METAMAGIC_MAXIMIZE, METAMAGIC_NONE, METAMAGIC_QUICKEN, METAMAGIC_SILENT, METAMAGIC_STILL) int bCheat - если установлено в TRUE, то объект скастит спелл независимо от того, является ли он кастером, либо не имеет данного спелла. int nDomainLevel - хех, сколько много интерестного... оставим по дефолту int nProjectilePathType - тип траектории (PROJECTILE_PATH_*) int bInstantSpell - если FALSE, то спелл будет кастоваться до дефолту, если TRUE - спелл будет скастован немедленно
Итак, мы подошли к эффектам. Эффект - это что-то, что случается с персонашем, вещью или чем нить еще, например смерть, излечение, нанос урона, визуальные эффекты, эффекты заклинаний...(Хм....странное описание сущности эффектов. Ну да ладно. Следует однако помнить, что заклинания строятся на эффектах, а не наоборот.)
Для использования эффектов, их нужно создать. Создание экземлпяра эффекта: effect eCustomEffect = <конструктор_нужного_эффекта>;
Для использования эффекта нужна следующая функция: ApplyEffectAtLocation или ApplyEffectToObject.
Если вы не помните их - вот вам напоминалка:
ApplyEffectAtLocation (Применить эффект к указанной локации) void ApplyEffectAtLocation(int nDurationType, effect eEffect, location lLocation, float fDuration=0.0f)
int nDurationType - определяет, сколько этот эффект будет продолжаться : DURATION_TYPE_INSTANT - мгновенно DURATION_TYPE_PERMANENT - всегда DURATION_TYPE_TEMPORARY - временно effect eEffect - прмиеняемый эффект location lLocation - локация, на которую эффект будет прмиеняться float fDuration - длительность эффект (если в nDurationType стоит DURATION_TYPE_TEMPORARY)
ApplyEffectToObject (Применить эффект уже к объекту) void ApplyEffectToObject(int nDurationType, effect eEffect, object oTarget, float fDuration=0.0f)
int nDurationType - определяет, сколько этот эффект будет продолжаться : DURATION_TYPE_INSTANT - мгновенно DURATION_TYPE_PERMANENT - всегда DURATION_TYPE_TEMPORARY - временно effect eEffect - прмиеняемый эффект object oTarget - объект, к оторому будет применяться эффект float fDuration - длительность эффект (если в nDurationType стоит DURATION_TYPE_TEMPORARY)
И так, начинаем описание эффектов по порядку...
EffectAbilityDecrease (Эффект уменьшения определенной характеристики персонажа) effect EffectAbilityDecrease(int nAbility, int nModifyBy)
int nAbility - выбираем характеристику из списка ниже: ABILITY_CHARISMA - харизма персонажа ABILITY_CONSTITUTION - конституция персонажа ABILITY_DEXTERITY - ловкость ABILITY_INTELLIGENCE - интелект (куда уж без него) ABILITY_STRENGTH - сила (она и в африке стренч) ABILITY_WISDOM - виздом (упс, мудрость... =) ) int nModifyBy - здесь пишите число, на которое будет уменьшаться выбранная характеристика
EffectAbilityIncrease (Противоположная предыдущей функции... эта функция наоборот УВЕЛИЧИВАЕТ выбранную характеристику) effect EffectAbilityIncrease(int nAbilityToIncrease, int nModifyBy)
int nAbilityToIncrease - выбираем из списка: ABILITY_CHARISMA - харизма персонажа ABILITY_CONSTITUTION - конституция персонажа ABILITY_DEXTERITY - ловкость ABILITY_INTELLIGENCE - интелект (куда уж без него) ABILITY_STRENGTH - сила (она и в африке стренч) ABILITY_WISDOM - виздом (упс, мудрость... =) ) int nModifyBy - здесь пишите число, на которое будет увеличиваться выбранная характеристика
EffectACDecrease (Эффект понижения определенного АС для определенного вида атаки) effect EffectACDecrease(int nValue, int nModifyType=AC_DODGE_BONUS, int nDamageType=AC_VS_DAMAGE_TYPE_ALL)
int nValue - число, на которое понижается АС int nModifyType - вид АС (если оставить AC_DODGE_BONUS - то действует на все типы) выбираем из списка: AC_ARMOUR_ENCHANTMENT_BONUS AC_DEFLECTION_BONUS AC_NATURAL_BONUS AC_SHIELD_ENCHANTMENT_BONUS int nDamageType - тип повреждения (если оставить AC_VS_DAMAGE_TYPE_ALL - действует на все повреждения): DAMAGE_TYPE_ACID DAMAGE_TYPE_BLUDGEONING DAMAGE_TYPE_COLD DAMAGE_TYPE_DIVINE DAMAGE_TYPE_ELECTRICAL DAMAGE_TYPE_FIRE DAMAGE_TYPE_MAGICAL DAMAGE_TYPE_NEGATIVE DAMAGE_TYPE_PIERCING DAMAGE_TYPE_POSITIVE DAMAGE_TYPE_SLASHING DAMAGE_TYPE_SONIC
EffectACIncrease (УВЕЛИЧЕНИЯ определенного типа АС для определенного типа повреждения) effect EffectACIncrease(int nValue, int nModifyType=AC_DODGE_BONUS, int nDamageType=AC_VS_DAMAGE_TYPE_ALL)
int nValue - число, на которое повышается АС int nModifyType - вид АС (если оставить AC_DODGE_BONUS - то действует на все типы) выбираем из списка: AC_ARMOUR_ENCHANTMENT_BONUS AC_DEFLECTION_BONUS AC_NATURAL_BONUS AC_SHIELD_ENCHANTMENT_BONUS int nDamageType - тип повреждения (если оставить AC_VS_DAMAGE_TYPE_ALL - действует на все повреждения): DAMAGE_TYPE_ACID DAMAGE_TYPE_BLUDGEONING DAMAGE_TYPE_COLD DAMAGE_TYPE_DIVINE DAMAGE_TYPE_ELECTRICAL DAMAGE_TYPE_FIRE DAMAGE_TYPE_MAGICAL DAMAGE_TYPE_NEGATIVE DAMAGE_TYPE_PIERCING DAMAGE_TYPE_POSITIVE DAMAGE_TYPE_SLASHING DAMAGE_TYPE_SONIC