Commit Graph

95 Commits

Author SHA1 Message Date
Francesco Borzì
50b36e842a fix(docs/license): use GPLv2 as MaNGOS-based project (#23655) 2025-11-14 08:44:25 -03:00
Jelle Meeus
4c4b04f07b refactor(Core/Packet): use WorldPackets::WorldState::InitWorldStates definition (#20475)
Co-authored-by: ccrs <ccrs@users.noreply.github.com>
2025-02-19 07:55:09 -03:00
Takenbacon
edcfaeb845 refactor(Core/World): Create WorldSessionMgr to split session logic out of World (#21400) 2025-02-13 07:04:38 +01:00
Andrew
d851f97f40 fix(Core/Instances): Ensure team is acquired before spawning creatures (#21221) 2025-01-21 20:13:22 -03:00
Andrew
b238daa7a8 refactor(Scripts/BloodFurnace): Clean up instance script (#21207) 2025-01-19 20:33:19 +01:00
Andrew
4a3fab424c refactor(Core/Instances): Implement GetTeamIdInInstance() for two-fac… (#21168) 2025-01-17 23:51:25 -03:00
manstfu
bf4118362a fix(Core/Group): CF Faction Assign & Leader Instance Faction (#21118)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2025-01-13 08:54:47 -03:00
Kitzunu
d2b88bdc1e feat(CI/Codestyle); Check for double semicolons (#20996) 2024-12-21 22:19:49 +01:00
Andrew
e1d0cf9a15 feat(Core/Instances): Implement SummonData (#20582) 2024-11-15 10:49:02 -03:00
Andrew
587762ca36 fix(Core/Instance): Save persistent data to DB on updates (#20555) 2024-11-14 00:01:22 -03:00
Andrew
8b16f7d243 fix(Scripts/BlackTemple): Implement emotes when opening Najentus and … (#19946)
* fix(Scripts/BlackTemple): Implement emotes when opening Najentus and Den of Mortal Delights

* only check if state is done
2024-09-15 12:48:11 +02:00
Benjamin Jackson
1edac37ac3 refactor(Core): Make more use of helpers. (#19835)
* Init.

* Reword.

* Update codestyle script.

Co-Authored-By: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Add gameobject type ID check, reorder checks.

* Add helper/codestyle check for unit type.

* `IsUnit()` -> `IsCreature()`

* Add `IsUnit()` method.

* Use type mask.

https: //github.com/TrinityCore/TrinityCore/commit/cc71da35b5dc74abf71f8691161525a23d870bb5
Co-Authored-By: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-Authored-By: Ovahlord <18347559+Ovahlord@users.noreply.github.com>

* Replace instances of `isType` with `IsUnit`.

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
Co-authored-by: Ovahlord <18347559+Ovahlord@users.noreply.github.com>
2024-09-03 14:41:31 -03:00
Kitzunu
e4df159f5c refactor(Core/Chat): Move SendNotification to ChatHander (#19491)
* refactor(Core/Chat): Move SendNotification to ChatHander

* Update Battleground.cpp

* fix build

* Update src/server/game/Chat/Chat.h
2024-08-10 11:39:46 -03:00
Andrew
2a1d23e520 fix(Scripts/Hyjal): Implement Eternal Silence spell when going into t… (#18960)
fix(Scripts/Hyjal): Implement Eternal Silence spell when going into the Well of Eternity
2024-05-28 01:24:10 +02:00
Flashaholic88
c18bd64136 fix(Core/Misc): typo (#18221) 2024-01-23 21:38:32 +01:00
Andrew
a11434b24f refactor(Core/GameObject): Move the GameObject state save handling to… (#18080)
* refactor(Core/GameObject): Move the GameObject state save handling to instance level

* Update GameObject.h

* remove leftover

* small improvements
2024-01-01 01:51:33 -03:00
Andrew
0fa6a67815 feat(Core/Scripting): Implement AfterInstanceGameObjectCreate() global hook (#17935) 2023-12-03 18:04:16 -03:00
Winfidonarleyan
eb1ecc38a5 feat(Core/Scripting): move all script objects to separated files (#17860)
* feat(Core/Scripts): move all script objects to separated files

* Apply 5bfeabde81

* try gcc build

* again
2023-12-02 21:13:20 +01:00
Andrew
590c2d7ea1 refactor(Core/Instance): Modernize a few player iterations (#17717) 2023-11-15 14:14:17 -03:00
KJack
1227e69600 fix(Core/InstanceScript): Fix new Remove function conversion miss (#17708) 2023-11-14 16:43:46 -03:00
KJack
3d20f8902b feat(Core/Instance): InstanceScript: create Remove functions (#17702)
InstanceScript: create `Remove` helper functions
2023-11-14 08:13:28 -03:00
Kitzunu
bbadc32bea Revert Visibility Notifier changes (#17682)
* Revert "fix(Core/Grid): Implement missing GridUnload setting (#17569)"

This reverts commit 79b39f9655.

* Revert "fix(Core/Grid): Address bugs and performance issues introduced by visibility notifier implementation (#17480)"

This reverts commit 60e27511c5.

* Revert "fix(Core): GridCleanUpDelay Log (#17436)"

This reverts commit 90b16ca065.

* Revert "feat(Core/Grids): Implement visibility notifier (#15919)"

This reverts commit 2779833768.
2023-11-12 00:48:49 +01:00
AG
2779833768 feat(Core/Grids): Implement visibility notifier (#15919)
* Cherry-picked from TrinityCore (unable to find author)
2023-09-28 22:28:28 +02:00
Kitzunu
2d3e9a8f23 fix(Player/Achievement): fix crash (#17357)
* closes https://github.com/azerothcore/azerothcore-wotlk/issues/17330
2023-09-25 21:01:19 +02:00
Ludwig
fcd58da08c fix(Core/Achievement): Implement ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_RAID (#17316) 2023-09-22 00:54:08 +02:00
Skjalf
0bf559f975 feat(Core/Instance): Add TaskScheduler to the InstanceScript class (#17284)
feat(Core/Instance): Add TaskScheduler to the instancescript class
2023-09-17 10:56:02 -03:00
Francesco Borzì
5d01b700fd refactor(Core): remove unused imports (#17094) 2023-08-28 13:39:43 +02:00
M'Dic
7b0efe01e5 chore(core/instance): Move to switch case (#16084)
This has just sloppy. Moved to Case switch with log error and else debug logging
2023-04-28 01:31:09 +02:00
Skjalf
a695d00932 fix(Scripts/Steamvault): Rework Kalithresh (#15883) 2023-04-08 21:56:09 -03:00
Skjalf
40ff0c607e fix(Scripts/IcecrownCitadel): Fix ICC buff not being reapplied after … (#15407) 2023-03-16 05:20:25 -03:00
Skjalf
a9fac92c80 feat(Core/Instance): Implement helpers to easily save/retrieve persist… (#15113) 2023-02-18 23:11:36 -03:00
Skjalf
0dbb8c814c refactor(Core/InstanceScript): refactored load and save methods (#14977)
Co-authored-by: joschiwald <736792+joschiwald@users.noreply.github.com>
2023-02-12 15:53:48 -03:00
55Honey
a1fb48391b feat(Core/Scripting): Implement OnBeforeSetBossState (#14891) 2023-02-07 13:15:17 -03:00
Angelo Venturini
0ed7813e84 refactor(Core/Instance): make SetBossState void (#13412) 2023-02-05 00:05:20 +01:00
UltraNix
b1bc1c24e4 feat(Core/Scripting): Added new hook: OnInstanceIdRemoved. (#14670)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: 55Honey <71938210+55Honey@users.noreply.github.com>
2023-02-04 19:56:20 -03:00
M'Dic
967f8ce6d6 update (core): Startup console capitalizations (#13195) 2022-10-01 13:09:34 -04:00
M'Dic
5dd22f822d fix (core): Cast sub-expression to wider-type (#12430)
sub-expression may overflow before being added to a wider type.
Possible fix for a segmentation fault being reported in the chat.
2022-08-13 15:05:23 -04:00
天鹿
40a5eef152 refactor(Core/Instances): Update CHAR_DELETE_INSTANCE_SAVED_DATA (#11866)
* Update InstanceSaveMgr.cpp

* Update Group.cpp

* Update InstanceSaveMgr.cpp

* Update InstanceSaveMgr.h

* Update InstanceSaveMgr.cpp

* Update InstanceSaveMgr.h

* Update InstanceSaveMgr.cpp

* Update InstanceSaveMgr.h

* Update InstanceSaveMgr.cpp

* Update Group.cpp

* Update PlayerMisc.cpp

* Update InstanceSaveMgr.h

* Update Group.cpp

* Update PlayerMisc.cpp

* Update Group.cpp

* Update Group.cpp

* Update InstanceSaveMgr.cpp

* Update InstanceSaveMgr.h

* Update Group.h

* Update InstanceSaveMgr.cpp

* Update InstanceSaveMgr.cpp

* Update InstanceSaveMgr.cpp
2022-05-30 15:27:50 -03:00
Hanabi
a6a2ca8ef7 feat(Core/GameObjects): Instance gameobject save data implementation (#11113)
* fix(Core): Save gameobject state on instances

Currently, azerothcore doesn't save gameobject states on instances.
Whenever there's a re-start or crash, the instance's gameobjects and
their states aren't saved, producing un-wanted behaviours and blocking instances at times.

Implemented CRUD for new table `instance_saved_data` that holds the states of gameobjects.

- When worldserver launches and gameobjects are loaded, this will check
  if this object's state exists on the DB and sets the previous state.
- On instance deletion (reset) these states are also removed based on
  the instance ID.
- Whenever a gameobject state changes inside a dungeon or raid, we save
  on the database the set state.

* Select query to synchronous and used FindMap()

* loading gameobject states on create

* reseting instance saved data

* missing reset methods and on create state

* database structure

* Update src/server/game/Entities/GameObject/GameObject.cpp

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/game/Entities/GameObject/GameObject.cpp

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/game/Entities/GameObject/GameObject.cpp

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/game/Entities/GameObject/GameObject.cpp

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/game/Entities/Player/PlayerMisc.cpp

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/game/Groups/Group.cpp

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* codestyle

* table changes

* table style

* codestyle

* table changes for columns

* data sanitization

* todo:

- Finish loading db data into the containers
- Using containers to find data
- How to get data from ObjectMGR inside Gameobject?

* loading on start up and db changes

* Removing unused data structure

* Uninitialised integer

* Whitespace

* clean-up and hooks to save states on memory

* Codestyle MySQL deprecated backticks

* i dont understand codefactor

* build

* Update data/sql/updates/pending_db_world/rev_1643395587559675400.sql

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/game/Globals/ObjectMgr.h

Co-authored-by: Kargatum <dowlandtop@yandex.com>

* review changes

* unecessary removal

* pushback instead of emplace

* wrong database update

* Update ObjectMgr.cpp

* missing check

* removing entry from the PR

* missing removals

* last delete

* build

* aha! Found the culprit for the sudden assert errors

* type safety, save only important gameobjects

* static cast to unsigned short

* Update data/sql/updates/pending_db_characters/rev_1643629468629316100.sql

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* type changes

* queries fix

* fix build

* enabling which gameobjects to save on the database

* deadmines iron clad door

* Adjustment to gameobject onj create state and instances:

- Gnomeregan doors and Grubbis boss state
- Deadmines missing doors
- Stratholme gameobjects state saved

* forgot emi blastfuse change to despawn

* Leaving group logic

* codestyle

* fixing merge issues

* prevent bad behaviour

* brain meltdown

* Update data/sql/updates/pending_db_characters/rev_1643629468629316100.sql

* Update data/sql/updates/pending_db_world/rev_1649359139539727000.sql

Co-authored-by: Claudiodfc <54484196+claudiodfc@users.noreply.github.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: Kargatum <dowlandtop@yandex.com>
Co-authored-by: Skjalf <47818697+Nyeriah@users.noreply.github.com>
2022-05-24 10:33:45 -03:00
IntelligentQuantum
ab4ee71762 feat(Core/Maps): AreaBoundary (#10525)
* cherry-picked commit (2da458c56d)
2022-04-15 14:10:41 +02:00
Skjalf
7377c96cc8 fix(Scripts/BlackwingLair): Razorgore improvements (#10971)
- Rewrite reset events
- Use proper healing spell on phase transition
- Now uses abilities during phase 1
- Phase transition scripted - mobs now run away
2022-03-23 15:42:34 -03:00
UltraNix
3c9e8d4eb1 fix(Core): Crash related to reset instances (#11003) 2022-03-18 19:32:28 -03:00
Kitzunu
455899dc75 fix(Core/Misc): Change const to be after type name (#10591) 2022-02-14 16:05:45 -03:00
Kargatum
de13bf426e feat(Core/DBLayer): replace char const* to std::string_view (#10211)
* feat(Core/DBLayer): replace `char const*` to `std::string_view`

* CString

* 1

* chore(Core/Misc): code cleanup

* cl

* db fix

* fmt style sql

* to fmt

* py

* del old

* 1

* 2

* 3

* 1

* 1
2022-02-05 00:37:11 +01:00
Kargatum
5969df4e30 refactor(Core/Logging): switch to fmt style for LOG_ (#10366)
* feat(Core/Common): add support fmt style for ASSERT and ABORT

* correct CheckCompactArrayMaskOverflow

* 1

* Update src/server/game/Spells/Spell.cpp

* rework logging

* add fmt replace logs

* logging

* FMT_LOG_

* settings

* fix startup

* 1

* 2

* 3

* 4

* 5

* fmt::print

* to fmt
2022-01-27 16:44:41 +01:00
Kargatum
8b7df23f06 feat(Core/Time): Implement saparated manager for game time (#8630) 2022-01-24 17:55:00 +07:00
Francesco Borzì
9dc88def35 refactor(Core): apply clang-tidy modernize-* (#9975)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2022-01-17 14:35:07 +01:00
Kitzunu
d1cc65b1c7 refactor(Core/Misc): isEmpty to IsEmpty (#10011) 2022-01-13 21:43:15 -05:00
Skjalf
b4a14214ca fix(Core/Instances): always put boss minions in combat with zone (#9649) 2021-12-13 18:26:38 +01:00
Skjalf
849839c688 chore(Core/Instances): Move the objectdata loading log from error to debug level (#9382) 2021-11-27 07:56:10 -03:00