mirror of
https://github.com/EQEmu/Server.git
synced 2026-01-10 05:03:52 +00:00
Merge branch 'master' of https://github.com/EQEmu/Server
This commit is contained in:
commit
d49426f763
@ -1,5 +1,9 @@
|
||||
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
||||
-------------------------------------------------------
|
||||
== 11/22/2014 ==
|
||||
Trevius: Grouping with Mercenaries is now considerably less buggy.
|
||||
Trevius: Fixed an issue with Spell Globals related to high Character IDs.
|
||||
|
||||
== 11/19/2014 ==
|
||||
Trevius: Mercenaries now Dismiss, Suspend, Unsuspend, and Die correctly.
|
||||
|
||||
|
||||
@ -514,8 +514,8 @@ OP_LFGAppearance=0x0000
|
||||
OP_LFGResponse=0x0000
|
||||
|
||||
# Raid Opcodes
|
||||
OP_RaidInvite=0x1bd1
|
||||
OP_RaidUpdate=0x548e
|
||||
OP_RaidInvite=0x5fb2
|
||||
OP_RaidUpdate=0x1bd1
|
||||
OP_RaidJoin=0x0000
|
||||
|
||||
# Button-push commands
|
||||
|
||||
@ -3872,11 +3872,11 @@ void Client::SendOPTranslocateConfirm(Mob *Caster, uint16 SpellID) {
|
||||
PendingTranslocateData.heading = m_pp.binds[0].heading;
|
||||
}
|
||||
else {
|
||||
ts->ZoneID = database.GetZoneID(Spell.teleport_zone);
|
||||
PendingTranslocateData.zone_id = ts->ZoneID = database.GetZoneID(Spell.teleport_zone);
|
||||
PendingTranslocateData.instance_id = 0;
|
||||
ts->y = Spell.base[0];
|
||||
ts->x = Spell.base[1];
|
||||
ts->z = Spell.base[2];
|
||||
PendingTranslocateData.y = ts->y = Spell.base[0];
|
||||
PendingTranslocateData.x = ts->x = Spell.base[1];
|
||||
PendingTranslocateData.z = ts->z = Spell.base[2];
|
||||
PendingTranslocateData.heading = 0.0;
|
||||
}
|
||||
|
||||
|
||||
@ -874,6 +874,7 @@ void SetConsumption(int32 in_hunger, int32 in_thirst);
|
||||
void DropInst(const ItemInst* inst);
|
||||
bool TrainDiscipline(uint32 itemid);
|
||||
void SendDisciplineUpdate();
|
||||
void SendDisciplineTimer(uint32 timer_id, uint32 duration);
|
||||
bool UseDiscipline(uint32 spell_id, uint32 target);
|
||||
|
||||
bool CheckTitle(int titleset);
|
||||
|
||||
@ -696,16 +696,7 @@ bool Client::UseDiscipline(uint32 spell_id, uint32 target) {
|
||||
return true;
|
||||
}
|
||||
|
||||
CastSpell(spell_id, target, DISCIPLINE_SPELL_SLOT, -1, -1, 0, -1, (uint32)DiscTimer, reduced_recast);
|
||||
if(spells[spell_id].EndurTimerIndex < MAX_DISCIPLINE_TIMERS)
|
||||
{
|
||||
EQApplicationPacket *outapp = new EQApplicationPacket(OP_DisciplineTimer, sizeof(DisciplineTimer_Struct));
|
||||
DisciplineTimer_Struct *dts = (DisciplineTimer_Struct *)outapp->pBuffer;
|
||||
dts->TimerID = spells[spell_id].EndurTimerIndex;
|
||||
dts->Duration = reduced_recast;
|
||||
QueuePacket(outapp);
|
||||
safe_delete(outapp);
|
||||
}
|
||||
SendDisciplineTimer(spells[spell_id].EndurTimerIndex, reduced_recast);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -714,6 +705,19 @@ bool Client::UseDiscipline(uint32 spell_id, uint32 target) {
|
||||
return(true);
|
||||
}
|
||||
|
||||
void Client::SendDisciplineTimer(uint32 timer_id, uint32 duration)
|
||||
{
|
||||
if (timer_id < MAX_DISCIPLINE_TIMERS)
|
||||
{
|
||||
EQApplicationPacket *outapp = new EQApplicationPacket(OP_DisciplineTimer, sizeof(DisciplineTimer_Struct));
|
||||
DisciplineTimer_Struct *dts = (DisciplineTimer_Struct *)outapp->pBuffer;
|
||||
dts->TimerID = timer_id;
|
||||
dts->Duration = duration;
|
||||
QueuePacket(outapp);
|
||||
safe_delete(outapp);
|
||||
}
|
||||
}
|
||||
|
||||
void EntityList::AETaunt(Client* taunter, float range)
|
||||
{
|
||||
if (range == 0)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user