From 618f97bee6aa74e6cf9ba7a82f4c91a25861e56e Mon Sep 17 00:00:00 2001 From: avarishd <46330494+avarishd@users.noreply.github.com> Date: Sat, 20 Jul 2024 21:53:00 +0300 Subject: [PATCH] feat(Core/Unit): Enable/Disable Daze config (#19454) * daze * bruh * bruhx2 --- src/server/apps/worldserver/worldserver.conf.dist | 7 +++++++ src/server/game/Entities/Unit/Unit.cpp | 6 ++++-- src/server/game/World/IWorld.h | 1 + src/server/game/World/World.cpp | 2 ++ 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/server/apps/worldserver/worldserver.conf.dist b/src/server/apps/worldserver/worldserver.conf.dist index 883885e3a0e708..32c4606a4182f5 100644 --- a/src/server/apps/worldserver/worldserver.conf.dist +++ b/src/server/apps/worldserver/worldserver.conf.dist @@ -4413,6 +4413,13 @@ DailyRBGArenaPoints.MinLevel = 71 MunchingBlizzlike.Enabled = 1 +# +# Daze.Enabled +# Description: Enable or disable the chance for mob melee attacks to daze the victim. +# Default: 1 - (Blizzlike) + +Daze.Enabled = 1 + # ################################################################################################### diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 0fdb6dfdd092f1..8771dc1965d1c1 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -1915,8 +1915,10 @@ void Unit::DealMeleeDamage(CalcDamageInfo* damageInfo, bool durabilityLoss) if (Probability > 40.0f) Probability = 40.0f; - if (roll_chance_f(std::max(0.0f, Probability))) - CastSpell(victim, 1604, true); + // Daze application + if (sWorld->getBoolConfig(CONFIG_ENABLE_DAZE)) + if (roll_chance_f(std::max(0.0f, Probability))) + CastSpell(victim, 1604, true); } if (GetTypeId() == TYPEID_PLAYER) diff --git a/src/server/game/World/IWorld.h b/src/server/game/World/IWorld.h index 77ab6738819f2b..cec7b45486854a 100644 --- a/src/server/game/World/IWorld.h +++ b/src/server/game/World/IWorld.h @@ -186,6 +186,7 @@ enum WorldBoolConfigs CONFIG_STRICT_NAMES_PROFANITY, CONFIG_ALLOWS_RANK_MOD_FOR_PET_HEALTH, CONFIG_MUNCHING_BLIZZLIKE, + CONFIG_ENABLE_DAZE, BOOL_CONFIG_VALUE_COUNT }; diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp index 55b5c3877e6ab8..b42d97fe36dd6b 100644 --- a/src/server/game/World/World.cpp +++ b/src/server/game/World/World.cpp @@ -1284,6 +1284,8 @@ void World::LoadConfigSettings(bool reload) _bool_configs[CONFIG_MUNCHING_BLIZZLIKE] = sConfigMgr->GetOption("MunchingBlizzlike.Enabled", true); + _bool_configs[CONFIG_ENABLE_DAZE] = sConfigMgr->GetOption("Daze.Enabled", true); + _int_configs[CONFIG_DAILY_RBG_MIN_LEVEL_AP_REWARD] = sConfigMgr->GetOption("DailyRBGArenaPoints.MinLevel", 71); _int_configs[CONFIG_AUCTION_HOUSE_SEARCH_TIMEOUT] = sConfigMgr->GetOption("AuctionHouse.SearchTimeout", 1000);