* Implement SetFace opcode
This implements the opcode that's used to update zone clients when a
client updates their face
* Use SetFace in #feature command
Add check for valid number
This adds the #feature eyes command which isn't in the illusion struct
* [Commands] Cleanup #reloadzps Command.
- Cleanup messages and logic.
- Make reloading of zone points global instead of zone specific.
* Further cleanup.
- Add zone->GetZoneDescription().
- Add mob->GetTargetDescription(mob).
* Final cleanup.
* Typo.
* [Commands] Add additional #peqzone functionality.
- Add #peqzone flagging capabilities so operators don't have to blanket allow #peqzone access to zones.
- Allows you to set a zone's `peqzone` column to `2` and disallow use of `#peqzone` until they have been given the appropriate flag.
- Add #peqzone_flags command to list your #peqzone flags similar to #flags command.
- Add `character_peqzone_flags` table to database and database_schema.h.
- Required SQL update to add the new table.
- Add client:ClearPEQZoneFlag(zone_id) to Lua.
- Add client:HasPEQZoneFlag(zone_id) to Lua.
- Add client:LoadPEQZoneFlags() to Lua.
- Add client:LoadZoneFlags() to Lua.
- Add client:SendPEQZoneFlagInfo(client) to Lua.
- Add client:SetPEQZoneFlag(zone_id) to Lua.
- Add $client->ClearPEQZoneFlag(zone_id) to Perl.
- Add $client->HasPEQZoneFlag(zone_id) to Perl.
- Add $client->LoadPEQZoneFlags() to Perl.
- Add $client->SendPEQZoneFlagInfo(client) to Perl.
- Add $client->SetPEQZoneFlag(zone_id) to Perl.
* Fixes.
* [Quest API] Add AddPlatinum(), GetCarriedPlatinum() and TakePlatinum() to Perl/Lua.
- Allows for easier NPC interactions.
- GetCarriedPlatinum() adds together all currencies in inventory based on conversion amounts so it works easily with removals/checks.
- Add $client->AddPlatinum(platinum, update_client) to Perl.
- Add $client->GetCarriedPlatinum() to Perl.
- Add $client->TakePlatinum(platinum, update_client) to Perl.
- Add client:AddPlatinum(platinum, update_client) to Lua.
- Add client:GetCarriedPlatinum() to Lua.
- Add client:TakePlatinum(platinum, update_client) to Lua.
* Formatting.
* invulnerable
* modifier
* fix
* fix
* fix
* [API] Perl functions to set invulnerable to and modify environmental damage.
* [API] Perl and Lua functions to set invulnerable to and modify environmental damage.
credit to kinglykrab for lua
* test
* complete
* Update effects.cpp
* Update spells.cpp
* Update effects.cpp
* [Spells] Support for bards using Disciplines while casting or /melody.
Support for spell field 'cast not standing' not allow casting from divine aura
* [Spells] Support for bards using Disciplines while casting or /melody.
DA bypass logic for spells with field 'cast_not_standing'
* updates
* stun and mez bypass
* Update spdat.cpp
* Update spdat.cpp
* Update spells.cpp
* clean
* requirement messages
* update
* pct
* save work
* Reform code 1_22_22
* updated
* update id to pointer
* Update spells.cpp
* rework 2
* update 1_23_22
* Update spells.cpp
* updates
* msg string works
* fix disc timers not be set
* more optimization
* update 1_23_22 PM
moved stop casting out
charm and harmony moved in
* update 1_25_22
rework of functions
* updates 1_26_22
* remove old checks
* gm override added for some
* update bard AA casting checks
* updates
* addbuff exception for bard
* debugs
* charm working
* update
* moved skill check here
* cast from item while singing
* lets not attack mounts
* instant cast items click
* aug clicks working
* aug tests
Bug? Cast time not display on aug clicks for bards
* aug recast from items semi ok
* added item timer function
* unified setting item recast timer
* clean up time
* update
* bard AA cast updates
* debugs removed
* debugs removed
* clean up
* clean up
* better placement of bindsight and numhits fix
* move and rename function
* Update spells.cpp
* add logs
* delete old DoCastingChecks
* Removed old bard pulse functions
* remove AEBardPulse and GroupPulse
* removed Raid::GroupBardPulse
* Pulse Restriction: Divine Aura
* Pulse Restrictions : Fear behavior
* Update spells.cpp
* Update spells.cpp
* [Spells] Major update to Bard song pulsing, Bard item clicks while singing, and spell casting restriction logic.
bots...
* [Spells] Major update to Bard song pulsing, Bard item clicks while singing, and spell casting restriction logic.
added recommended isvalidspell check
* [Spells] Major update to Bard song pulsing, Bard item clicks while singing, and spell casting restriction logic.
merged
* [Spells] Major update to Bard song pulsing, Bard item clicks while singing, and spell casting restriction logic.
removed defines since we have them as constants
* Fix for illusion wear change
On zone in, mobs with illusions were not displaying correct armor.
* [Bug Fix] Illusions will now properly display armor to other clients when they zone in
better looping
* [Bug Fix] Fix issue where you can set your title to titles you don't have.
* Fixes.
* Fix missing logic check for HasTitle
Co-authored-by: Natedog2012 <jwalters_06@yahoo.com>
* Update client_packet.cpp
* [Bug Fix] Do not allow /open to be used on traps or auras, causes crash
* [Bug Fix] Do not allow /open to be used on traps or auras, causes crash
- Disallows multiple augments via #augmentitem or otherwise.
- Added ItemInstance::ContainsAugmentByID(item_id) helper method for finding an augment in an item instance.
* [Bug Fix] Add range check to OP_PickPocket
* Pickpocket distance is 15 constant according to Mackal
* Re-add wiggle room for distance check due to pathing
Added 1 rule per class that defines tracking distance multiplier for that class
Kept the defaults of 12 for ranger, 10 for druid, and 7 for bard
Created 1 method for determining class tracking distance multiplier
Created 1 method for determining if a class can track, based on multiplier
Updated tracking logic to use these methods to determine whether a tracking
packet should and can be sent or not.