ArcEmu: Mage Invisiblity Fix - ArcEmu

Jump to content

Toggle shoutbox Lastest Announcements

dfighter  : (07 December 2014 - 12:06 PM) Arcemu is in hibernation mode, please read http://arcemu.org/fo...showtopic=26903
dfighter  : (01 January 2013 - 05:56 PM) Arcemu wishes you all a happy new year!
Hasbro  : (12 September 2012 - 10:01 AM) Please excuse our outage from the web! Our web host had a major malfunction!
dfighter  : (01 September 2012 - 04:05 PM) Since the spam bots just don't want to stop, I've enabled admin verification when registering.
dfighter  : (23 January 2012 - 09:56 PM) Please note that from now on you will need to confirm your email on the wiki in order to edit it!
Hasbro  : (31 December 2011 - 12:50 PM) Happy New Years all!
Navid  : (26 December 2011 - 04:09 AM) Merry Christmas !!!!!! Happy holidays all :)
WAmadeus  : (24 December 2011 - 03:54 PM) Merry Christmas to all!
dfighter  : (24 December 2011 - 11:05 AM) The Arcemu team wishes y'all a Merry Christmukkah!
Hasbro  : (05 October 2011 - 12:53 PM) Looking for web designers for upcoming web related project. If you're interested in designing user interfaces contact me
dfighter  : (02 September 2011 - 03:47 PM) So who here wants vehicles in Arcemu? :P http://arcemu.org/fo...showtopic=25440
Hasbro  : (14 August 2011 - 03:25 PM) Join us on irc, grab an irc client and connect to irc.freenode.net join channel #arcemu /server irc.freenode.net:6667 /join #arcemu
jackpoz  : (03 August 2011 - 05:33 AM) to all Lua Engine (old one) users: please check http://arcemu.org/fo...showtopic=25274
Hasbro  : (20 May 2011 - 05:27 PM) Looking for people experienced with CMake configuration and setup! Contact me asap
Hasbro  : (15 May 2011 - 05:03 PM) ArcEmu is recruiting C++ programmers, contact Hasbro if interested.
paroxysm  : (03 May 2011 - 06:26 PM) Updated luabridge gossip example to describe the whole gossip creation process rather than just how to create menu. Gossip tutorial
paroxysm  : (23 April 2011 - 11:35 AM) Lua writers can refer to the Luabridge Tutorials section in the Wiki to learn how to write gossip code correctly.
Hasbro  : (20 April 2011 - 05:22 PM) Thank you for your continuous contribution of bug reports, we are working on them.
Hasbro  : (17 April 2011 - 03:20 AM) Please consider donating to support our bills. Donations can be sent using PayPal to donations@arcemu.org - Thank you for your support.
paroxysm  : (10 April 2011 - 12:43 AM) Refer to the Luabridge Tutorials section in the Wiki to learn the new syntax of luabridge.
Resize Shouts Area

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Mage Invisiblity Fix

#1 User is offline   alleycat 

  • Helps so much & is so mature & gay
  • PipPipPipPipPip
  • Group: Members
  • Posts: 835
  • Joined: 25-July 08
  • Gender:Male

Posted 25 March 2009 - 09:57 PM

What bug does this patch fix: <a href="http://www.arcemu.info/trac/ticket/51" target="_blank">http://www.arcemu.info/trac/ticket/51</a>

Detailed Explanation: Mage invisibility doesn't proc nor does it make you invisible.

How to reproduce: Try casting invisibilty

<div class='codetop'>Diff Patch</div>
<div class="brush: diff">
Index: SpellAuras.cpp
===================================================================
--- SpellAuras.cpp (revision 2386)
+++ SpellAuras.cpp (working copy)
@@ -2336,6 +2336,22 @@
if(caster && caster->IsPlayer())
static_cast< Player* >(caster)->SetTriggerChill(12494,mod->m_amount, false);
}break; //brain freeze
+ case 66:
+ {
+ // mage - invisibility
+ if( apply && !this->IsInterrupted() )
+ m_target->CastSpell( m_target, 32612, true );
+ }break;
+
+ case 32612:
+ {
+ // mage - invisibility override
+ if( p_target != NULL )
+ {
+ p_target->m_mageInvisibility = apply;
+ p_target->UpdateVisibility();
+ }
+ }break;
case 44543:
case 44545:
{
Index: Unit.cpp
===================================================================
--- Unit.cpp (revision 2386)
+++ Unit.cpp (working copy)
@@ -228,6 +228,7 @@
m_invisibility = 0;
m_invisible = false;
m_invisFlag = INVIS_FLAG_NORMAL;
+ m_mageInvisibility = false;

for(i = 0; i < INVIS_FLAG_TOTAL; i++)
{
Index: Unit.h
===================================================================
--- Unit.h (revision 2386)
+++ Unit.h (working copy)
@@ -1201,6 +1201,10 @@
RemoveAura( m_invisibility );
m_invisibility = 0;
}
+ else if ( m_mageInvisibility != 0 )
+ {
+ m_mageInvisibility = false;
+ }
}

