Commit Graph

170 Commits

Author SHA1 Message Date
Wyrserth f6df334bb6 Script/ScarletEnclave: remove Eye of Acherus control and speed auras from player when the Eye of Acherus is dismissed.
(cherry picked from commit bf8741c53d)
2021-12-17 00:29:59 +01:00
ccrs 49bc6533fd Scripts/ScarletEnclave: 4ee84bb followup
(cherry picked from commit 81475f709f)
2021-12-16 00:11:25 +01:00
ccrs 8c35206bb5 Scripts/ScarletEnclave: 4ee84bb followup
(cherry picked from commit fa9a4ee20d)
2021-12-16 00:10:25 +01:00
Wyrserth 3bb61af113 Script/ScarletEnclave: use spline movement for the lauch phase of the Eye of Acherus.
Closes #22802.

(cherry picked from commit 4ee84bbecb)
2021-12-15 23:39:51 +01:00
Shauren 9951b53808 Core/Misc: Fixed some gcc warnings 2021-12-12 19:19:15 +01:00
Giacomo Pozzoni 5f545f5402 3.3.5 gameobject summoner (#23289)
* Scripts/Misc: Change IsSummonedBy(Unit*) to IsSummonedBy(WorldObject*)

* Scripts/Misc: Fix build

* Core/TempSummons: Rename GetSummoner() to GetSummonerUnit()

* Core/TempSummons: Add support to TempSummons::GetSummoner() to return GameObject too

* Fix build

* Core/TempSummons: Allow GameObject to be owner of TempSummon

* Core/TempSummons: Add support to SAI for GameObject owner of TempSummon

* Scripts/Misc: Fix no-pch build

* Core/TempSummons: Implement PR comments

(cherry picked from commit 797fba98e9)
2021-12-07 00:02:03 +01:00
Sorikoff 8f0afc81da Scripts/Scarlet Enclave: Unworthy Initiate (#23195)
(cherry picked from commit 4468a538ff)
2021-12-02 00:38:42 +01:00
Sorikoff d72e809ecf Scripts/Spells: Migrate Some Scripted Spells to Scripts (#23185)
* Migrate spells to scripts

* Simplify code

* I need to sleep

* Update chapter1.cpp

* Use actual damage

* No need in null check here

(cherry picked from commit 2cfaeb1400)
2021-11-30 22:30:53 +01:00
Sorikoff 956158d299 Core/Movement: Allow using walk when chasing v2 (#23073)
* Allow walk when chasing

(cherry picked from commit dbadb6369c)
2021-11-24 20:34:54 +01:00
Sorikoff b3f75852c2 Allow walk when chasing (#23069)
(cherry picked from commit c2f2db08aa)
2021-11-24 00:02:13 +01:00
Sorikoff ee0662ca3d Scripts/Scarlet Enclave: Stable Master Kitrik's spell Repo (#23023)
(cherry picked from commit f0f4d0280d)
2021-11-23 23:04:34 +01:00
Sorikoff fc9106054b Scripts/Scarlet Enclave: Grand Theft Palomino (#22967)
* Grand Theft Palomino

* Cosmetic issues

* Address CR

(cherry picked from commit d5f565f429)
2021-11-23 21:28:03 +01:00
DanVS 28cb2af1c5 Core/Scripts: Unify Chrono Literals (#22420)
* Unify Chrono Literals

* Retire IN_MILLISECONDS

* Build fix

* Build fix (sequel)

* Retire urand()

* Edge cases

* Build

* Whitespaces

* More edge cases

* Additional cases

(cherry picked from commit 5b0f4009df)
2021-11-09 00:26:59 +01:00
Treeston e4e8c1c59c Core/AI: Clean up charm AI handling, we now have two unique_ptr instead of a crapton of booleans
(cherry picked from commit 042f5515e4)
2021-10-22 23:47:51 +02:00
DanVS 1195e2cf1a Scripts/Scarlet Enclave: Death Comes From On High
(cherry picked from commit afc25d22ef)
2021-10-22 21:38:42 +02:00
ccrs 426f9f2f92 Core/Movement: MotionMaster reimplementation (#21888)
Internal structure and handling changes, nothing behavioural (or thats the intention at least).

(cherry picked from commit 982643cd96)
2021-09-28 00:15:13 +02:00
ccrs d59a6af9c6 Core/Movement: move MoveSplineInit (#21857)
The number of edge cases in which weirdness is seen on "effect movements" will be kinda reduced, plus consistency, plus movementInform on custom movement spline initalizations.

(cherry picked from commit 2a45418032)
2021-09-26 14:19:36 +02:00
Keader ad5b0fa9cd Core/Scripts: Fixed possible crashs related with JustDied
(cherry picked from commit 5bef3e426a)
2021-06-19 23:33:24 +02:00
ariel- 62c571076e Core/Scripts: added nullptr checks to DamageTaken hooks
Since cb9e72e521 attacker may not be in world when hook is called

(cherry picked from commit 0db5c2df3f)
2021-06-16 12:02:14 +02:00
sirikfoll 5b5bc4c5c7 Scripts/Scarlet Enclave: Quest The Endless Hunger will work correctly after Unworthy Initiate Respawn
Due to dynamic spawns, we need to be able to update the Npc GUID after the respawn, otherwise the quest can only be completed by the first player

(cherry picked from commit 72ff2e30c3)
2021-06-15 23:43:17 +02:00
Treeston bce43de7f3 Core/AI: Some more refactoring prep for #19930. CreatureAI::EnterCombat is now called CreatureAI::JustEngagedWith. There's also two new methods on UnitAI, though they're never invoked right now.
(cherry picked from commit 6113b9dec2)
2021-04-16 20:22:13 +02:00
Keader a7883380ce Core/AI: Making guid const& in SetGUID method (#21128)
(cherry picked from commit 465b43fabe)
2021-04-15 05:53:27 +02:00
Shauren b231903932 Core/Misc: Port all the refactors sneaked in master to 3.3.5 include cleanup port 2020-09-04 13:38:24 +02:00
ccrs 97585597f0 Core/Movement: waypoint movement (#20121)
Following the work done in #19361 this is the cleanup and improvement of the related logic of waypoint management.

Ref 28050f3 #18020
(taking the good parts and ignoring the incomplete work)

(cherry picked from commit 7fff83d675)
2020-08-23 00:45:46 +02:00
treeston 2dfafa69eb Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;

(cherry picked from commit 74af880217)
2020-08-18 18:53:13 +02:00
Shauren 1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
ariel- 5903a10a83 Core/AI: segregate GameObject ReportUse from normal Use (lock open/normal click)
Closes #19819

(cherry picked from commit 2335b9de1a)
2020-07-16 21:47:28 +02:00
ForesterDev c34b83a467 Core/Defines: define faction templates and replace magic numbers from scripts
(cherry picked from commit abea8bf4cb)
2020-06-14 23:49:03 +02:00
ariel- 6604849716 Core/Scripts: unified scripted gossip/quest api
- Changed self-accessor on GameObjectAI to "me", like UnitAI
- Moved all related functions to AI, now Unit and GameObject have the same function names with identical behaviour
- Remove "OnUpdate" from CreatureScript/GameObjectScript, was never used and we already have AI Update method
- Quest methods no longer return a bool, the return value was used to call the AI version if the ScriptMgr one returned false
- Implemented GameObjectAI::Destroyed hook (was never called), implemented Damaged method
- Rename OnStateChanged to OnLootStateChanged to reflect when it's really called, and created a new hook OnStateChanged that only gets called on GOState change
- Since the functions are now only getting called from AI, made GetAI methods full virtual. (CanSpawn method is anyways going to be used on creatures with AI)

(cherry picked from commit f913f3bb89)
2020-05-03 03:04:32 +02:00
ariel- 93c19c4194 Core/Misc: camelize GetFaction/SetFaction properly
(cherry picked from commit 4c4dca6d69)
2020-04-29 01:36:41 +02:00
Aokromes b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
Shauren 455959c606 Core/PacketIO: Rewrite updatefield handling 2019-06-08 17:06:57 +02:00
vincent-michael 5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
Traesh 9d210476e5 Core/Creatures: Update creature model handling with new display scale (#22567) 2018-11-07 20:23:30 +01:00
Ovahlord a6f91c9b81 Npc/Script: fixed Eye of Acherus action bar
Closes #18362
2018-06-11 20:24:08 +02:00
vincent-michael 7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
Shauren b453e12423 Core/Game: Include cleanup part 5
* ObjectMgr.h
* Player.h
* Unit.h
* G3D should no longer propagate everywhere from Spline/MotionMaster
2017-06-04 01:00:45 +02:00
Shauren c5d3dd90be Core/Game: Include cleanup
* Mostly aimed at removing Log/DatabaseEnv includes from other headers
* Fix most packet headers including other packet headers - moved common structures such as ItemInstance to their own files
* Moved SAI function definitions to source files (massive or requiring many different dependencies)
2017-05-18 23:53:25 +02:00
treeston bbbf8df8e5 Entities/Gossip: The Big One™ that gets rid of all uses of The Bad™ and The Ugly™, e.g. gossip preprocessor macros, and replaces them with the new-and-shiny gossip functions.
(cherry picked from commit d55426f5b4)
2017-02-18 17:50:00 +01:00
tkrokli 16c6e0fb80 Core/Scripts: set correct unit_flags on Scarlet Mine Car (#17844)
Closes #17816
(cherry picked from commit f3dc97f263)

Rename 2016_08_24_08_world.sql to 2016_08_24_03_world.sql
(cherry picked from commit cabf6bd98a)
2017-02-18 15:49:05 +01:00
vincent-michael 86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00
Shauren ac1dc758b9 Core/Units: Cleanup hardcoded magic numbers for byte field offsets 2016-12-13 20:58:22 +01:00
Chaouki Dhib 3cbbcdb51a Core/Movement: Clean up and improvements on Unit::SetSpeed (#16843)
- Clean up of Unit::SetSpeed (mostly cherry picks from the 6.x branch):
- the opcode sent depends on the unit. until now, MSG_MOVE_SET_* were sent for every units which isn't like retail behavior.
- Removed the unused method parameter "forced" from Unit::SetSpeed
- Renamed Unit::SetSpeed to SetSpeedRate
- Removed the unused method parameter "forced" from Unit::UpdateSpeed
- Added utility method Unit::SetSpeed which take the new flat value.
(cherry picked from commit dc3327f9c5)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Handlers/MovementHandler.cpp
#	src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
#	src/server/scripts/EasternKingdoms/ZulAman/boss_nalorakk.cpp
#	src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp
#	src/server/scripts/Kalimdor/zone_azshara.cpp
#	src/server/scripts/Kalimdor/zone_durotar.cpp
#	src/server/scripts/Outland/zone_hellfire_peninsula.cpp
2016-04-16 02:26:24 +01:00
treeston a254bdff59 Merge remote-tracking branch 'tkrokli/gossip_accept_duel' into 3.3.5-base
(cherry picked from commit 9091451818)
2016-03-22 22:06:54 +01:00
Vincent-Michael 478cc756eb Update copyright note for 2016
Happy new year (Again new year with idiots ...)
2016-01-01 00:34:25 +01:00
CreshandKesh 143d00a242 Core/Scripts: Salanar the Horseman, Into the Realm of Shadows
- Show gossip_menu_option 9739 only if quest 12687 is accepted & not completed
- Cast spell 52693, SPELL_REALM_OF_SHADOWS, when gossip option is selected

Core script by @CreshandKesh (with some modifications)
SQL part by @CreshandKesh and @tkrokli, condition adjustment by @Killyana.

Closes #15603
Closes #15657

(cherry picked from commit 359df54b79)
2015-11-06 13:14:05 +01:00
tkrokli 3d9b2d8de2 Core/Scripts: The Endless Hunger & Death's Challenge, creature text
This PR solves the following say text issues:
In quest ID 12733, Death's Challenge, the creature script npc_death_knight_initiate is supposed to target the player and refer to the player character's name in the following 2 lines from `creature_text`.`entry` 28406:

- "You don't stand a chance, $n." (`BroadcastTextId` 29267)
- "Remember this day, $n, for it is the day that you will be thoroughly owned." (`BroadcastTextId` 29270)

In quest ID 12848, The Endless Hunger, the creature script npc_unworthy_initiate is supposed to target the player and refer to the player character's race in the following 2 lines from `creature_text`.`entry` 29519, 29520, 29565, 29566 and 29567:

- "You are hopelessly outmatched, $r."  (`BroadcastTextId` 30212)
- "Sate your hunger on cold steel, $r!" (`BroadcastTextId` 30214)

The untargeted variables $r and $n appear in the say lines because the existing script assigns the text to the player character instead of the creatures. This does not produce any race or name information in /say or chat.

This Pull Request closes issue #14700 and replaces PR  #15678.

(cherry picked from commit 89107c3a8e)
2015-10-30 11:33:40 +01:00
lafoniz 673648ee65 Scripts/ScarletEnclave: Add weapons to Unworthy Initiate
Closes #14954
Closes #14955
2015-07-19 21:56:16 +01:00
Duarte Duarte f4b74f8f1f Merge pull request #14106 from Noeliel/3.3.5
Scripts/ScarletEnclave: Add missing WorldObject parameter for Talk() ove...
(cherry picked from commit f961c06612)
2015-02-11 20:39:49 +00:00
Vincent-Michael ab90f74486 Update copyright note for 2015
Happy new year
2015-01-01 00:28:09 +01:00