From 02747cc9414fd471e8f7332fb476e4f0de631ed4 Mon Sep 17 00:00:00 2001 From: Akkadius Date: Sun, 1 Jul 2018 02:29:28 -0500 Subject: [PATCH] Update Perl API --- Perl-API.md | 1065 ++++++++++++++++++++++++++------------------------- 1 file changed, 549 insertions(+), 516 deletions(-) diff --git a/Perl-API.md b/Perl-API.md index 0b61b8f..dcbc75c 100644 --- a/Perl-API.md +++ b/Perl-API.md @@ -700,534 +700,567 @@ UseDiscipline(spell_id, target) WorldKick() ``` -#### **Corpse - $corpse->Object();** +# Corpse - AddItem(itemnum, charges, slot) - AddLooter(who) - AllowMobLoot(them, slot) - CanMobLoot(charid) - CastRezz(spellid, Caster) - CompleteRezz() - CountItems() - Delete() - GetCharID() - GetCopper() - GetDBID() - GetDecayTime() - GetGold() - GetOwnerName() - GetPlatinum() - GetSilver() - GetWornItem(equipSlot) - IsEmpty() - IsLocked() - IsRezzed() - Lock() - RemoveCash() - RemoveItem(lootslot) - ResetLooter() - SetCash(in\_copper, in\_silver, in\_gold, in\_platinum) - SetDecayTimer(decaytime) - Summon(client, spell) - UnLock() +```perl +$corpse->AddItem(itemnum, charges, slot) +``` -#### **EntityList - $entity_list->Object();** +```perl +AddItem(itemnum, charges, slot) +AddLooter(who) +AllowMobLoot(them, slot) +CanMobLoot(charid) +CastRezz(spellid, Caster) +CompleteRezz() +CountItems() +Delete() +GetCharID() +GetCopper() +GetDBID() +GetDecayTime() +GetGold() +GetOwnerName() +GetPlatinum() +GetSilver() +GetWornItem(equipSlot) +IsEmpty() +IsLocked() +IsRezzed() +Lock() +RemoveCash() +RemoveItem(lootslot) +ResetLooter() +SetCash(in_copper, in_silver, in_gold, in_platinum) +SetDecayTimer(decaytime) +Summon(client, spell) +UnLock() +``` - CanAddHateForMob(p) - Clear() - ClearClientPetitionQueue() - ClearFeignAggro(targ) - DeleteNPCCorpses() - DeletePlayerCorpses() - DoubleAggro(who) - Fighting(targ) - FindDoor(id) - GetClientByAccID(accid) - GetClientByCharID(iCharID) - GetClientByID(id) - GetClientByName(name) - GetClientByWID(iWID) - GetClientList() - GetCorpseByID(id) - GetCorpseByName(name) - GetCorpseByOwner(client) - GetCorpseList() - GetDoorsByDBID(id) - GetDoorsByID(id) - GetDoorsList() - GetGroupByClient(client) - GetGroupByID(id) - GetGroupByLeaderName(leader) - GetGroupByMob(mob) - GetMob(name) - GetMobByID(id) - GetMobByNpcTypeID(get_id) - GetMobID(id) - GetMobList() - GetNPCByID(id) - GetNPCByNPCTypeID(npc_id) - GetNPCList() - GetObjectByDBID() - GetObjectByID() - GetObjectList() - GetRaidByClient(client) - GetRaidByID(id) - GetRandomClient(x, y, z, range, ClientToExclude) - HalveAggro(who) - MakeNameUnique(name) - MessageClose(sender, skipsender, dist, type, message, ...) - MessageGroup(sender, skipclose, type, message, ...) - MessageStatus(to\_guilddbid, to\_minstatus, type, message, ...) - OpenDoorsNear(opener) - RemoveAllClients() - RemoveAllCorpses() - RemoveAllDoors() - RemoveAllGroups() - RemoveAllMobs() - RemoveAllNPCs() - RemoveAllObjects() - RemoveAllTraps() - RemoveClient(delete_id) - RemoveCorpse(delete_id) - RemoveDoor(delete_id) - RemoveEntity(id) - RemoveFromHateLists(mob, settoone) - RemoveFromTargets(mob) - RemoveGroup(delete_id) - RemoveMob(delete_id) - RemoveNPC(delete_id) - RemoveNumbers(CLASS, name) - RemoveObject(delete_id) - RemoveTrap(delete_id) - ReplaceWithTarget(pOldMob, pNewTarget) - SignalAllClients(data) - SignalMobsByNPCID(npc\_type, signal\_id) +# EntityList -#### **Group - $group->Object(); ($group needs to be defined from my $group = $client->GetGroup())** +```perl +$entity_list->Object(); +``` - CastGroupSpell(caster, spellid) - DisbandGroup() - GetHighestLevel() - GetID() - GetLeader() - GetLeaderName() - GetMember(number) # Returns a client pointer to the group member (NULL if that member doesn't exist) - GetTotalGroupDamage(other) - GroupCount() - GroupMessage(sender, message) - IsGroupMember(client) - IsLeader(leadertest) - SendHPPacketsFrom(newmember) - SendHPPacketsTo(newmember) - SetLeader(newleader) - SplitExp(exp, other) - SplitMoney(copper, silver, gold, platinum) - TeleportGroup(sender, zoneID, x, y, z) +```perl +CanAddHateForMob(p) +Clear() +ClearClientPetitionQueue() +ClearFeignAggro(targ) +DeleteNPCCorpses() +DeletePlayerCorpses() +DoubleAggro(who) +Fighting(targ) +FindDoor(id) +GetClientByAccID(accid) +GetClientByCharID(iCharID) +GetClientByID(id) +GetClientByName(name) +GetClientByWID(iWID) +GetClientList() +GetCorpseByID(id) +GetCorpseByName(name) +GetCorpseByOwner(client) +GetCorpseList() +GetDoorsByDBID(id) +GetDoorsByID(id) +GetDoorsList() +GetGroupByClient(client) +GetGroupByID(id) +GetGroupByLeaderName(leader) +GetGroupByMob(mob) +GetMob(name) +GetMobByID(id) +GetMobByNpcTypeID(get_id) +GetMobID(id) +GetMobList() +GetNPCByID(id) +GetNPCByNPCTypeID(npc_id) +GetNPCList() +GetObjectByDBID() +GetObjectByID() +GetObjectList() +GetRaidByClient(client) +GetRaidByID(id) +GetRandomClient(x, y, z, range, ClientToExclude) +HalveAggro(who) +MakeNameUnique(name) +MessageClose(sender, skipsender, dist, type, message, ...) +MessageGroup(sender, skipclose, type, message, ...) +MessageStatus(to_guilddbid, to_minstatus, type, message, ...) +OpenDoorsNear(opener) +RemoveAllClients() +RemoveAllCorpses() +RemoveAllDoors() +RemoveAllGroups() +RemoveAllMobs() +RemoveAllNPCs() +RemoveAllObjects() +RemoveAllTraps() +RemoveClient(delete_id) +RemoveCorpse(delete_id) +RemoveDoor(delete_id) +RemoveEntity(id) +RemoveFromHateLists(mob, settoone) +RemoveFromTargets(mob) +RemoveGroup(delete_id) +RemoveMob(delete_id) +RemoveNPC(delete_id) +RemoveNumbers(CLASS, name) +RemoveObject(delete_id) +RemoveTrap(delete_id) +ReplaceWithTarget(pOldMob, pNewTarget) +SignalAllClients(data) +SignalMobsByNPCID(npc_type, signal_id) +``` -#### **Raid - $raid->Object(); ($raid needs to be defined from my $raid = $client->GetRaid())** +# Group - BalanceHP() - CastGroupSpell(caster, spellid) - GetClientByIndex(number) - GetGroup() - GetHighestLevel() - GetID() - GetLowestLevel() - GetMember(number) - GetTotalRaidDamage(other) - GroupCount() - IsGroupLeader(client) - IsLeader(client) - IsRaidMember(name) # $raid->IsRaidMember("Hateborne") - RaidCount() - SplitExp(exp, other) - SplitMoney(copper, silver, gold, platinum) - TeleportGroup(sender, zoneID, x, y, z, heading) - TeleportRaid(sender, zoneID, x, y, z, heading) + * $group needs to be fetched from an entity object, for example: $group = $client->GetGroup()) + +```perl +CastGroupSpell(caster, spellid) +DisbandGroup() +GetHighestLevel() +GetID() +GetLeader() +GetLeaderName() +GetMember(number) # Returns a client pointer to the group member (NULL if that member doesn't exist) +GetTotalGroupDamage(other) +GroupCount() +GroupMessage(sender, message) +IsGroupMember(client) +IsLeader(leadertest) +SendHPPacketsFrom(newmember) +SendHPPacketsTo(newmember) +SetLeader(newleader) +SplitExp(exp, other) +SplitMoney(copper, silver, gold, platinum) +TeleportGroup(sender, zoneID, x, y, z) +``` + +# Raid + +```perl +$raid->Object(); +``` + +* $raid needs to be fetched from an entity object, for example: $raid = $client->GetRaid()) + +```perl +BalanceHP() +CastGroupSpell(caster, spellid) +GetClientByIndex(number) +GetGroup() +GetHighestLevel() +GetID() +GetLowestLevel() +GetMember(number) +GetTotalRaidDamage(other) +GroupCount() +IsGroupLeader(client) +IsLeader(client) +IsRaidMember(name) # $raid->IsRaidMember("Hateborne") +RaidCount() +SplitExp(exp, other) +SplitMoney(copper, silver, gold, platinum) +TeleportGroup(sender, zoneID, x, y, z, heading) +TeleportRaid(sender, zoneID, x, y, z, heading) +``` #### **Mob - $mob->Object();** - AddFeignMemory(attacker) - AddToHateList(other, hate, damage, iYellForHelp, bFrenzy, iBuffTic) - Attack(other, Hand, FromRiposte) - BehindMob(other, playerx, playery) - BuffFadeAll() - BuffFadeByEffect(effectid, skipslot) - BuffFadeBySlot(slot, iRecalcBonuses) - BuffFadeBySpellID(spell_id) - CalculateDistance(x, y, z) - CalculateHeadingToTarget(in\_x, in\_y) - CalculateNewPosition(x, y, z, speed, checkZ) - CalculateNewPosition2(x, y, z, speed, checkZ) - CameraEffect(duration, intensity, singleclient, serverwide) - CanBuffStack(spellid, caster_level, iFailIfOverwrite) - CanClassEquipItem(item_id) - CanThisClassDodge() - CanThisClassDoubleAttack() - CanThisClassDualWield() - CanThisClassParry() - CanThisClassRiposte() - CastSpell(spell\_id, target\_id, slot, casttime, mana\_cost, resist\_adjust) - CastToClient() - CastToCorpse() - CastToMob() - CastToNPC() - CastingSpellID() - ChangeSize(in_size, bNoRestriction) - Charmed() - CheckAggro(other) - CheckAggroAmount(spellid) - CheckHealAggroAmount(spellid) - CheckLoS(other) - CheckLoSToLoc(x, y, z, mob_size) - ClearFeignMemory() - ClearSpecialAbilities() - CombatRange() - Damage(from, damage, spell\_id, attack\_skill, avoidable, buffslot, iBuffTic) - DelGlobal(varname) - Depop(StartSpawnTimer) - DivineAura() - DoAnim(animnum, type=1) - DoArcheryAttackDmg() - DoKnockback(caster, pushback, pushup) # $client->DoKnockback($npc, 10, 7) would appear that the NPC knocked the client back - DoMeleeSkillAttackDmg() - DoSpecialAttackDamage(target, skill, max\_damage, min\_damage, hate_override) - DoThrowingAttackDmg() - DontBuffMeBefore() - DontDotMeBefore() - DontHealMeBefore() - DontRootMeBefore() - DontSnareMeBefore() - Emote(format, ...) - EntityVariableExists() - FaceTarget(MobToFace, update) - FindBuff(spellid) - FindGroundZ(x, y, z_offset) - FindType(type, bOffensive, threshold) - GMMove(x, y, z, heading) - Gate() - GetAA(aa_id) - GetAC() - GetAccuracyRating() - GetAvoidanceRating() - GetAGI() - GetATK() - GetAttackDelay() - GetActSpellCasttime(spell_id, casttime) - GetActSpellCost(spell_id, cost) - GetActSpellDamage(spell_id, value) - GetActSpellDuration(spell_id, duration) - GetActSpellHealing(spell_id, value) - GetActSpellRange(spell_id, range) - GetAggroRange() - GetAllowBeneficial() - GetAppearance() - GetArmorTint(material_slot) - GetAssistRange() - GetBaseGender() - GetBaseRace() - GetBeard() - GetBeardColor() - GetBodyType() - GetBuffSlotFromType(type) - GetCHA() - GetCR() - GetCasterLevel(spell_id) - GetClass() - GetClassLevelFactor() - GetCleanName() - GetCorruption() - GetDEX() - GetDR() - GetDamageAmount(tmob) - GetDeity() - GetDrakkinDetails() - GetDrakkinHeritage() - GetDrakkinTattoo() - GetEntityVariable() - GetEquipment(material_slot) - GetEquipmentColor(material_slot) - GetEquipmentMaterial(material_slot) - GetEyeColor1() - GetEyeColor2() - GetFR() - GetFlurryChance() - GetFollowID() - GetGender() - GetGlobal(varname) - GetHP() - GetHPRatio() - GetHairColor() - GetHairStyle() - GetHaste() - GetHateAmount(tmob, is_dam) - GetHateDamageTop(other) - GetHateList() - GetHateRandom() - GetHateTop() - GetHeading() - GetHelmTexture() - GetID() - GetINT() - GetInvul() - GetItemHPBonuses() - GetItemStat(itemid, stat) - GetLevel() - GetLevelCon(iOtherLevel) - GetLevelHP(tlevel) - GetLuclinFace() - GetMR() - GetMana() - GetManaRatio() - GetMaxAGI() - GetMaxCHA() - GetMaxDEX() - GetMaxHP() - GetMaxINT() - GetMaxMana() - GetMaxSTA() - GetMaxSTR() - GetMaxWIS() - GetModSkillDmgTaken() - GetModVulnerability() - GetMonkHandToHandDamage() - GetMonkHandToHandDelay() - GetNPCTypeID() - GetName() - GetOwnerID() - GetPR() - GetPetID() - GetPetOrder() - GetPetType() - GetRace() - GetResist(type) - GetReverseFactionCon(iOther) - GetRunAnimSpeed() - GetRunspeed() - GetSTA() - GetSTR() - GetShieldTarget() - GetSize() - GetSkill(skill_num) - GetSkillDmgTaken() - GetSpecialAbility(special_ability) - GetSpecialAbilityParam(special_ability, param) - GetSpecializeSkillValue(spell_id) - GetSpellHPBonuses() - GetSpellStat(spell_id, identifier, slot) # Slot is optional. - GetTarget() - GetTexture() - GetWIS() - GetWalkspeed() - GetWaypointH() - GetWaypointID() - GetWaypointPause() - GetWaypointX() - GetWaypointY() - GetWaypointZ() - GetX() - GetY() - GetZ() - GetZoneID() - GoToBind() - HasNPCSpecialAtk() - HasProcs() - HateSummon() - Heal() - HealDamage(amount\[, caster\]) - InterruptSpell(spellid) - IsAIControlled() - IsBeacon() - IsBeneficialAllowed() - IsCasting() - IsClient() - IsCorpse() - IsDoor() - IsEngaged() - IsEnraged() - IsImmuneToSpell(spell_id, caster) - IsInvisible(other) - IsMeleeDisabled() - IsMezzed() - IsMob() - IsMoving() - IsNPC() - IsNPCCorpse() - IsObject() - IsPlayerCorpse() - IsRoamer() - IsRooted() - IsRunning() - IsStunned() - IsTargeted() - IsTrap() - IsWarriorClass() - Kill() - MakePet(spell_id, pettype, name) - MakeTempPet(spell_id, name, duration, target, sticktarg?) - Mesmerize() - Message(type, message) - Message\_StringID(type, string\_id, distance) - ModSkillDmgTaken() - ModVulnerability() - NPCSpecialAttacks(parse, permtag, reset, remove) - ProcessSpecialAbilities(str) - ProjectileAnim(mob, item_id, IsArrow, speed, angle, tilt, arc) - QuestReward(client, silver, gold, platinum) - RangedAttack() - RemoveFromFeignMemory(attacker) - RemoveNimbusEffect(effectid) - ResistSpell(resist\_type, spell\_id, caster) - RogueAssassinate(other) - Say(format, language_id) - SendAppearanceEffect(effect1, effect2, effect3, effect4, effect5, specificclient) - SendIllusion(race, gender, texture, helmtexture, face, hairstyle, haircolor, beard, beardcolor, drakkin\_heritage, drakkin\_tattoo, drakkin_details, size) - SendPosUpdate(iSendToSelf) - SendPosition() - SendTo(new\_x, new\_y, new_z) - SendToFixZ(new\_x, new\_y, new_z) - SendWearChange(material_slot) - SetAllowBeneficial() - SetAppearance(app, iIgnoreSelf) - SetBodyType(type, overwrite_orig?) - SetCurrentWP(waypoint) - SetDeltas(delta\_x, delta\_y, delta\_z, delta\_h) - SetDisableMelee() - SetEntityVariable(id_num, var) - SetExtraHaste(Haste) - SetFlurryChance() - SetFlyMode(0|1|2|3) - SetFollowID(id) - SetGender(gender) - SetGlobal(varname, newvalue, options, duration, other) - SetHP(hp) - SetHate(other, hate, damage) - SetHeading(iHeading) - SetInvisible(state) - SetInvul(invul) - SetLD(value) - SetLevel(in_level, command) - SetMana(amount) - SetMaxHP() - SetOOCRegen() - SetOwnerID(NewOwnerID) - SetPetID(NewPetID) - SetPetOrder(i) - SetRace(race) - SetRunAnimSpeed(in) - SetRunning() - SetShieldTarget(mob) - SetSlotTint(material\_slot, red\_tint, green\_tint, blue\_tint) - SetSpecialAbility(ability, value) - SetSpecialAbilityParam(ability, param, value) - SetTarget(mob) - SetTargetDestSteps(target_steps) - SetTargetable(targetable) - SetTexture(texture) - Shout(format, ...) - SignalClient(client, data) - SpellEffect(effect, duration, finish\_delay, zone\_wide, unk20, perm\_effect, client) # duration, finish\_delay, zone\_wide, unk20, perm\_effect, and client are Optional. - SpellFinished(spell\_id, spell\_target, mana_cost) - Spin() - StartEnrage() - Stun(duration) # in whole seconds - TarGlobal(varname, value, duration, npcid, charid, zoneid) - TempName(name) - ThrowingAttack() - TypesTempPet(typesid, name, duration, follow, target, sticktarg); - WearChange(material_slot, texture, color) - WipeHateList() +```perl +AddFeignMemory(attacker) +AddToHateList(other, hate, damage, iYellForHelp, bFrenzy, iBuffTic) +Attack(other, Hand, FromRiposte) +BehindMob(other, playerx, playery) +BuffFadeAll() +BuffFadeByEffect(effectid, skipslot) +BuffFadeBySlot(slot, iRecalcBonuses) +BuffFadeBySpellID(spell_id) +CalculateDistance(x, y, z) +CalculateHeadingToTarget(in_x, in_y) +CalculateNewPosition(x, y, z, speed, checkZ) +CalculateNewPosition2(x, y, z, speed, checkZ) +CameraEffect(duration, intensity, singleclient, serverwide) +CanBuffStack(spellid, caster_level, iFailIfOverwrite) +CanClassEquipItem(item_id) +CanThisClassDodge() +CanThisClassDoubleAttack() +CanThisClassDualWield() +CanThisClassParry() +CanThisClassRiposte() +CastSpell(spell_id, target_id, slot, casttime, mana_cost, resist_adjust) +CastToClient() +CastToCorpse() +CastToMob() +CastToNPC() +CastingSpellID() +ChangeSize(in_size, bNoRestriction) +Charmed() +CheckAggro(other) +CheckAggroAmount(spellid) +CheckHealAggroAmount(spellid) +CheckLoS(other) +CheckLoSToLoc(x, y, z, mob_size) +ClearFeignMemory() +ClearSpecialAbilities() +CombatRange() +Damage(from, damage, spell_id, attack_skill, avoidable, buffslot, iBuffTic) +DelGlobal(varname) +Depop(StartSpawnTimer) +DivineAura() +DoAnim(animnum, type=1) +DoArcheryAttackDmg() +DoKnockback(caster, pushback, pushup)  # $client->DoKnockback($npc, 10, 7) would appear that the NPC knocked the client back +DoMeleeSkillAttackDmg() +DoSpecialAttackDamage(target, skill, max_damage, min_damage, hate_override) +DoThrowingAttackDmg() +DontBuffMeBefore() +DontDotMeBefore() +DontHealMeBefore() +DontRootMeBefore() +DontSnareMeBefore() +Emote(format, ...) +EntityVariableExists() +FaceTarget(MobToFace, update) +FindBuff(spellid) +FindGroundZ(x, y, z_offset) +FindType(type, bOffensive, threshold) +GMMove(x, y, z, heading) +Gate() +GetAA(aa_id) +GetAC() +GetAccuracyRating() +GetAvoidanceRating() +GetAGI() +GetATK() +GetAttackDelay() +GetActSpellCasttime(spell_id, casttime) +GetActSpellCost(spell_id, cost) +GetActSpellDamage(spell_id, value) +GetActSpellDuration(spell_id, duration) +GetActSpellHealing(spell_id, value) +GetActSpellRange(spell_id, range) +GetAggroRange() +GetAllowBeneficial() +GetAppearance() +GetArmorTint(material_slot) +GetAssistRange() +GetBaseGender() +GetBaseRace() +GetBeard() +GetBeardColor() +GetBodyType() +GetBuffSlotFromType(type) +GetCHA() +GetCR() +GetCasterLevel(spell_id) +GetClass() +GetClassLevelFactor() +GetCleanName() +GetCorruption() +GetDEX() +GetDR() +GetDamageAmount(tmob) +GetDeity() +GetDrakkinDetails() +GetDrakkinHeritage() +GetDrakkinTattoo() +GetEntityVariable() +GetEquipment(material_slot) +GetEquipmentColor(material_slot) +GetEquipmentMaterial(material_slot) +GetEyeColor1() +GetEyeColor2() +GetFR() +GetFlurryChance() +GetFollowID() +GetGender() +GetGlobal(varname) +GetHP() +GetHPRatio() +GetHairColor() +GetHairStyle() +GetHaste() +GetHateAmount(tmob, is_dam) +GetHateDamageTop(other) +GetHateList() +GetHateRandom() +GetHateTop() +GetHeading() +GetHelmTexture() +GetID() +GetINT() +GetInvul() +GetItemHPBonuses() +GetItemStat(itemid, stat) +GetLevel() +GetLevelCon(iOtherLevel) +GetLevelHP(tlevel) +GetLuclinFace() +GetMR() +GetMana() +GetManaRatio() +GetMaxAGI() +GetMaxCHA() +GetMaxDEX() +GetMaxHP() +GetMaxINT() +GetMaxMana() +GetMaxSTA() +GetMaxSTR() +GetMaxWIS() +GetModSkillDmgTaken() +GetModVulnerability() +GetMonkHandToHandDamage() +GetMonkHandToHandDelay() +GetNPCTypeID() +GetName() +GetOwnerID() +GetPR() +GetPetID() +GetPetOrder() +GetPetType() +GetRace() +GetResist(type) +GetReverseFactionCon(iOther) +GetRunAnimSpeed() +GetRunspeed() +GetSTA() +GetSTR() +GetShieldTarget() +GetSize() +GetSkill(skill_num) +GetSkillDmgTaken() +GetSpecialAbility(special_ability) +GetSpecialAbilityParam(special_ability, param) +GetSpecializeSkillValue(spell_id) +GetSpellHPBonuses() +GetSpellStat(spell_id, identifier, slot) # Slot is optional. +GetTarget() +GetTexture() +GetWIS() +GetWalkspeed() +GetWaypointH() +GetWaypointID() +GetWaypointPause() +GetWaypointX() +GetWaypointY() +GetWaypointZ() +GetX() +GetY() +GetZ() +GetZoneID() +GoToBind() +HasNPCSpecialAtk() +HasProcs() +HateSummon() +Heal() +HealDamage(amount[, caster]) +InterruptSpell(spellid) +IsAIControlled() +IsBeacon() +IsBeneficialAllowed() +IsCasting() +IsClient() +IsCorpse() +IsDoor() +IsEngaged() +IsEnraged() +IsImmuneToSpell(spell_id, caster) +IsInvisible(other) +IsMeleeDisabled() +IsMezzed() +IsMob() +IsMoving() +IsNPC() +IsNPCCorpse() +IsObject() +IsPlayerCorpse() +IsRoamer() +IsRooted() +IsRunning() +IsStunned() +IsTargeted() +IsTrap() +IsWarriorClass() +Kill() +MakePet(spell_id, pettype, name) +MakeTempPet(spell_id, name, duration, target, sticktarg?) +Mesmerize() +Message(type, message) +Message_StringID(type, string_id, distance) +ModSkillDmgTaken() +ModVulnerability() +NPCSpecialAttacks(parse, permtag, reset, remove) +ProcessSpecialAbilities(str) +ProjectileAnim(mob, item_id, IsArrow, speed, angle, tilt, arc) +QuestReward(client, silver, gold, platinum) +RangedAttack() +RemoveFromFeignMemory(attacker) +RemoveNimbusEffect(effectid) +ResistSpell(resist_type, spell_id, caster) +RogueAssassinate(other) +Say(format, language_id) +SendAppearanceEffect(effect1, effect2, effect3, effect4, effect5, specificclient) +SendIllusion(race, gender, texture, helmtexture, face, hairstyle, haircolor, beard, beardcolor, drakkin_heritage, drakkin_tattoo, drakkin_details, size) +SendPosUpdate(iSendToSelf) +SendPosition() +SendTo(new_x, new_y, new_z) +SendToFixZ(new_x, new_y, new_z) +SendWearChange(material_slot) +SetAllowBeneficial() +SetAppearance(app, iIgnoreSelf) +SetBodyType(type, overwrite_orig?) +SetCurrentWP(waypoint) +SetDeltas(delta_x, delta_y, delta_z, delta_h) +SetDisableMelee() +SetEntityVariable(id_num, var) +SetExtraHaste(Haste) +SetFlurryChance() +SetFlyMode(0|1|2|3) +SetFollowID(id) +SetGender(gender) +SetGlobal(varname, newvalue, options, duration, other) +SetHP(hp) +SetHate(other, hate, damage) +SetHeading(iHeading) +SetInvisible(state) +SetInvul(invul) +SetLD(value) +SetLevel(in_level, command) +SetMana(amount) +SetMaxHP() +SetOOCRegen() +SetOwnerID(NewOwnerID) +SetPetID(NewPetID) +SetPetOrder(i) +SetRace(race) +SetRunAnimSpeed(in) +SetRunning() +SetShieldTarget(mob) +SetSlotTint(material_slot, red_tint, green_tint, blue_tint) +SetSpecialAbility(ability, value) +SetSpecialAbilityParam(ability, param, value) +SetTarget(mob) +SetTargetDestSteps(target_steps) +SetTargetable(targetable) +SetTexture(texture) +Shout(format, ...) +SignalClient(client, data) +SpellEffect(effect, duration, finish_delay, zone_wide, unk20, perm_effect, client) # duration, finish_delay, zone_wide, unk20, perm_effect, and client are Optional. +SpellFinished(spell_id, spell_target, mana_cost) +Spin() +StartEnrage() +Stun(duration) # in whole seconds +TarGlobal(varname, value, duration, npcid, charid, zoneid) +TempName(name) +ThrowingAttack() +TypesTempPet(typesid, name, duration, follow, target, sticktarg); +WearChange(material_slot, texture, color) +WipeHateList() +``` -#### **NPC - $npc->Object();** +# NPC - AI_SetRoambox(iDist, iMaxX, iMinX, iMaxY, iMinY, iDelay) - AddAISpell(priority, spell\_id, type, mana\_cost, recast\_delay, resist\_adjust) - AddCash(in\_copper, in\_silver, in\_gold, in\_platinum) - AddItem(itemid, charges, equipitem) - AddLootTable() - AddDefensiveProc(spellid, chance) - AddMeleeProc(spellid, chance) - AddRangedProc(spellid, chance) - AssignWaypoints(grid) - CalculateNewWaypoint() - CheckNPCFactionAlly(other_faction) - ClearItemList() - CountLoot() - DisplayWaypointInfo(to) - DoClassAttacks(target) - GetAccuracyRating() - GetAttackSpeed() - GetCopper() - GetGold() - GetGrid() - GetGuardPointX() - GetGuardPointY() - GetGuardPointZ() - GetLoottableID() - GetMaxDMG() - GetMaxDamage(tlevel) - GetMaxWp() - GetMerchantProbability() - GetMinDMG() - GetNPCFactionID() - GetNPCHate(in_ent) - GetNPCSpellsID() - GetPetSpellID() - GetPlatinum() - GetPrimSkill() - GetPrimaryFaction() - GetSecSkill() - GetSilver() - GetSlowMitigation() - GetSp2() - GetSpawnPointH() - GetSpawnPointID() # Returns spawn2 id - GetSpawnPointX() - GetSpawnPointY() - GetSpawnPointZ() - GetSpellFocusDMG() - GetSpellFocusHeal() - GetSwarmOwner() - GetSwarmTarget() - GetWaypointMax() - IsAnimal() - IsGuarding() - IsOnHatelist(p) - ModifyNPCStat(identifier, newValue) - MoveTo(mtx, mty, mtz, mth, saveguard) - NextGuardPosition() - PauseWandering(pausetime) - PickPocket(thief) - RemoveAISpell(spell_id) - RemoveCash() - RemoveFromHateList(mob) - RemoveItem(item_id, quantity, slot) - RemoveMeleeProc(spell_id) - RemoveDefensiveProc(spell_id) - RemoveDefensiveProc(spell_id) - ResumeWandering() - SaveGuardSpot(iClearGuardSpot) - SetCopper(amt) - SetGold(amt) - SetGrid(grid_) - SetMerchantProbability(amt) - SetNPCFactionID(in) - SetPetSpellID(amt) - SetPlatinum(amt) - SetPrimSkill(skill_type) - SetSaveWaypoint(waypoint) - SetSecSkill(skill_type) - SetSilver(amt) - SetSp2(sg2) - SetSpellFocusDMG() - SetSpellFocusHeal() - SetSwarmTarget() - SetTaunting(tog) - SetWaypointPause() - SignalNPC(signal_id) - StartSwarmTimer(duration) - StopWandering() - UpdateWaypoint(wp_index) +Example: +```perl +$npc->GetLoottableID(); +``` + +```perl +AI_SetRoambox(iDist, iMaxX, iMinX, iMaxY, iMinY, iDelay) +AddAISpell(priority, spell_id, type, mana_cost, recast_delay, resist_adjust) +AddCash(in_copper, in_silver, in_gold, in_platinum) +AddItem(itemid, charges, equipitem) +AddLootTable() +AddDefensiveProc(spellid, chance)    +AddMeleeProc(spellid, chance) +AddRangedProc(spellid, chance) +AssignWaypoints(grid) +CalculateNewWaypoint() +CheckNPCFactionAlly(other_faction) +ClearItemList() +CountLoot() +DisplayWaypointInfo(to) +DoClassAttacks(target) +GetAccuracyRating() +GetAttackSpeed() +GetCopper() +GetGold() +GetGrid() +GetGuardPointX() +GetGuardPointY() +GetGuardPointZ() +GetLoottableID() +GetMaxDMG() +GetMaxDamage(tlevel) +GetMaxWp() +GetMerchantProbability() +GetMinDMG() +GetNPCFactionID() +GetNPCHate(in_ent) +GetNPCSpellsID() +GetPetSpellID() +GetPlatinum() +GetPrimSkill() +GetPrimaryFaction() +GetSecSkill() +GetSilver() +GetSlowMitigation() +GetSp2() +GetSpawnPointH() +GetSpawnPointID() # Returns spawn2 id +GetSpawnPointX() +GetSpawnPointY() +GetSpawnPointZ() +GetSpellFocusDMG() +GetSpellFocusHeal() +GetSwarmOwner() +GetSwarmTarget() +GetWaypointMax() +IsAnimal() +IsGuarding() +IsOnHatelist(p) +ModifyNPCStat(identifier, newValue) +MoveTo(mtx, mty, mtz, mth, saveguard) +NextGuardPosition() +PauseWandering(pausetime) +PickPocket(thief) +RemoveAISpell(spell_id) +RemoveCash() +RemoveFromHateList(mob) +RemoveItem(item_id, quantity, slot) +RemoveMeleeProc(spell_id) +RemoveDefensiveProc(spell_id) +RemoveDefensiveProc(spell_id) +ResumeWandering() +SaveGuardSpot(iClearGuardSpot) +SetCopper(amt) +SetGold(amt) +SetGrid(grid_) +SetMerchantProbability(amt) +SetNPCFactionID(in) +SetPetSpellID(amt) +SetPlatinum(amt) +SetPrimSkill(skill_type) +SetSaveWaypoint(waypoint) +SetSecSkill(skill_type) +SetSilver(amt) +SetSp2(sg2) +SetSpellFocusDMG() +SetSpellFocusHeal() +SetSwarmTarget() +SetTaunting(tog) +SetWaypointPause() +SignalNPC(signal_id) +StartSwarmTimer(duration) +StopWandering() +UpdateWaypoint(wp_index) +``` #### **Quest Item**