Thread: Miscellaneous: Summary Of Magician Issues
View Single Post
  #20  
Old 11-20-2009, 02:14 AM
Dolalin Dolalin is offline
Planar Protector

Dolalin's Avatar

Join Date: Oct 2009
Location: UK
Posts: 2,565
Default

Ok, this source patch should work to fix dual wield but I have no way of testing it.

Currently the source for the DW check is this:

mobai.cpp:1271
Code:
//can only dual weild without a weapon if your a monk
if((GetEquipment(MATERIAL_SECONDARY) != 0 && GetLevel() > 39) || myclass == MONK || myclass == MONKGM) {
That means, only if your pet's actual level is over 39 will it dual wield. Well we have to add a special exception for lower level pets.

The situation we aim to achieve is that:

Pets summoned with 29-39th spells will dual-wield if given weapons (if offhand is not empty). Pets with 44th and 49th spells should dual wield without weapons.

Changing the check to this should achieve that goal:

Code:
if((GetEquipment(MATERIAL_SECONDARY) != 0 && GetLevel() > 39) || (GetOwner() != NULL && GetEquipment(MATERIAL_SECONDARY) != 0 && GetLevel() > 24) || (GetOwner() != NULL && GetLevel() > 37) || myclass == MONK || myclass == MONKGM)
Added two new conditions based on the return of GetOwner() (if returns non-null, I'm a pet), and GetLevel() (self-explanatory).

Only one question: What are the lowest level 29 and 44 pets? I THINK they're 25 and 38 respectively but I could be wrong.
Reply With Quote