[Feature] Bind Wound and Forage while mounted. (#2257)

During some point in the eras you were not able to Bind Wound or Forage when mounted. I am not sure if Live is still like this, so I added a rule with it disabled by default.
This commit is contained in:
Michael
2022-07-02 22:53:15 -04:00
committed by GitHub
parent 68d28bcd3e
commit 221d173c59
3 changed files with 17 additions and 2 deletions
+15 -2
View File
@@ -3672,12 +3672,18 @@ void Client::Handle_OP_Bind_Wound(const EQApplicationPacket *app)
LogError("Size mismatch for Bind wound packet");
DumpPacket(app);
}
// Not allowed to forage while mounted
if (RuleB(Character, NoSkillsOnHorse) && GetHorseId()) {
MessageString(Chat::Skills, NO_SKILL_WHILE_MOUNTED);
return;
}
BindWound_Struct* bind_in = (BindWound_Struct*)app->pBuffer;
Mob* bindmob = entity_list.GetMob(bind_in->to);
if (!bindmob) {
LogError("Bindwound on non-exsistant mob from [{}]", GetName());
}
else {
} else {
LogDebug("BindWound in: to:\'[{}]\' from=\'[{}]\'", bindmob->GetName(), GetName());
BindWound(bindmob, true);
}
@@ -6055,6 +6061,13 @@ void Client::Handle_OP_Forage(const EQApplicationPacket *app)
Message(Chat::Red, "Ability recovery time not yet met.");
return;
}
// Not allowed to forage while mounted
if (RuleB(Character, NoSkillsOnHorse) && GetHorseId()) {
MessageString(Chat::Skills, NO_SKILL_WHILE_MOUNTED);
return;
}
p_timers.Start(pTimerForaging, ForagingReuseTime - 1);
ForageItem();