uint32 m_stealth;
@@ -1300,6 +1304,7 @@
void EventUpdateFlag();
CombatStatusHandler CombatStatus;
bool m_temp_summon;
+ bool m_mageInvisibility;

void CancelSpell(Spell * ptr);
void EventStrikeWithAbility(uint64 guid, SpellEntry * sp, uint32 damage);
</div>
I can haz cookie?
0

#2 User is offline   Dr.Overclock 

  • Enthusiast
  • PipPipPip
  • Group: Members
  • Posts: 243
  • Joined: 05-September 08
  • Location:Italy, Milan
  • Interests:ArcEMU<br />C++<br />MySQL<br />PHP<br />Emulation

Posted 26 March 2009 - 09:26 AM

Can confirm, it works, thanks a lot alleycat.

I speak a bit English/Io parlo Italiano molto bene/Русский - мой родной язык.
Io parlo un po Inglese/Я говорю на Итальянском очень хорошо/Russian is my native language.
Я говорю немного на Английском/I speak Italian very well/Russo e' mio madre-lingua.
0

#3 User is offline   Hoffa 

  • Sup dawg
  • Group: Retired
  • Posts: 1,159
  • Joined: 11-December 08
  • Gender:Male
  • Location:Sweden
  • Interests:Trolling

Posted 26 March 2009 - 10:17 AM

- Applied.
- Moved to applied patches.
Posted ImagePosted Image



This person is known for trolling, flaming and extreme ignorance. Respond to at own risk.
0

#4 User is offline   Ackbar 

  • Newbie
  • Group: Members
  • Posts: 3
  • Joined: 22-March 09

Posted 27 March 2009 - 09:29 PM

Weird.. If I get my mage to use it, it says "Immune" and doesn't apply. :(
0

#5 User is offline   arik 

  • Member
  • Pip
  • Group: Members
  • Posts: 37
  • Joined: 09-November 08
  • Location:Czech Republic

Posted 13 April 2009 - 03:21 PM

Problem is with this talent - http://www.wowhead.com/?spell=54354
If you have it, you cannot cast Invisibility, it says Immunne, if you don't, everything is fine :P
0

#6 User is offline   †Dro№01† 

  • Member
  • Pip
  • Group: Members
  • Posts: 17
  • Joined: 20-December 08

Posted 27 April 2009 - 06:15 AM

Quote

If you have it, you cannot cast Invisibility, it says Immunne, if you don't, everything is fine

try this and don't look above.

find appropriate lines at the end of

void Aura::SpellAuraPeriodicTriggerSpell(bool apply)

else if(m_target)
		{
			if(GetSpellProto()->EffectAmplitude[mod->i] > (uint32)GetDuration())
				sEventMgr.AddEvent(this, &Aura::EventPeriodicTriggerSpell, spe,
					EVENT_AURA_PERIODIC_TRIGGERSPELL,GetDuration(), 0,EVENT_FLAG_DO_NOT_EXECUTE_IN_WORLD_CONTEXT);
			else
				sEventMgr.AddEvent(this, &Aura::EventPeriodicTriggerSpell, spe,
					EVENT_AURA_PERIODIC_TRIGGERSPELL,GetSpellProto()->EffectAmplitude[mod->i], 0,EVENT_FLAG_DO_NOT_EXECUTE_IN_WORLD_CONTEXT);
			periodic_target = m_target->GetGUID();
		}

0

#7 User is offline   alleycat 

  • Helps so much & is so mature & gay
  • PipPipPipPipPip
  • Group: Members
  • Posts: 835
  • Joined: 25-July 08
  • Gender:Male

Posted 27 April 2009 - 11:55 AM

It is true. When you cast the spell it works fine, but when it acctually tries to apply the core says IMMUNE. I have been pondering this problem for a while though I have been distracted.
I can haz cookie?
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users