- Redesigned stealth and invisibility handling
  - Implemented the handling of multiple stealth types
- Implemented fake inebriation
- The message deliverer no longer sends packets from a non-visible source
  - The server won't send that much garbage which just takes bandwith
  - It won't be possible to use cheats to detect invisible objects
- Removed a lot of checks for the Z-coord
  - Fixes visibility problems happening while flying
- Limited the grid activation range of creatures to use less resources
- Implemented Shroud of Death
- Implemented increased visibility range for active objects
- Removed visibility check at spellhit (only sanctuary effects should prevent it)
(And a lot of other changes...)

Closes issue 4208
Closes issue 3049
Closes issue 2097
Closes issue 2198
Closes issue 2384
Closes issue 2197
Closes issue 2319

--HG--
branch : trunk
This commit is contained in:
linencloth
2010-11-13 17:18:09 +01:00
parent 995408f0a9
commit bf888285aa
36 changed files with 780 additions and 791 deletions
@@ -980,6 +980,46 @@ enum SpellCastResult
SPELL_CAST_OK = 255 // custom value, don't must be send to client
};
enum StealthType
{
STEALTH_GENERAL = 0,
STEALTH_TRAP = 1,
TOTAL_STEALTH_TYPES = 2
};
enum InvisibilityType
{
INVISIBILITY_GENERAL = 0,
INVISIBILITY_UNK1 = 1,
INVISIBILITY_UNK2 = 2,
INVISIBILITY_TRAP = 3,
INVISIBILITY_UNK4 = 4,
INVISIBILITY_UNK5 = 5,
INVISIBILITY_DRUNK = 6,
INVISIBILITY_UNK7 = 7,
INVISIBILITY_UNK8 = 8,
INVISIBILITY_UNK9 = 9,
INVISIBILITY_UNK10 = 10,
INVISIBILITY_UNK11 = 11,
TOTAL_INVISIBILITY_TYPES = 12
};
enum ServerSideVisibilityType
{
SERVERSIDE_VISIBILITY_GM = 0,
SERVERSIDE_VISIBILITY_GHOST = 1,
TOTAL_SERVERSIDE_VISIBILITY_TYPES = 2
};
enum GhostVisibilityType
{
GHOST_VISIBILITY_ALIVE = 0x1,
GHOST_VISIBILITY_GHOST = 0x2
};
// Spell aura states
enum AuraState
{ // (C) used in caster aura state (T) used in target aura state