diff --git a/common/EQStream.cpp b/common/EQStream.cpp index 2b8b2488c..5bfb53641 100644 --- a/common/EQStream.cpp +++ b/common/EQStream.cpp @@ -1356,6 +1356,9 @@ void EQStream::CheckTimeout(uint32 now, uint32 timeout) { _log(NET__DEBUG, _L "Timeout expired in established state. Closing connection." __L); _SendDisconnect(); SetState(DISCONNECTING); + break; + default: + break; } } } diff --git a/common/MiscFunctions.h b/common/MiscFunctions.h index d25a57dab..acbeacaa6 100644 --- a/common/MiscFunctions.h +++ b/common/MiscFunctions.h @@ -34,7 +34,7 @@ // #define VARSTRUCT_DECODE_TYPE(Type, Buffer) *(Type *)Buffer; Buffer += sizeof(Type); #define VARSTRUCT_DECODE_STRING(String, Buffer) strcpy(String, Buffer); Buffer += strlen(String)+1; -#define VARSTRUCT_ENCODE_STRING(Buffer, String) { sprintf(Buffer, String); Buffer += strlen(String) + 1; } +#define VARSTRUCT_ENCODE_STRING(Buffer, String) { sprintf(Buffer, "%s", String); Buffer += strlen(String) + 1; } #define VARSTRUCT_ENCODE_INTSTRING(Buffer, Number) { sprintf(Buffer, "%i", Number); Buffer += strlen(Buffer) + 1; } #define VARSTRUCT_ENCODE_TYPE(Type, Buffer, Value) { *(Type *)Buffer = Value; Buffer += sizeof(Type); } #define VARSTRUCT_SKIP_TYPE(Type, Buffer) Buffer += sizeof(Type); diff --git a/common/eqemu_exception.h b/common/eqemu_exception.h index 85086d1ad..1e888da85 100644 --- a/common/eqemu_exception.h +++ b/common/eqemu_exception.h @@ -95,11 +95,11 @@ namespace EQEmu */ const char* what() const throw() { return full_description().c_str(); } protected: - std::string name_; //!< Exception name - std::string desc_; //!< Exception Description mutable std::string full_desc_; //!< Full Exception Description - std::string file_; //!< File Name long line_; // *items_hash; EQEmu::MemoryMappedFile *faction_mmf; @@ -120,7 +121,6 @@ protected: EQEmu::FixedMemoryVariableHashSet *loot_table_hash; EQEmu::MemoryMappedFile *loot_drop_mmf; EQEmu::FixedMemoryVariableHashSet *loot_drop_hash; - EQEmu::MemoryMappedFile *skill_caps_mmf; }; #endif /*SHAREDDB_H_*/ diff --git a/ucs/clientlist.cpp b/ucs/clientlist.cpp index 4c57190c8..aca14cd60 100644 --- a/ucs/clientlist.cpp +++ b/ucs/clientlist.cpp @@ -353,9 +353,6 @@ static void ProcessMailTo(Client *c, string MailMessage) { } } -static void ProcessMailTo(Client *c, string from, string subject, string message) { -} - static void ProcessSetMessageStatus(string SetMessageCommand) { int MessageNumber; @@ -1332,6 +1329,7 @@ void Client::SendChannelMessage(string Message) } if(RequiredChannel) + { if(RuleB(Chat, EnableAntiSpam)) { if(!RequiredChannel->IsModerated() || RequiredChannel->HasVoice(GetName()) || RequiredChannel->IsOwner(GetName()) || @@ -1386,6 +1384,7 @@ void Client::SendChannelMessage(string Message) else GeneralChannelMessage("Channel " + ChannelName + " is moderated and you have not been granted a voice."); } + } } @@ -1885,11 +1884,12 @@ void Client::ChannelModerate(string CommandString) { RequiredChannel->SetModerated(!RequiredChannel->IsModerated()); - if(!RequiredChannel->IsClientInChannel(this)) + if(!RequiredChannel->IsClientInChannel(this)) { if(RequiredChannel->IsModerated()) GeneralChannelMessage("Channel " + ChannelName + " is now moderated."); else GeneralChannelMessage("Channel " + ChannelName + " is no longer moderated."); + } } diff --git a/world/AdventureManager.cpp b/world/AdventureManager.cpp index 4a8321a4d..8c389d185 100644 --- a/world/AdventureManager.cpp +++ b/world/AdventureManager.cpp @@ -1279,8 +1279,8 @@ void AdventureManager::DoLeaderboardRequestWins(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_wins.begin(); while(i < 100 && iter != leaderboard_info_wins.end()) @@ -1346,8 +1346,8 @@ void AdventureManager::DoLeaderboardRequestPercentage(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_percentage.begin(); while(i < 100 && iter != leaderboard_info_percentage.end()) @@ -1413,8 +1413,8 @@ void AdventureManager::DoLeaderboardRequestWinsGuk(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_wins_guk.begin(); while(i < 100 && iter != leaderboard_info_wins_guk.end()) @@ -1480,8 +1480,8 @@ void AdventureManager::DoLeaderboardRequestPercentageGuk(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_percentage_guk.begin(); while(i < 100 && iter != leaderboard_info_percentage_guk.end()) @@ -1547,8 +1547,8 @@ void AdventureManager::DoLeaderboardRequestWinsMir(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_wins_mir.begin(); while(i < 100 && iter != leaderboard_info_wins_mir.end()) @@ -1614,8 +1614,8 @@ void AdventureManager::DoLeaderboardRequestPercentageMir(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_percentage_mir.begin(); while(i < 100 && iter != leaderboard_info_percentage_mir.end()) @@ -1681,8 +1681,8 @@ void AdventureManager::DoLeaderboardRequestWinsMmc(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_wins_mmc.begin(); while(i < 100 && iter != leaderboard_info_wins_mmc.end()) @@ -1748,8 +1748,8 @@ void AdventureManager::DoLeaderboardRequestPercentageMmc(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_percentage_mmc.begin(); while(i < 100 && iter != leaderboard_info_percentage_mmc.end()) @@ -1815,8 +1815,8 @@ void AdventureManager::DoLeaderboardRequestWinsRuj(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_wins_ruj.begin(); while(i < 100 && iter != leaderboard_info_wins_ruj.end()) @@ -1882,8 +1882,8 @@ void AdventureManager::DoLeaderboardRequestPercentageRuj(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_percentage_ruj.begin(); while(i < 100 && iter != leaderboard_info_percentage_ruj.end()) @@ -1949,8 +1949,8 @@ void AdventureManager::DoLeaderboardRequestWinsTak(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_wins_ruj.begin(); while(i < 100 && iter != leaderboard_info_wins_ruj.end()) @@ -2016,8 +2016,8 @@ void AdventureManager::DoLeaderboardRequestPercentageTak(const char* player) strcpy((char*)pack->pBuffer, player); int place = -1; - int our_successes; - int our_failures; + int our_successes = 0; + int our_failures = 0; int i = 0; list::iterator iter = leaderboard_info_percentage_tak.begin(); while(i < 100 && iter != leaderboard_info_percentage_tak.end()) diff --git a/world/client.cpp b/world/client.cpp index 12dd7180d..daa041a8b 100644 --- a/world/client.cpp +++ b/world/client.cpp @@ -257,7 +257,7 @@ void Client::SendMembershipSettings() { Membership_Details_Struct* mds = (Membership_Details_Struct*)outapp->pBuffer; mds->membership_setting_count = 66; - uint32 gold_settings[22] = {-1,-1,-1,-1,-1,-1,1,1,1,-1,1,-1,-1,1,1,1,1,1,1,-1,-1,0}; + int32 gold_settings[22] = {-1,-1,-1,-1,-1,-1,1,1,1,-1,1,-1,-1,1,1,1,1,1,1,-1,-1,0}; uint32 entry_count = 0; for (int setting_id=0; setting_id < 22; setting_id++) { @@ -1583,7 +1583,7 @@ bool CheckCharCreateInfoSoF(CharCreate_Struct *cc) uint32 max_stats = 0; uint32 allocs = character_create_allocations.size(); - RaceClassAllocation allocation; + RaceClassAllocation allocation = {0}; found = false; for(int i = 0; i < combos; ++i) { if(character_create_allocations[i].Index == class_combo.AllocationIndex) { diff --git a/zone/attack.cpp b/zone/attack.cpp index c08382838..730af11f6 100644 --- a/zone/attack.cpp +++ b/zone/attack.cpp @@ -1425,7 +1425,7 @@ void Client::Death(Mob* killerMob, int32 damage, uint16 spell, SkillType attack_ if(dead) return; //cant die more than once... - int exploss; + int exploss = 0; mlog(COMBAT__HITS, "Fatal blow dealt by %s with %d damage, spell %d, skill %d", killerMob ? killerMob->GetName() : "Unknown", damage, spell, attack_skill); diff --git a/zone/client.cpp b/zone/client.cpp index 8f16956aa..2cf30eae6 100644 --- a/zone/client.cpp +++ b/zone/client.cpp @@ -7383,10 +7383,12 @@ FACTION_VALUE Client::GetFactionLevel(uint32 char_id, uint32 npc_id, uint32 p_ra if (IsInvisible(tnpc)) return FACTION_INDIFFERENT; if (tnpc && tnpc->GetOwnerID() != 0) // pets con amiably to owner and indiff to rest + { if (char_id == tnpc->GetOwner()->CastToClient()->CharacterID()) return FACTION_AMIABLE; else return FACTION_INDIFFERENT; + } //First get the NPC's Primary faction if(pFaction > 0) diff --git a/zone/client_logs.cpp b/zone/client_logs.cpp index 987a2ad24..e39f64190 100644 --- a/zone/client_logs.cpp +++ b/zone/client_logs.cpp @@ -128,7 +128,7 @@ void ClientLogs::EQEmuIO_pva(EQEMuLog::LogIDs id, const char *prefix, const char if(fmt[0] == '\n' || fmt[0] == '\r') return; //skip new lines... char *buf = _buffer; - int plen = snprintf(buf, MAX_CLIENT_LOG_MESSAGE_LENGTH, prefix); + int plen = snprintf(buf, MAX_CLIENT_LOG_MESSAGE_LENGTH, "%s", prefix); buf += plen; vsnprintf(buf, MAX_CLIENT_LOG_MESSAGE_LENGTH-plen, fmt, ap); _buffer[MAX_CLIENT_LOG_MESSAGE_LENGTH] = '\0'; diff --git a/zone/client_packet.cpp b/zone/client_packet.cpp index 427e624cf..bbe003238 100644 --- a/zone/client_packet.cpp +++ b/zone/client_packet.cpp @@ -3905,7 +3905,7 @@ void Client::Handle_OP_LDoNInspect(const EQApplicationPacket *app) void Client::Handle_OP_Dye(const EQApplicationPacket *app) { if(app->size!=sizeof(DyeStruct)) - printf("Wrong size of DyeStruct, Got: %i, Expected: %lu\n",app->size,sizeof(DyeStruct)); + printf("Wrong size of DyeStruct, Got: %i, Expected: %i\n",app->size,sizeof(DyeStruct)); else{ DyeStruct* dye = (DyeStruct*)app->pBuffer; DyeArmor(dye); @@ -3976,7 +3976,7 @@ void Client::Handle_OP_GuildPublicNote(const EQApplicationPacket *app) if (app->size < sizeof(GuildUpdate_PublicNote)) { // client calls for a motd on login even if they arent in a guild - printf("Error: app size of %i < size of OP_GuildPublicNote of %lu\n",app->size,sizeof(GuildUpdate_PublicNote)); + printf("Error: app size of %i < size of OP_GuildPublicNote of %i\n",app->size,sizeof(GuildUpdate_PublicNote)); return; } GuildUpdate_PublicNote* gpn=(GuildUpdate_PublicNote*)app->pBuffer; @@ -4034,7 +4034,7 @@ void Client::Handle_OP_SetGuildMOTD(const EQApplicationPacket *app) if (app->size != sizeof(GuildMOTD_Struct)) { // client calls for a motd on login even if they arent in a guild - printf("Error: app size of %i != size of GuildMOTD_Struct of %lu\n",app->size,sizeof(GuildMOTD_Struct)); + printf("Error: app size of %i != size of GuildMOTD_Struct of %i\n",app->size,sizeof(GuildMOTD_Struct)); return; } if(!IsInAGuild()) { @@ -5013,7 +5013,7 @@ void Client::Handle_OP_TradeAcceptClick(const EQApplicationPacket *app) EQApplicationPacket* outapp = new EQApplicationPacket(OP_FinishTrade, 0); QueuePacket(outapp); safe_delete(outapp); - if(with->IsNPC()) + if(with->IsNPC()) { // Audit trade to database for player trade stream if(RuleB(QueryServ, PlayerLogHandins)) { uint16 handin_count = 0; @@ -5033,6 +5033,7 @@ void Client::Handle_OP_TradeAcceptClick(const EQApplicationPacket *app) else { FinishTrade(with->CastToNPC()); } + } #ifdef BOTS else if(with->IsBot()) with->CastToBot()->FinishTrade(this, Bot::BotTradeClientNormal); @@ -6941,7 +6942,7 @@ void Client::Handle_OP_DeleteSpell(const EQApplicationPacket *app) void Client::Handle_OP_LoadSpellSet(const EQApplicationPacket *app) { if(app->size!=sizeof(LoadSpellSet_Struct)) { - printf("Wrong size of LoadSpellSet_Struct! Expected: %lu, Got: %i\n",sizeof(LoadSpellSet_Struct),app->size); + printf("Wrong size of LoadSpellSet_Struct! Expected: %i, Got: %i\n",sizeof(LoadSpellSet_Struct),app->size); return; } int i; @@ -6956,7 +6957,7 @@ void Client::Handle_OP_LoadSpellSet(const EQApplicationPacket *app) void Client::Handle_OP_PetitionBug(const EQApplicationPacket *app) { if(app->size!=sizeof(PetitionBug_Struct)) - printf("Wrong size of BugStruct! Expected: %lu, Got: %i\n",sizeof(PetitionBug_Struct),app->size); + printf("Wrong size of BugStruct! Expected: %i, Got: %i\n",sizeof(PetitionBug_Struct),app->size); else{ Message(0, "Petition Bugs are not supported, please use /bug."); } @@ -6966,7 +6967,7 @@ void Client::Handle_OP_PetitionBug(const EQApplicationPacket *app) void Client::Handle_OP_Bug(const EQApplicationPacket *app) { if(app->size!=sizeof(BugStruct)) - printf("Wrong size of BugStruct got %d expected %lu!\n", app->size, sizeof(BugStruct)); + printf("Wrong size of BugStruct got %d expected %i!\n", app->size, sizeof(BugStruct)); else{ BugStruct* bug=(BugStruct*)app->pBuffer; database.UpdateBug(bug); @@ -8362,7 +8363,7 @@ void Client::Handle_OP_OpenTributeMaster(const EQApplicationPacket *app) _pkt(TRIBUTE__IN, app); if(app->size != sizeof(StartTribute_Struct)) - printf("Error in OP_OpenTributeMaster. Expected size of: %lu, but got: %i\n",sizeof(StartTribute_Struct),app->size); + printf("Error in OP_OpenTributeMaster. Expected size of: %i, but got: %i\n",sizeof(StartTribute_Struct),app->size); else { //Opens the tribute master window StartTribute_Struct* st = (StartTribute_Struct*)app->pBuffer; @@ -8387,7 +8388,7 @@ void Client::Handle_OP_OpenGuildTributeMaster(const EQApplicationPacket *app) _pkt(TRIBUTE__IN, app); if(app->size != sizeof(StartTribute_Struct)) - printf("Error in OP_OpenGuildTributeMaster. Expected size of: %lu, but got: %i\n",sizeof(StartTribute_Struct),app->size); + printf("Error in OP_OpenGuildTributeMaster. Expected size of: %i, but got: %i\n",sizeof(StartTribute_Struct),app->size); else { //Opens the guild tribute master window StartTribute_Struct* st = (StartTribute_Struct*)app->pBuffer; @@ -8413,7 +8414,7 @@ void Client::Handle_OP_TributeItem(const EQApplicationPacket *app) //player donates an item... if(app->size != sizeof(TributeItem_Struct)) - printf("Error in OP_TributeItem. Expected size of: %lu, but got: %i\n",sizeof(StartTribute_Struct),app->size); + printf("Error in OP_TributeItem. Expected size of: %i, but got: %i\n",sizeof(StartTribute_Struct),app->size); else { TributeItem_Struct* t = (TributeItem_Struct*)app->pBuffer; @@ -8442,7 +8443,7 @@ void Client::Handle_OP_TributeMoney(const EQApplicationPacket *app) //player donates money if(app->size != sizeof(TributeMoney_Struct)) - printf("Error in OP_TributeMoney. Expected size of: %lu, but got: %i\n",sizeof(StartTribute_Struct),app->size); + printf("Error in OP_TributeMoney. Expected size of: %i, but got: %i\n",sizeof(StartTribute_Struct),app->size); else { TributeMoney_Struct* t = (TributeMoney_Struct*)app->pBuffer; @@ -8590,7 +8591,7 @@ void Client::Handle_OP_Ignore(const EQApplicationPacket *app) void Client::Handle_OP_FindPersonRequest(const EQApplicationPacket *app) { if(app->size != sizeof(FindPersonRequest_Struct)) - printf("Error in FindPersonRequest_Struct. Expected size of: %lu, but got: %i\n",sizeof(FindPersonRequest_Struct),app->size); + printf("Error in FindPersonRequest_Struct. Expected size of: %i, but got: %i\n",sizeof(FindPersonRequest_Struct),app->size); else { FindPersonRequest_Struct* t = (FindPersonRequest_Struct*)app->pBuffer; diff --git a/zone/command.cpp b/zone/command.cpp index 3c04933db..988b4bed0 100644 --- a/zone/command.cpp +++ b/zone/command.cpp @@ -1759,10 +1759,12 @@ void command_timezone(Client *c, const Seperator *sep) c->Message(13, "Current timezone is: %ih %im", zone->zone_time.getEQTimeZoneHr(), zone->zone_time.getEQTimeZoneMin()); } else { - if(sep->arg[2]=="") - strcpy(sep->arg[2], "0"); - c->Message(13, "Setting timezone to %s h %s m", sep->arg[1], sep->arg[2]); - uint32 ntz=(atoi(sep->arg[1])*60)+atoi(sep->arg[2]); + uint8 hours = atoi(sep->arg[1]); + uint8 minutes = atoi(sep->arg[2]); + if(!sep->IsNumber(2)) + minutes = 0; + c->Message(13, "Setting timezone to %i h %i m", hours, minutes); + uint32 ntz=(hours*60)+minutes; zone->zone_time.setEQTimeZone(ntz); database.SetZoneTZ(zone->GetZoneID(), zone->GetInstanceVersion(), ntz); @@ -3897,7 +3899,7 @@ void command_fixmob(Client *c, const Seperator *sep) { uint32 Adjustment = 1; // Previous or Next - char codeMove; + char codeMove = 0; if (sep->arg[2]) { diff --git a/zone/embparser.cpp b/zone/embparser.cpp index b27293de4..8f2252f7b 100644 --- a/zone/embparser.cpp +++ b/zone/embparser.cpp @@ -1464,7 +1464,7 @@ bool PerlembParser::PlayerHasQuestSub(const char *subname) { if(playerQuestLoaded.count(zone->GetShortName()) == 0) LoadPlayerScript(zone->GetShortName()); - if(subname == "EVENT_CAST") + if(strcmp("EVENT_CAST",subname) == 0) return (playerQuestLoaded[zone->GetShortName()] == pQuestEventCast); return(perl->SubExists(packagename.c_str(), subname)); @@ -1477,7 +1477,7 @@ bool PerlembParser::GlobalPlayerHasQuestSub(const char *subname) { if(globalPlayerQuestLoaded == pQuestReadyToLoad) LoadGlobalPlayerScript(); - if(subname == "EVENT_CAST") + if(strcmp("EVENT_CAST",subname) == 0) return (globalPlayerQuestLoaded == pQuestEventCast); return(perl->SubExists(packagename.c_str(), subname)); diff --git a/zone/entity.cpp b/zone/entity.cpp index bfe12c17f..1f1540aca 100644 --- a/zone/entity.cpp +++ b/zone/entity.cpp @@ -1493,11 +1493,13 @@ void EntityList::RemoveFromTargets(Mob* mob, bool RemoveFromXTargets) m->RemoveFromHateList(mob); if(RemoveFromXTargets) + { if(m->IsClient()) m->CastToClient()->RemoveXTarget(mob, false); // FadingMemories calls this function passing the client. else if(mob->IsClient()) mob->CastToClient()->RemoveXTarget(m, false); + } } } diff --git a/zone/merc.cpp b/zone/merc.cpp index e1a4d0ec6..950fa5682 100644 --- a/zone/merc.cpp +++ b/zone/merc.cpp @@ -5062,7 +5062,7 @@ Merc* Merc::LoadMerc(Client *c, MercTemplate* merc_template, uint32 merchant_id, snprintf(c->GetEPP().merc_name, 64, "%s", c->GetMercInfo().merc_name); snprintf(npc_type->name, 64, "%s", c->GetMercInfo().merc_name); } - uint8 gender; + uint8 gender = 0; if(merchant_id > 0) { NPC* tar = entity_list.GetNPCByID(merchant_id); if(tar) { @@ -5586,7 +5586,7 @@ bool Merc::Suspend() { } bool Merc::Unsuspend(bool setMaxStats) { - Client* mercOwner; + Client* mercOwner = nullptr; bool loaded = false; if(GetMercOwner()) { diff --git a/zone/mob.cpp b/zone/mob.cpp index 3ec74db43..b8b7066cd 100644 --- a/zone/mob.cpp +++ b/zone/mob.cpp @@ -91,13 +91,13 @@ Mob::Mob(const char* in_name, mana_timer(2000), spellend_timer(0), rewind_timer(30000), //Timer used for determining amount of time between actual player position updates for /rewind. + bindwound_timer(10000), stunned_timer(0), spun_timer(0), bardsong_timer(6000), - flee_timer(FLEE_CHECK_TIMER), - bindwound_timer(10000), gravity_timer(1000), - viral_timer(0) + viral_timer(0), + flee_timer(FLEE_CHECK_TIMER) { targeted = 0; @@ -878,7 +878,7 @@ void Mob::FillSpawnStruct(NewSpawn_Struct* ns, Mob* ForWho) // Changing the first string made it vanish, so it has some significance. if(lastname) - sprintf(ns->spawn.DestructibleModel, lastname); + sprintf(ns->spawn.DestructibleModel, "%s", lastname); // Changing the second string made no visible difference sprintf(ns->spawn.DestructibleName2, "%s", ns->spawn.name); // Putting a string in the final one that was previously empty had no visible effect. diff --git a/zone/mob.h b/zone/mob.h index b300eb9b6..52c1e626c 100644 --- a/zone/mob.h +++ b/zone/mob.h @@ -969,11 +969,6 @@ protected: Timer tic_timer; Timer mana_timer; - float rewind_x; - float rewind_y; - float rewind_z; - Timer rewind_timer; - //spell casting vars Timer spellend_timer; uint16 casting_spell_id; @@ -992,6 +987,11 @@ protected: uint8 bardsong_slot; uint32 bardsong_target_id; + float rewind_x; + float rewind_y; + float rewind_z; + Timer rewind_timer; + // Currently 3 max nimbus particle effects at a time uint32 nimbus_effect1; uint32 nimbus_effect2; @@ -1026,6 +1026,10 @@ protected: int16 rooted_mod; //Modifier to root break chance, defined when root is cast on a target. bool offhand; + // Bind wound + Timer bindwound_timer; + Mob* bindwound_target; + Timer stunned_timer; Timer spun_timer; Timer bardsong_timer; @@ -1108,9 +1112,6 @@ protected: uint32 pDontSnareMeBefore; uint32 pDontCureMeBefore; - // Bind wound - Timer bindwound_timer; - Mob* bindwound_target; // hp event int nexthpevent; int nextinchpevent; diff --git a/zone/npc.cpp b/zone/npc.cpp index bb5743956..8cd3c3324 100644 --- a/zone/npc.cpp +++ b/zone/npc.cpp @@ -110,10 +110,10 @@ NPC::NPC(const NPCType* d, Spawn2* in_respawn, float x, float y, float z, float classattack_timer(1000), knightattack_timer(1000), assist_timer(AIassistcheck_delay), + qglobal_purge_timer(30000), sendhpupdate_timer(1000), enraged_timer(1000), - taunt_timer(TauntReuseTime * 1000), - qglobal_purge_timer(30000) + taunt_timer(TauntReuseTime * 1000) { //What is the point of this, since the names get mangled.. Mob* mob = entity_list.GetMob(name); diff --git a/zone/spawngroup.cpp b/zone/spawngroup.cpp index d31d53bae..587ef595f 100644 --- a/zone/spawngroup.cpp +++ b/zone/spawngroup.cpp @@ -130,7 +130,7 @@ void SpawnGroupList::AddSpawnGroup(SpawnGroup* newGroup) { SpawnGroup* SpawnGroupList::GetSpawnGroup(uint32 in_id) { if(groups.count(in_id) != 1) - return(false); + return nullptr; return(groups[in_id]); } diff --git a/zone/special_attacks.cpp b/zone/special_attacks.cpp index 4950e3b35..4d4d07562 100644 --- a/zone/special_attacks.cpp +++ b/zone/special_attacks.cpp @@ -75,17 +75,20 @@ void Mob::ApplySpecialAttackMod(SkillType skill, int32 &dmg, int32 &mindmg) { case ROUND_KICK: case KICK: item_slot = SLOT_FEET; - break; + break; case BASH: item_slot = SLOT_SECONDARY; - break; + break; case DRAGON_PUNCH: case EAGLE_STRIKE: case TIGER_CLAW: item_slot = SLOT_HANDS; - break; + break; + + default: + break; } if (item_slot >= 0){ diff --git a/zone/spell_effects.cpp b/zone/spell_effects.cpp index 58954ffe7..c4fbb0f39 100644 --- a/zone/spell_effects.cpp +++ b/zone/spell_effects.cpp @@ -4488,12 +4488,13 @@ int16 Mob::CalcFocusEffect(focusType type, uint16 focus_id, uint16 spell_id, boo case SE_TriggerOnCast: { if(type == focusTriggerOnCast) - + { if(MakeRandomInt(0, 100) <= focus_spell.base[i]) value = focus_spell.base2[i]; else value = 0; + } break; } @@ -5106,7 +5107,7 @@ bool Mob::TryDivineSave() { SetHP(1); - uint16 EffectsToTry[] = + int16 EffectsToTry[] = { aabonuses.DivineSaveChance[1], itembonuses.DivineSaveChance[1], diff --git a/zone/tasks.cpp b/zone/tasks.cpp index 172f3d18c..129d53a41 100644 --- a/zone/tasks.cpp +++ b/zone/tasks.cpp @@ -2482,10 +2482,8 @@ void ClientTaskState::SendTaskHistory(Client *c, int TaskIndex) { thd1 = (TaskHistoryReplyData1_Struct*)Ptr; thd1->ActivityType = Task->Activity[i].Type; Ptr = (char *)thd1 + sizeof(TaskHistoryReplyData1_Struct); - sprintf(Ptr, Task->Activity[i].Text1); - Ptr = Ptr + strlen(Ptr) + 1; - sprintf(Ptr, Task->Activity[i].Text2); - Ptr = Ptr + strlen(Ptr) + 1; + VARSTRUCT_ENCODE_STRING(Ptr, Task->Activity[i].Text1); + VARSTRUCT_ENCODE_STRING(Ptr, Task->Activity[i].Text2); thd2 = (TaskHistoryReplyData2_Struct*)Ptr; thd2->GoalCount = Task->Activity[i].GoalCount; thd2->unknown04 = 0xffffffff; @@ -2493,8 +2491,7 @@ void ClientTaskState::SendTaskHistory(Client *c, int TaskIndex) { thd2->ZoneID = Task->Activity[i].ZoneID; thd2->unknown16 = 0x00000000; Ptr = (char *)thd2 + sizeof(TaskHistoryReplyData2_Struct); - sprintf(Ptr, Task->Activity[i].Text3); - Ptr = Ptr + strlen(Ptr) + 1; + VARSTRUCT_ENCODE_STRING(Ptr, Task->Activity[i].Text3); } } diff --git a/zone/trading.cpp b/zone/trading.cpp index aae28d0e8..d49eb798c 100644 --- a/zone/trading.cpp +++ b/zone/trading.cpp @@ -2144,7 +2144,7 @@ void Client::ShowBuyLines(const EQApplicationPacket *app) { // This packet produces the SoandSo is browsing your Buy Lines message bb->Action = Barter_SellerBrowsing; - sprintf(bb->PlayerName, GetName()); + sprintf(bb->PlayerName, "%s", GetName()); Buyer->QueuePacket(outapp); @@ -2710,7 +2710,7 @@ void Client::BuyerItemSearch(const EQApplicationPacket *app) { pdest = strstr(Name, Criteria); if (pdest != nullptr) { - sprintf(bisr->Results[Count].ItemName, item->Name); + sprintf(bisr->Results[Count].ItemName, "%s", item->Name); bisr->Results[Count].ItemID = item->ID; bisr->Results[Count].Unknown068 = item->Icon; bisr->Results[Count].Unknown072 = 0x00000000; diff --git a/zone/zoning.cpp b/zone/zoning.cpp index 86684187e..d08b38b8d 100644 --- a/zone/zoning.cpp +++ b/zone/zoning.cpp @@ -93,6 +93,8 @@ void Client::Handle_OP_ZoneChange(const EQApplicationPacket *app) { return; } break; + default: + break; }; } else { @@ -246,6 +248,8 @@ void Client::Handle_OP_ZoneChange(const EQApplicationPacket *app) { LogFile->write(EQEMuLog::Error, "Zoning %s: Invalid unsolicited zone request to zone id '%s'. Not near a zone point.", GetName(), target_zone_name); SendZoneCancel(zc); return; + default: + break; }; //OK, now we should know where were going...