Commit Graph

5304 Commits

Author SHA1 Message Date
Keader
a2a8ffe723 Core/Scripts: Typo in last commit 2017-04-01 21:18:15 -03:00
Keader
8d198cb360 Core/Scripts: Fixed Volatile Ooze/Gas Cloud issues in Professor Putricide
Closes #18925
2017-04-01 21:16:55 -03:00
tkrokli
f6f36be004 Scripts: minimize duplicated enum names in header files (#19377)
* Scripts: Minimize duplicated enum names in header files

This reduces the number of cache resets with the Zapcc compiler

- Standard followed is instance/raid TLA + DataTypes/CreaturesIds/etc
- Partial cherry-pick of master commit 7eb4512eee
- Removed unused defines in sunken_temple.h (the core scripts using these have been moved to SAI)
2017-03-29 10:06:06 +02:00
ariel-
83162fafa4 Core/AI: Build fix
- Stop exposing DoublePosition constructor versions, they're only used for internal representation
- Moved IsInBounds function to public scope
2017-03-28 02:41:50 -03:00
ariel-
2f99fa09c9 Core/AI: AreaBoundary refactor
- Added an auxiliary function IsInBounds to base CreatureAI
- Changed container to vector. Set had no sense because we're storing new pointers, they have different addresses even if the boundary is the same
2017-03-28 01:52:49 -03:00
xinef1
e72b380b93 Added new creature extra flag which makes npc visible only to dead units
closes #19333

* Rename 9999_99_99_99_world.sql to 2017_99_99_99_world_335.sql

- file affects creature removed in patch 4.0.3a

* Update Creature.cpp
2017-03-27 06:41:53 +02:00
ariel-
8e1e081d6c Core/Scripts: implemented enchant Blade Warding 2017-03-26 14:19:20 -03:00
ccrs
9be7f5f57b Core/Movement: 96f4c7c followup 2017-03-25 13:17:29 +01:00
Gustavo
2792046dc7 Core/Scripts: minor fixes in boss_the_lich_king (#19311)
Closes #4427
Closes #7091
2017-03-24 08:59:04 -03:00
ariel-
b74cc80859 Core/Scripts: Updated Ulduar instance model
- Codestyle/indent fixes
- Added ObjectData for some GOs
- Added GetUlduarAI to creatures
- Fixed possible out-of-bounds access in boss_razorscale_controllerAI (boss AI number beyond allocated boss size)
2017-03-23 17:15:02 -03:00
Chaouki Dhib
a1f2f30c14 Core/Spells: fix wrong distance calculations in AoE spells [Needs testing] (#16290)
Core/Spells: Fix wrong distance calculations in AoE spells.
Pull request #16290 by chaodhib.
God bless, finally.
2017-03-23 00:43:04 +01:00
ariel-
8be85a5408 Core/Misc: cache server MOTD and properly format it for RA and when issuing .server motd 2017-03-21 00:51:13 -03:00
Keader
333a403409 Core/Scripts: Fixed wrong calculation of Aura of Desire
Closes #19322
2017-03-20 16:49:42 -03:00
ariel-
6f69f67f78 Core/Scripts: Updated Zul'Aman instance model
- Codestyle/indent fixes
- Use of DoorData and ObjectData
- Added GetZulamanAI for creatures
- Moved bosses to BossAI
2017-03-20 01:04:21 -03:00
Chazy Chaz
a63bd06ec6 Core/Players: Rename "heroic character" to "death knight"
Closes #19287
2017-03-17 19:03:59 +01:00
ariel-
f7758954f7 Core/Scripts: add condition check for npc_wyrmrest_defender
minor code refactors

Closes #19299
2017-03-14 20:38:16 -03:00
Gustavo
8c6fa411e8 Core/Scripts: implement boss Apothecary Hummel ("Love is in the Air" event boss) (#19076)
Closes #5114
2017-03-13 10:30:32 -03:00
Keader
bf5661e2fd Core/Scripts: Fixed Ingvar evade issue 2017-03-08 09:43:10 -03:00
ariel-
804257b99a Core/Scripts: converted Argent Tournament pennants to AI
Closes #14616
2017-03-07 13:33:19 -03:00
Shauren
a1b622e9cc Core/Unit: reduce differences between branches
Very partial cherry pick of:

Core/Units: Updated melee/spell hit chance calculation
(cherry picked from commit 61c7161a10)
2017-03-06 21:37:46 -03:00
ariel-
9c62acdf42 Core/Scripts: fix Glyph of Siphon Life
by Keader
2017-03-05 13:24:33 -03:00
ariel-
32c5d4f53f Core/Scripts: implement Hammer of the Righteous stacking Seal of Vengeance/Corruption
- Patch 3.2.0 Notes: Only auto-attacks and Hammer of the Righteous can place the debuff on the paladin's current target(s).

Closes #19239
2017-03-03 20:09:23 -03:00
xinef1
7567cafec8 Ensure that all actions are compared to fixed point in time (ie. world update start) (#18910)
- Actions will not be dependent on processing moment
- Increased GameObjects cooldown resolution to milliseconds, fixes arming time of traps to be exactly one second and not something from range (1000, 1999)
- Created GameTime namespace and UpdateTime class and moved there some code out of world
2017-03-01 22:19:25 -03:00
ariel-
12c680f9b1 Core/Scripts: Change null-check to assert
- ToPlayer() should never be null in this context
2017-03-01 19:35:39 -03:00
Keader
ecfb346d1a Core/Scripts: Fixed crash in Sindragosa
Closes #19227
2017-03-01 18:58:47 -03:00
ariel-
f302b3d68d Core/Scripts: implement Moss Covered Feet
Closes #19022
2017-02-28 14:09:25 -03:00
Naios
01168775ca Revert "Build: Create static libraries for each static script project."
This reverts commit bb46bfb864.

* Closes #19224
2017-02-28 15:16:32 +01:00
Naios
bb46bfb864 Build: Create static libraries for each static script project.
* Add some more comments and cleanup the build  script.
* Closes #18671
2017-02-27 22:52:48 +01:00
ariel-
c69a7d1223 Core/Auras: reworked multiplicative AuraEffects calculation
- Splitted containers for flat modifiers and pct modifiers, as they now have different handling
- Amount is now multiplied only on apply; on unapply, iterate through auras and reset the counter
- Fixes many cases of rounding error due to applying/unapplying of small factors
- Allows amounts to be zeroed (ie with an AuraEffect of amount -100)
- Do a partial revert of 6dc37a9add, auras should update amounts only for items allowed (ie no more giving crit to a sword while having an axe in the other hand and being Poleaxe spec'd)
- SPELL_AURA_MOD_SCALE now scales additively, rather than multiplicatively (checked in sniffs)

Closes #18687
2017-02-27 14:24:20 -03:00
jackpoz
6940071994 Core/Misc: Fix static analysis issues 2017-02-25 15:54:11 +01:00
ariel-
ace2a75197 Core/Scripts: kill a warning 2017-02-25 05:17:33 -03:00
ariel-
01f5befcec Core/Scripts: Thrusting Hodir's Spear
- Everything is sniffed, enjoy this hell of a quest!

Closes #12808
2017-02-25 04:46:02 -03:00
Gustavo
4224259d83 Core/Unit: Correct speed calculus when affected by SPELL_AURA_MOD_MINIMUM_SPEED (#18136) 2017-02-24 12:20:20 +01:00
ariel-
9934a43e09 Core/Scripts: kill a warning 2017-02-23 11:33:40 -03:00
ariel-
32e2207ab9 Core/Scripts: Victory Rush and Rune Strike proc correction
(d0f760420a follow up)
Closes #19192
2017-02-23 11:30:25 -03:00
ariel-
d0f760420a Core/Scripts: remove no longer needed scripts, use db attribute for disabling procs
(e7ccd8ea3f followup)

- Fix some broken procs after c0cb823a91

Closes #19068
2017-02-22 17:54:12 -03:00
Keader
bb3c964e7c Core/Scripts: Fixed Illidan epic sounds again (#19184) 2017-02-22 13:13:22 -03:00
ariel-
eac9c1f0b9 Core/Scripts: fix Nightfall proc chance and reduce it for victims with level above 60
Closes #15734
2017-02-21 22:38:30 -03:00
Gustavo
3a67c8e361 Core/Misc Remove Tabs and Whitespaces (#19179) 2017-02-21 18:37:34 +01:00
xinef1
ae9d01a324 Store cached static data queries, instead of building them in every query opcode (#18637)
- Added config option to enable / disable cache
- Reinitialize data on reload command use
- Always send WDB fields in item query
2017-02-20 16:27:08 -03:00
Keader
50973e9d6f Core/Scripts: Fixed epic sounds on Illidan Fight (#19172)
Thanks Kittnz for notice <3
2017-02-20 08:38:30 -03:00
Kittnz
495339a2c7 Script/GO: Alliance Bell, Horde Bell and Karazhan Bell will now send a bell sound on the start of each hour. (#19145)
* Script/GO: Alliance Bell, Horde Bell and Karazhan Bell will now send a bell sound on the start of each hour.

How many times it rings depence on the hour.

* fix little things from pr comments

* Added OnGameEvent

* Fix braces

* almost finished

* fix enum

* Add gameobjects to the game event

Fix override for InitializeAI

* enum squash

* remove braces

* Rename 9999_99_99_99_world.sql to 2017_02_19_01_world.sql
2017-02-19 20:47:40 +01:00
xinef1
b0ae5fadd1 Core/SmartAI: Various fixes and extensions for smart scripts: (#18673)
- Possible crashes fixed
- Memory leak fixed
- Implemented checking of vehicle conditions
- Extended eventphasemask to 12 bits (sql required to change DB field type)
- SMART_EVENT_GOSSIP_HELLO - added possibility to detect for gameobject reportUse call
- Renamed action SMART_ACTION_SET_FLY to SMART_ACTION_SET_DISABLE_GRAVITY (to reflect actual functionality)
- Added targetsLimit to action SMART_ACTION_CAST and SMART_ACTION_INVOKER_CAST to limit max amount of targets (selected randomly)
- Action SMART_ACTION_TALK corrected to always work as intended
- Properly call GroupEventHappens in action SMART_ACTION_CALL_GROUPEVENTHAPPENS if invoker was charmed or owned by the player
- Properly utilize followAngle in action SMART_ACTION_FOLLOW (db orientation should be in degrees), but keep backward compatibility
- Added action SMART_ACTION_SET_CAN_FLY (119) 0/1
- Added action SMART_ACTION_REMOVE_AURAS_BY_TYPE (120) AuraType, can be used to exit vehicle for example
- Added action SMART_ACTION_SET_SIGHT_DIST (121) sightDist
- Added action SMART_ACTION_FLEE (122) fleeTime
- Added action SMART_ACTION_ADD_THREAT (123) +threat, -threat
- Added action SMART_ACTION_LOAD_EQUIPMENT (124) equipmentId
- Added action SMART_ACTION_TRIGGER_RANDOM_TIMED_EVENT (125) minId, maxId
- Added action SMART_ACTION_REMOVE_ALL_GAMEOBJECTS (126), removes all owned gameobjects
- Added action SMART_ACTION_STOP_MOTION (127), stopMoving, movementExpired
- Extended target SMART_TARGET_HOSTILE_SECOND_AGGRO with following parameters maxdist, playerOnly, powerType + 1
- Extended target SMART_TARGET_HOSTILE_LAST_AGGRO with following parameters maxdist, playerOnly, powerType + 1
- Extended target SMART_TARGET_HOSTILE_RANDOM with following parameters maxdist, playerOnly, powerType + 1
- Extended target SMART_TARGET_HOSTILE_RANDOM_NOT_TOP with following parameters maxdist, playerOnly, powerType + 1
- Extended target SMART_TARGET_THREAT_LIST with maxdist
- Extended target SMART_TARGET_OWNER_OR_SUMMONER to be able to get charmer/owner of current owner
- Added new target SMART_TARGET_FARTHEST with maxDist, playerOnly, isInLos restrictions
- Added SpellHit hook to GameObjectAI and extended SmartGameObjectAI to call SMART_EVENT_SPELLHIT when gameobject is hit by spell
- Call GameObjectAI Reset hook on gameobject respawn (for ex. to reset one time events in smart scripts)
- Fixed some logic errors in code
- SmartAI Escorts properly despawn escortee if no players are in range
- Disable Evading while charming creature with SmartAI
- Don't call SMART_EVENT_RESPAWN for dead units before they actually respawn
- Don't call SMART_EVENT_RESPAWN for not spawned gameobjects
- Properly call SMART_EVENT_RESPAWN for gameobject respawn
- Allow action SMART_ACTION_SET_IN_COMBAT_WITH_ZONE to utilize targetlist
- Allow action SMART_ACTION_CALL_FOR_HELP to utilize targetList
- Allow action SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL to utilize targetList
- Allow action SMART_ACTION_SET_VISIBILITY to utilize targetList
- Allow action SMART_ACTION_SET_ACTIVE to utilize targetList
- Allow action SMART_ACTION_ATTACK_START to select random attack target instead of first on the list
- Allow gameobjects to summon gameobjects with action SMART_ACTION_SUMMON_GO
- Properly store action invokers for action SMART_ACTION_WP_START, if no player invokers are found, distance despawn check won't be used
- Allow action SMART_ACTION_WP_RESUME to compensate for the state the unit actually is in (eg. combat)
- Allow action SMART_ACTION_MOVE_TO_POS to select random of the avaiable targets, not only the first one.
- Allow action SMART_ACTION_MOVE_TO_POS to utilize x, y, z parameters as an offset to calculated coordinates
- Action SMART_ACTION_RESPAWN_TARGET should never modify respawntime of already spawned gameobjects, use dedicated function
- Properly delete ontime events created by SMART_ACTION_CREATE_TIMED_EVENT
- If action could not be started because conditions were not satisfied, do not recalculate the waittime to action repeattime, use smaller value to recheck more frequently
- Allow target SMART_TARGET_CLOSEST_PLAYER to be used by gameobjects
- Allow target SMART_TARGET_OWNER_OR_SUMMONER to be used by gameobjects
- Fixed SMART_EVENT_COUNTER_SET to be only called for the id that was incremented
- Changed the way counters work
- Protect PhaseInc from surpassing maximum phase
- Added loading checks for missing NON_REPEATABLE flag if no repeatmin, repeatmax is set
- Added spell validation for SMART_ACTION_CROSS_CAST
2017-02-17 21:33:18 +01:00
Gustavo
4536846d7d Core/Scripts Update boss Skadi the Ruthless (#19114) 2017-02-12 05:43:55 -03:00
jackpoz
865a3a47ea Core/Misc: Fix static analysis issues 2017-02-11 21:01:11 +01:00
Gustavo
87f2cb04ca Core/Scripts Rework boss Terestian Illhoof (Karazhan) (#19057) 2017-02-09 23:01:39 -03:00
Keader
8f00aa92de Build fix and codestyle 2017-02-09 21:12:12 -03:00
Afgann
21b5a377e4 Core/Scripts: Moorabi encounter updated. (#19013) 2017-02-09 21:07:29 -03:00
ariel-
149e449506 Update spell_item.cpp
Small indent and codestyle fixes
2017-02-09 16:01:43 -03:00
Gustavo
d06391d062 Core/Scripts Update boss Maiden of Virtue (#19058) 2017-02-05 19:45:13 -03:00