mirror of
https://github.com/EQEmu/Server.git
synced 2026-02-17 18:02:26 +00:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
8f3ffe4e6e
@ -1,5 +1,10 @@
|
||||
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
||||
-------------------------------------------------------
|
||||
== 01/13/2015 ==
|
||||
Uleat: Placed an upper limit on the cursor queue save loop.
|
||||
Trevius: (RoF2) Guild invites now add new members as members instead of recruits, and /guild chat works properly.
|
||||
Trevius: (RoF2) Guild Promote is now functional.
|
||||
|
||||
== 01/12/2015 ==
|
||||
Uleat: Fix for OP_FormattedMessage text link server crashes
|
||||
Uleat: Added text link translators for OP_TaskDescription (RoF+ -- all clients current)
|
||||
|
||||
@ -108,6 +108,7 @@ bool SharedDatabase::SaveCursor(uint32 char_id, std::list<ItemInst*>::const_iter
|
||||
|
||||
int i = 8000;
|
||||
for(auto it = start; it != end; ++it, i++) {
|
||||
if (i > 8999) { break; } // shouldn't be anything in the queue that indexes this high
|
||||
ItemInst *inst = *it;
|
||||
if (!SaveInventory(char_id,inst,(i == 8000) ? MainCursor : i))
|
||||
return false;
|
||||
|
||||
@ -126,7 +126,7 @@ OP_GuildLeader=0x7e09
|
||||
OP_GuildDelete=0x3708
|
||||
OP_GuildInviteAccept=0x7053
|
||||
OP_GuildDemote=0x2d4e
|
||||
OP_GuildPromote=0x0000
|
||||
OP_GuildPromote=0x6a98
|
||||
OP_GuildPublicNote=0x5053
|
||||
OP_GuildManageBanker=0x748f
|
||||
OP_GuildBank=0x5134
|
||||
|
||||
@ -2852,7 +2852,8 @@ void Client::Message_StringID(uint32 type, uint32 string_id, const char* message
|
||||
bufptr += strlen(message_arg[i]) + 1;
|
||||
}
|
||||
|
||||
bufptr = '\0';
|
||||
// since we're moving the pointer the 0 offset is correct
|
||||
bufptr[0] = '\0';
|
||||
|
||||
if(distance>0)
|
||||
entity_list.QueueCloseClients(this,outapp,false,distance);
|
||||
@ -2964,7 +2965,8 @@ void Client::FilteredMessage_StringID(Mob *sender, uint32 type, eqFilterType fil
|
||||
bufptr += strlen(message_arg[i]) + 1;
|
||||
}
|
||||
|
||||
bufptr = '\0';
|
||||
// since we're moving the pointer the 0 offset is correct
|
||||
bufptr[0] = '\0';
|
||||
|
||||
QueuePacket(outapp);
|
||||
safe_delete(outapp);
|
||||
|
||||
@ -7489,7 +7489,7 @@ void Client::Handle_OP_GuildInviteAccept(const EQApplicationPacket *app)
|
||||
|
||||
uint32 guildrank = gj->response;
|
||||
|
||||
if (GetClientVersion() == EQClientRoF)
|
||||
if (GetClientVersion() >= EQClientRoF)
|
||||
{
|
||||
if (gj->response == 8)
|
||||
{
|
||||
@ -7668,7 +7668,10 @@ void Client::Handle_OP_GuildPromote(const EQApplicationPacket *app)
|
||||
uint8 rank = gci.rank + 1;
|
||||
|
||||
if (rank > GUILD_OFFICER)
|
||||
{
|
||||
Message(0, "You cannot promote someone to be guild leader. You must use /guildleader.");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
mlog(GUILDS__ACTIONS, "Promoting %s (%d) from rank %s (%d) to %s (%d) in %s (%d)",
|
||||
|
||||
@ -6654,7 +6654,7 @@ void command_npcedit(Client *c, const Seperator *sep)
|
||||
"SET luclin_haircolor = %i, luclin_beardcolor = %i, "
|
||||
"luclin_hairstyle = %i, luclin_beard = %i, "
|
||||
"face = %i, drakkin_heritage = %i, "
|
||||
"drakkin_tattoo = %i, drakkin_details = %i, "
|
||||
"drakkin_tattoo = %i, drakkin_details = %i "
|
||||
"WHERE id = %i",
|
||||
target->GetHairColor(), target->GetBeardColor(),
|
||||
target->GetHairStyle(), target->GetBeard(),
|
||||
|
||||
@ -3471,14 +3471,16 @@ void Mob::DoBuffTic(uint16 spell_id, int slot, uint32 ticsremaining, uint8 caste
|
||||
{
|
||||
effect_value = CalcSpellEffectValue(spell_id, i, caster_level, caster, ticsremaining);
|
||||
//Handle client cast DOTs here.
|
||||
if (caster && effect_value < 0 && IsDetrimentalSpell(spell_id)){
|
||||
if (caster && effect_value < 0){
|
||||
|
||||
if (caster->IsClient()){
|
||||
if (!caster->CastToClient()->GetFeigned())
|
||||
if (IsDetrimentalSpell(spell_id)){
|
||||
if (caster->IsClient()){
|
||||
if (!caster->CastToClient()->GetFeigned())
|
||||
AddToHateList(caster, -effect_value);
|
||||
}
|
||||
else if (!IsClient()) //Allow NPC's to generate hate if casted on other NPC's.
|
||||
AddToHateList(caster, -effect_value);
|
||||
}
|
||||
else if (!IsClient()) //Allow NPC's to generate hate if casted on other NPC's.
|
||||
AddToHateList(caster, -effect_value);
|
||||
|
||||
effect_value = caster->GetActDoTDamage(spell_id, effect_value, this);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user