mirror of
https://github.com/araxiaonline/Traumas.git
synced 2026-06-13 02:12:20 -04:00
Rev 64: compress declarations
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
;IdColumnIndex=0
|
||||
455001:0=455001,3=15,4=218104064,6=524288,7=262144,34=131752,35=20,40=3,73=6,81=-31,82=-201,95=42,96=54,97=290,116=455101,131=121,133=2283,136="Trauma: Eye",186=16712188,187="Chance to hit reduced. Cannot crit.#13#10Damage may cause blindness.",203=16712188
|
||||
455002:0=455002,3=15,4=218104064,6=524288,7=262144,28=1,34=131752,35=20,40=3,46=1,71=6,72=6,73=6,74=1,75=1,76=1,81=-36,82=-36,86=1,87=1,95=42,96=33,97=192,116=455102,131=121,133=138,136="Trauma: Limb",186=16712188,187="Movement speed and attack speed reduced.#13#10Damage may cause debilitation.",203=16712188
|
||||
455003:0=455003,3=15,4=218104064,5=1032,6=524288,7=262144,28=1,34=131752,35=33,40=3,71=6,72=6,73=6,74=1,75=1,76=1,81=-41,82=-31,86=1,87=1,95=42,96=33,97=133,116=455103,131=121,133=243,136="Trauma: Body",186=16712188,187="Maximum health and movement speed reduced.#13#10Damage may cause heavy bleeding.",203=16712188
|
||||
455004:0=455004,3=15,4=218104064,6=524288,7=262144,28=1,34=131752,35=20,40=3,71=6,72=6,73=6,74=1,75=1,76=1,81=-51,82=-51,86=1,87=1,95=42,96=33,97=252,116=455104,131=121,133=2636,136="Trauma: Head",186=16712188,187="All speeds reduced.#13#10Damage may cause unconsciousness.",203=16712188
|
||||
455005:0=455005,3=15,4=218104064,6=524288,7=262144,34=131752,35=50,40=3,71=6,72=6,74=1,75=1,81=9,87=1,95=42,96=87,111=127,116=455105,131=121,133=499,136="Trauma: Innards",186=16712188,187="Damage taken increased.#13#10Damage may cause fraility.",203=16712188
|
||||
455101:0=455101,3=12,4=1140850944,7=65536,40=35,71=6,72=6,74=1,75=1,80=-61,86=1,87=1,95=33,96=5,131=9231,133=48,136="Blindness",169=16712188,186=16712190,187="Disoriented.",203=16712190
|
||||
455102:0=455102,3=12,4=1140850944,7=65536,40=35,46=1,72=6,74=1,86=1,87=1,95=26,96=60,131=9020,133=2770,136="Debilitation",186=16712188,187="Stunned.",203=16712190
|
||||
455103:0=455103,3=15,4=67108864,7=65536,40=28,49=100,95=89,98=1000,131=10808,133=500,136="Heavy Bleeding",170="Losing 1% health per second. Stacks.",186=16712190,187="Bleeding.",203=16712190
|
||||
455104:0=455104,3=12,4=1140850944,5=394240,7=65536,9=8,40=32,80=-1,87=1,95=4,96=12,131=12600,133=15,136="Unconsciousness",186=16712188,187="Stunned.",203=16712188
|
||||
455105:0=455105,3=15,4=67109120,7=65536,40=9,49=20,80=4,86=1,95=87,131=10808,133=153,136="Fraility",169=16712188,186=16712190,187="Damage taken increased.",203=16712190
|
||||
455001:0=455001,3=15,4=218104064,6=524288,7=262144,28=1,34=131752,35=20,40=3,71=6,72=6,73=6,75=1,76=1,81=-31,82=-201,86=1,87=1,88=1,95=42,96=54,97=290,116=455101,131=121,133=2283,136="Trauma: Eye",169=16712188,186=16712188,187="Chance to hit reduced. Cannot crit.#13#10Damage may cause blindness.",203=16712188,225=1
|
||||
455002:0=455002,3=15,4=218104064,6=524288,7=262144,28=1,34=131752,35=20,40=3,46=1,71=6,72=6,73=6,74=1,75=1,76=1,81=-36,82=-36,86=1,87=1,88=1,95=42,96=33,97=192,116=455102,131=121,133=138,136="Trauma: Limb",169=16712188,186=16712188,187="Movement speed and attack speed reduced.#13#10Damage may cause debilitation.",203=16712188,225=1
|
||||
455003:0=455003,3=15,4=218104064,5=1032,6=524288,7=262144,28=1,34=131752,35=33,40=3,46=1,71=6,72=6,73=6,74=1,75=1,76=1,81=-41,82=-31,86=1,87=1,88=1,95=42,96=33,97=133,116=455103,131=121,133=243,136="Trauma: Body",169=16712188,186=16712188,187="Maximum health and movement speed reduced.#13#10Damage may cause heavy bleeding.",203=16712188,225=1
|
||||
455004:0=455004,3=15,4=218104064,6=524288,7=262144,28=1,34=131752,35=20,40=3,46=1,71=6,72=6,73=6,74=1,75=1,76=1,81=-51,82=-51,86=1,87=1,88=1,95=42,96=33,97=252,116=455104,131=121,133=2636,136="Trauma: Head",169=16712188,186=16712188,187="All speeds reduced.#13#10Damage may cause unconsciousness.",203=16712188,225=1
|
||||
455005:0=455005,3=15,4=218104064,6=524288,7=262144,28=1,34=131752,35=50,40=3,46=1,71=6,72=6,74=1,75=1,81=9,86=1,87=1,95=42,96=87,111=127,116=455105,131=121,133=499,136="Trauma: Innards",169=16712188,186=16712188,187="Damage taken increased.#13#10Damage may cause fraility.",203=16712188,225=1
|
||||
455101:0=455101,3=12,4=1140850944,7=65536,28=1,35=101,40=35,46=1,71=6,72=6,74=1,75=1,80=-61,86=1,87=1,95=33,96=5,131=9231,133=48,136="Blindness",169=16712188,186=16712190,187="Disoriented.",203=16712190,225=1
|
||||
455102:0=455102,3=12,4=1140850944,7=65536,28=1,35=101,40=35,46=1,71=6,72=6,74=1,86=1,87=1,95=26,96=60,131=9020,133=2770,136="Debilitation",169=16712188,186=16712188,187="Cannot move, attack or cast spells.",203=16712190,225=1
|
||||
455103:0=455103,3=15,4=67108864,7=65536,28=1,35=101,40=28,46=1,49=5,71=6,74=1,86=1,95=89,98=1000,131=10808,133=500,136="Heavy Bleeding",169=16712188,170="Losing 1% health per second. Stacks.",186=16712190,187="Bleeding $s1% of maximum health per second.",203=16712190,225=1
|
||||
455104:0=455104,3=12,4=1140850944,5=394240,7=65536,9=8,28=1,35=101,40=32,46=1,71=6,72=6,74=1,80=-1,86=1,87=1,95=4,96=12,131=12600,133=15,136="Unconsciousness",169=16712188,186=16712188,187="Stunned.",203=16712188,225=1
|
||||
455105:0=455105,3=15,4=67109120,7=65536,28=1,35=101,40=9,46=1,49=20,71=6,74=1,80=4,86=1,95=87,110=127,131=10808,133=153,136="Fraility",169=16712188,186=16712190,187="All damage taken increased by $s1%.",203=16712190,225=1
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
From 368de2b69a44a4ca396a188b0e64dcb70378fdd7 Mon Sep 17 00:00:00 2001
|
||||
From 5656b9d19ebae5d1cf6c82511dab0301a8a29de6 Mon Sep 17 00:00:00 2001
|
||||
From: trickerer <onlysuffering@gmail.com>
|
||||
Date: Tue, 2 Feb 2021 21:35:12 +0700
|
||||
Subject: [PATCH] traumas2020
|
||||
Date: Fri, 19 Feb 2021 19:21:09 +0700
|
||||
Subject: [PATCH] traumas
|
||||
|
||||
---
|
||||
src/server/game/Entities/Unit/Unit.cpp | 5 +
|
||||
src/server/game/Scripting/ScriptMgr.cpp | 5 +
|
||||
src/server/game/Scripting/ScriptMgr.h | 4 +
|
||||
src/server/scripts/Custom/custom_script_loader.cpp | 2 +
|
||||
src/server/scripts/Custom/traumas.cpp | 314 +++++++++++++++++++++
|
||||
src/server/worldserver/worldserver.conf.dist | 126 +++++++++
|
||||
6 files changed, 456 insertions(+)
|
||||
src/server/game/Entities/Unit/Unit.cpp | 5 +
|
||||
src/server/game/Scripting/ScriptMgr.cpp | 5 +
|
||||
src/server/game/Scripting/ScriptMgr.h | 4 +
|
||||
.../scripts/Custom/custom_script_loader.cpp | 2 +
|
||||
src/server/scripts/Custom/traumas.cpp | 300 ++++++++++++++++++
|
||||
src/server/worldserver/worldserver.conf.dist | 126 ++++++++
|
||||
6 files changed, 442 insertions(+)
|
||||
create mode 100644 src/server/scripts/Custom/traumas.cpp
|
||||
|
||||
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
|
||||
index 0d5ff0e..6de679c 100644
|
||||
index b2fa0d6..97a09e2 100644
|
||||
--- a/src/server/game/Entities/Unit/Unit.cpp
|
||||
+++ b/src/server/game/Entities/Unit/Unit.cpp
|
||||
@@ -694,6 +694,11 @@ bool Unit::HasBreakableByDamageCrowdControlAura(Unit* excludeCasterChannel) cons
|
||||
@@ -85,10 +85,10 @@ index 9e5e9ba..3a2fbb4 100644
|
||||
}
|
||||
diff --git a/src/server/scripts/Custom/traumas.cpp b/src/server/scripts/Custom/traumas.cpp
|
||||
new file mode 100644
|
||||
index 0000000..9fe4635
|
||||
index 0000000..bf2761f
|
||||
--- /dev/null
|
||||
+++ b/src/server/scripts/Custom/traumas.cpp
|
||||
@@ -0,0 +1,314 @@
|
||||
@@ -0,0 +1,300 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2020-2021 trickerer <https://github.com/trickerer>
|
||||
+ */
|
||||
@@ -99,7 +99,7 @@ index 0000000..9fe4635
|
||||
+#include "SpellAuraEffects.h"
|
||||
+
|
||||
+//version
|
||||
+#define TRAUMAS_REVISION 62
|
||||
+static constexpr uint32 TRAUMAS_REVISION = 64;
|
||||
+
|
||||
+//config
|
||||
+bool _Tenabled;
|
||||
@@ -134,8 +134,8 @@ index 0000000..9fe4635
|
||||
+ TRAUMA_INTERNAL = 5
|
||||
+};
|
||||
+
|
||||
+#define TRAUMA_NONE 0
|
||||
+#define MAX_TRAUMAS 5
|
||||
+static constexpr uint32 TRAUMA_NONE = 0;
|
||||
+static constexpr uint32 MAX_TRAUMAS = 5;
|
||||
+
|
||||
+enum TraumaBaseSpells
|
||||
+{
|
||||
@@ -146,7 +146,7 @@ index 0000000..9fe4635
|
||||
+ SPELL_TRAUMA_BASE_INTERNAL = 455005
|
||||
+};
|
||||
+
|
||||
+static const uint32 SPELL_TRAUMA_BASE[MAX_TRAUMAS] =
|
||||
+static constexpr uint32 SPELL_TRAUMA_BASE[MAX_TRAUMAS] =
|
||||
+{
|
||||
+ SPELL_TRAUMA_BASE_EYE,
|
||||
+ SPELL_TRAUMA_BASE_LIMB,
|
||||
@@ -155,7 +155,6 @@ index 0000000..9fe4635
|
||||
+ SPELL_TRAUMA_BASE_INTERNAL
|
||||
+};
|
||||
+
|
||||
+//traits - no c++11+
|
||||
+namespace trauma_traits
|
||||
+{
|
||||
+template <TraumaTypes, CreatureType> struct Is_viable { enum { value = true }; };
|
||||
@@ -171,34 +170,21 @@ index 0000000..9fe4635
|
||||
+/*Totem*/ NOT_VIABLE_ALL(CREATURE_TYPE_TOTEM)
|
||||
+/*Gas Cloud*/ NOT_VIABLE_ALL(CREATURE_TYPE_GAS_CLOUD)
|
||||
+}
|
||||
+template <TraumaTypes T, CreatureType C, bool is_viable = trauma_traits::Is_viable<T,C>::value>
|
||||
+struct Trauma { static bool IsViable() { return is_viable; } };
|
||||
+
|
||||
+struct TraumaViability
|
||||
+{
|
||||
+ explicit TraumaViability(TraumaTypes t, CreatureType c, bool val) : t_type(t), c_type(c), my_val(val) { }
|
||||
+
|
||||
+ TraumaTypes ttype() const { return t_type; }
|
||||
+ CreatureType ctype() const { return c_type; }
|
||||
+ bool viable() const { return my_val; }
|
||||
+
|
||||
+private:
|
||||
+ TraumaTypes t_type;
|
||||
+ CreatureType c_type;
|
||||
+ bool my_val;
|
||||
+ const TraumaTypes t_type;
|
||||
+ const bool viable;
|
||||
+};
|
||||
+
|
||||
+typedef std::multimap<CreatureType, const TraumaViability> TraumaViabilityMap;
|
||||
+typedef std::multimap<const CreatureType, const TraumaViability> TraumaViabilityMap;
|
||||
+typedef std::pair<TraumaViabilityMap::const_iterator, TraumaViabilityMap::const_iterator> TraumaViabilityRange;
|
||||
+typedef TraumaViabilityMap::value_type TraumaViabilityPair;
|
||||
+
|
||||
+#define Tpair(t,c) TraumaViabilityPair(c,TraumaViability(t,c, Trauma<t,c>::IsViable()))
|
||||
+#define Tpair(t,c) TraumaViabilityPair(c, TraumaViability{t, trauma_traits::Is_viable<t, c>::value})
|
||||
+#define Tpairs(t) Tpair(t,CREATURE_TYPE_BEAST), Tpair(t,CREATURE_TYPE_DRAGONKIN), Tpair(t,CREATURE_TYPE_DEMON), Tpair(t,CREATURE_TYPE_ELEMENTAL), Tpair(t,CREATURE_TYPE_GIANT), Tpair(t,CREATURE_TYPE_UNDEAD), Tpair(t,CREATURE_TYPE_HUMANOID), Tpair(t,CREATURE_TYPE_CRITTER), Tpair(t,CREATURE_TYPE_MECHANICAL), Tpair(t,CREATURE_TYPE_NOT_SPECIFIED), Tpair(t,CREATURE_TYPE_TOTEM), Tpair(t,CREATURE_TYPE_NON_COMBAT_PET), Tpair(t,CREATURE_TYPE_GAS_CLOUD)
|
||||
+
|
||||
+static const TraumaViabilityPair tviaarr[] =
|
||||
+{ Tpairs(TRAUMA_EYE), Tpairs(TRAUMA_LIMB), Tpairs(TRAUMA_BODY), Tpairs(TRAUMA_HEAD), Tpairs(TRAUMA_INTERNAL) };
|
||||
+
|
||||
+static const TraumaViabilityMap TraumasMap(tviaarr, tviaarr + sizeof(tviaarr) / sizeof(tviaarr[0]));
|
||||
+const TraumaViabilityMap TraumasMap = { Tpairs(TRAUMA_EYE), Tpairs(TRAUMA_LIMB), Tpairs(TRAUMA_BODY), Tpairs(TRAUMA_HEAD), Tpairs(TRAUMA_INTERNAL) };
|
||||
+
|
||||
+//scripts
|
||||
+class traumas_config : public WorldScript
|
||||
@@ -222,7 +208,7 @@ index 0000000..9fe4635
|
||||
+ TC_LOG_INFO("server.loading", ">> Traumas config %s.", reload ? "re-loaded" : "loaded");
|
||||
+
|
||||
+ if (_Tenabled)
|
||||
+ TC_LOG_INFO("server.loading", ">> Traumas system enabled (rev %u)", (uint32)TRAUMAS_REVISION);
|
||||
+ TC_LOG_INFO("server.loading", ">> Traumas system enabled (rev %u)", TRAUMAS_REVISION);
|
||||
+ }
|
||||
+
|
||||
+ void _LoadConfig()
|
||||
@@ -388,8 +374,8 @@ index 0000000..9fe4635
|
||||
+
|
||||
+ TraumaViabilityRange v_range = TraumasMap.equal_range(CreatureType(unit->GetCreatureType()));
|
||||
+ for (TraumaViabilityMap::const_iterator it = v_range.first; it != v_range.second; ++it)
|
||||
+ if (it->second.viable())
|
||||
+ vt_types.push_back(it->second.ttype());
|
||||
+ if (it->second.viable)
|
||||
+ vt_types.push_back(it->second.t_type);
|
||||
+
|
||||
+ if (!vt_types.empty())
|
||||
+ return vt_types.size() == 1 ? vt_types.front() : Trinity::Containers::SelectRandomContainerElement(vt_types);
|
||||
@@ -404,7 +390,7 @@ index 0000000..9fe4635
|
||||
+ new script_traumas();
|
||||
+}
|
||||
diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist
|
||||
index 6a51d91..b01168b 100644
|
||||
index 0a79664..e2fbc30 100644
|
||||
--- a/src/server/worldserver/worldserver.conf.dist
|
||||
+++ b/src/server/worldserver/worldserver.conf.dist
|
||||
@@ -4089,3 +4089,129 @@ Metric.OverallStatusInterval = 1
|
||||
@@ -538,5 +524,5 @@ index 6a51d91..b01168b 100644
|
||||
+#
|
||||
+###################################################################################################
|
||||
--
|
||||
2.10.0.windows.1
|
||||
2.30.1.windows.1
|
||||
|
||||
8
world_spell_proc.sql
Normal file
8
world_spell_proc.sql
Normal file
@@ -0,0 +1,8 @@
|
||||
REPLACE INTO `spell_proc`
|
||||
(`SpellId`,`Chance`,`Cooldown`)
|
||||
VALUES
|
||||
('455001','20','4000'),
|
||||
('455002','20','4000'),
|
||||
('455003','33','1000'),
|
||||
('455004','20','4000'),
|
||||
('455005','50','250');
|
||||
@@ -1,8 +0,0 @@
|
||||
REPLACE INTO `spell_proc`
|
||||
(`SpellId`,`ProcsPerMinute`,`Cooldown`)
|
||||
VALUES
|
||||
('455001','5','4000'),
|
||||
('455002','5','4000'),
|
||||
('455003','5','4000'),
|
||||
('455004','5','4000'),
|
||||
('455005','5','4000');
|
||||
Reference in New Issue
Block a user