diff --git a/utils/sql/git/required/2013_02_25_Impr_HT_LT.sql b/utils/sql/git/required/2013_02_25_Impr_HT_LT.sql new file mode 100644 index 000000000..09f1e695c --- /dev/null +++ b/utils/sql/git/required/2013_02_25_Impr_HT_LT.sql @@ -0,0 +1,4 @@ +/* SK AA Touch of the Wicked should reduce reuse timers for */ +/* Improved Harm Touch & Leech Touch as well as regular HT */ +update aa_actions set redux_aa=596, redux_rate=17 where aaid=207; +update aa_actions set redux_aa=596, redux_rate=17 where aaid=208; diff --git a/zone/effects.cpp b/zone/effects.cpp index abb6f6b13..67cc4b937 100644 --- a/zone/effects.cpp +++ b/zone/effects.cpp @@ -467,6 +467,14 @@ bool Client::TrainDiscipline(uint32 itemid) { item->Name[2] == 'm' && item->Name[3] == 'e' && item->Name[4] == ' ' + ) && !( + item->Name[0] == 'S' && + item->Name[1] == 'k' && + item->Name[2] == 'i' && + item->Name[3] == 'l' && + item->Name[4] == 'l' && + item->Name[5] == ':' && + item->Name[6] == ' ' )) { Message(13, "This item is not a tome."); //summon them the item back... diff --git a/zone/questmgr.cpp b/zone/questmgr.cpp index 7a5267aa9..847469149 100644 --- a/zone/questmgr.cpp +++ b/zone/questmgr.cpp @@ -667,6 +667,14 @@ bool QuestManager::isdisctome(int item_id) { item->Name[2] == 'm' && item->Name[3] == 'e' && item->Name[4] == ' ' + ) && !( + item->Name[0] == 'S' && + item->Name[1] == 'k' && + item->Name[2] == 'i' && + item->Name[3] == 'l' && + item->Name[4] == 'l' && + item->Name[5] == ':' && + item->Name[6] == ' ' )) { return(false); } diff --git a/zone/spells.cpp b/zone/spells.cpp index 3878a154d..a7cc9f001 100644 --- a/zone/spells.cpp +++ b/zone/spells.cpp @@ -1306,8 +1306,8 @@ bool Mob::DetermineSpellTargets(uint16 spell_id, Mob *&spell_target, Mob *&ae_ce case ST_SummonedPet: { uint8 body_type = spell_target ? spell_target->GetBodyType() : 0; - if(!spell_target || (spell_target != GetPet()) || - (body_type != BT_Summoned && body_type != BT_Summoned2 && body_type != BT_Summoned3 && body_type != BT_Animal)) + if(spell_target && (spell_target == GetPet()) && + (body_type == BT_Summoned || body_type == BT_Summoned2 || body_type == BT_Summoned3 || body_type == BT_Animal)) { mlog(SPELLS__CASTING_ERR, "Spell %d canceled: invalid target of body type %d (summoned pet)", spell_id, body_type);