Commit Graph

84 Commits

Author SHA1 Message Date
Brian fe90b1c974 Core/Gossip: stop log spam of unknown gossip option for quest givers.
--HG--
branch : trunk
2010-08-16 14:46:51 -06:00
QAston 8b057babf2 *Fix typo in r7dd45a018254, thanks to Shauren for narrowing the falling issue to that rev.
--HG--
branch : trunk
2010-08-13 20:53:33 +02:00
Spp 3e29ae1ee8 Dungeon Finder: Add vote kick support
--HG--
branch : trunk
2010-08-13 15:38:10 +02:00
azazel ed08bedc6e * Modify PlayerScript::OnChat hook. Now it takes one optional parameter of type void *. Value of this parameter depends on chat type.
* Modify chat and emote hook in PlayerScript to take Player parameter insted on WorldSession (this is player script, isn't it?)
* Move calls of OnChat hooks after validation of parameters and before actual call to chat methods. It's more logical because otherwise it will be necessary to repeat validation inside hooks.
* Make use of new PlayeScript hooks. Move chat logging logic into separate script.
* Add one path to scripts CMakeLists to make ChatLogScript happy.

--HG--
branch : trunk
2010-08-12 22:33:45 +06:00
azazel c6b4309f1e * Unsummon pet if direct control spell expire out of visibility range from owner (base on VladimirMangos changes)
* Move repeating code to separate method

--HG--
branch : trunk
2010-08-12 12:14:32 +06:00
silinoron c7b48c1ca9 Add PlayerScript hooks:
* OnMoneyChanged
* OnGiveXP
* OnReputationChange
* OnChat
* OnEmote
* OnTextEmote

--HG--
branch : trunk
2010-08-11 22:53:31 -07:00
silinoron 0963cb3aea Implement a PlayerScript class with a handful of new hooks:
* OnPVPKill
* OnCreatureKill
* OnPlayerKilledByCreature
* OnPlayerLevelChanged
* OnPlayerFreeTalentPointsChanged
* OnPlayerTalentsReset
* More hooks may be added in the future

--HG--
branch : trunk
2010-08-11 19:52:58 -07:00
Shauren 36d1405b52 Fixed bug allowing players to enter instance even if selected difficulty was disabled
Added map id to log when player tries to enter disabled map

--HG--
branch : trunk
2010-08-10 19:40:35 +02:00
Shauren 88965d9419 Fixed honor points and arena points displaying in currency tab
Currencies lost (spent all in vendor) are not removed from known currencies tab, they now display 0 count

--HG--
branch : trunk
2010-08-10 13:26:07 +02:00
Brian 1f52153410 Backed out changeset f751065ec933
Spell rep rate was already implemented by QAston

--HG--
branch : trunk
2010-08-09 11:33:31 -06:00
azazel f5399618d9 Implement reputation rates and aura effects for Spell::EffectReputation() (thanks Lynx3d)
--HG--
branch : trunk
2010-08-09 23:22:31 +06:00
click 1f80c7b3c0 Sourcefile sleanups -> tabs to spaces, remove whitespace - also update the cleanupscripts very slightly
--HG--
branch : trunk
2010-08-08 19:45:53 +02:00
XTZGZoReX 9083271a2f * Some singleton renames for consistency:
accmgr -> AccountMgr
objmgr -> ObjectMgr
auctionmgr -> sAuctionMgr
spellmgr -> sSpellMgr
CreatureEAI_Mgr -> sEventAIMgr
achievementmgr -> sAchievementMgr
gameeventmgr -> sGameEventMgr
sInstanceSaveManager -> sInstanceSaveMgr
poolhandler -> sPoolMgr

--HG--
branch : trunk
2010-08-08 05:25:45 +02:00
XTZGZoReX e03c873bcf * Move weather management to new WeatherMgr (yes, I care that much about the weather - I really do).
--HG--
branch : trunk
2010-08-08 05:06:13 +02:00
XTZGZoReX 909e332579 * Rename: BattleGround -> Battleground.
--HG--
branch : trunk
2010-08-08 04:37:24 +02:00
silinoron 36fffd9550 Properly fix problems with applying/removing mods on disarmed items.
--HG--
branch : trunk
2010-08-07 16:40:33 -07:00
silinoron 5aa6bb2169 Fix an exploit allowing druids to gain substantial stat increases.
Fixes issue #3316

--HG--
branch : trunk
2010-08-07 16:19:52 -07:00
XTZGZoReX 946adf469c *** New core <-> script library interface - complete rewrite of the old one.
* Removed the misdesigned on_events script/hooks.
* Lots of related cleanups and assertions.
* The interface is now fully object-oriented.
** Scripts no longer use function pointers.
** Scripts no longer use the general-purpose Script struct for everything.
** Script types are split into separate classes which must be inherited depending on what functionality is desired.
* Several script types have been added to allow extending functionality in a code-only manner (some script types require
  assignment in the recently added ScriptName columns in the database, though).
** SpellHandlerScript: Wrapper around spell scripts (returns new SpellScript objects (`spell_script_names`.`ScriptName`)).
** ServerScript: Allows scripting events that occur in the network layer.
** WorldScript: Allows scripting certain world-global events.
** FormulaScript: Allows hooking and interfering with core formulas.
** *MapScript: Allows hooking different map types (including world, instance, and battleground maps (`instance_template`.`ScriptName`)).
** ItemScript: Allows scripting of items (like the old interface (`item_template`.`ScriptName`)).
** CreatureScript: Allows scripting of creatures/AI (like the old interface (`creature_template`.`ScriptName`)).
** GameObjectScript: Allows scripting of gameobjects (like the old interface (`gameobject_template`.`ScriptName`)).
** AreaTriggerScript: Allows scripting triggered area triggers (like the old interface (`areatrigger_scripts`.`ScriptName`)).
** OutdoorPvPScript: Script which should return OutdoorPvP objects for use by OutdoorPvPMgr (`outdoorpvp_template`.`ScriptName`).
** CommandScript: Allows extending the in-core command table.
** WeatherScript: Allows scripting of weather changes (`game_weather`.`ScriptName`).
** AuctionHouseScript: Allows scripting of auction events.
** ConditionScript: Allows scripting of conditions (`conditions`.`ScriptName`).
** DynamicObjectScript: Allows scripting of dynamicobjects.
** TransportScript: Allows scripting of transport events (`transports`.`ScriptName`).
* OutdoorPvP objects are now created through scripts. This effectively means that they'll need to be moved to scripts
  before the they're functional again.
* The whole idea with this new interface is to allow expanding core functionality without touching core code. If further
  hooks are needed to expand functionality of the core, let us know; we'll add them, if we agree that it is appropriate
  to do so.
*** NOTE: The scripts project will _not_ build before it has been adapted to the new interface.
*** Thanks to everyone who helped out with related preparations and suggestions!

--HG--
branch : trunk
2010-08-06 19:23:43 +02:00
Liberate c0df111bb0 Fixes an exploit to get 65k spell power.
Fixes issue #3212

--HG--
branch : trunk
2010-08-06 13:00:16 +02:00
azazel 4fb3098d18 * Add NULL-pointer check to CharmInfo destructor. Closes issue #3287.
* Remove references to AuctionHouseBot files from win project.

--HG--
branch : trunk
2010-08-06 12:28:37 +06:00
silinoron 71ef21de21 Add helper Player::GetAverageItemLevel() function for future use in Dungeon Finder and vehicle scaling.
--HG--
branch : trunk
2010-08-05 14:18:33 -07:00
azazel 309970936c Remove phasing when player enters/leaves instance (by 2010phenix)
Closes issue #3279

--HG--
branch : trunk
2010-08-06 00:24:11 +06:00
azazel f9a51dc214 * Corpse related cleanup (author: Hunuza)
* Avoid saving of the corpse in arenas (author: VladimirMangos)

--HG--
branch : trunk
2010-08-06 00:15:29 +06:00
azazel 885fc368fd * Implement item limit category (based on changes by VladimirMangos)
* Additional check for HandleAutoBankItemOpcode (thanks to VladimitMangos)
* Properly show empty vendor list for empty item list (author: a1ien)
* More stricted checks for store operations (thanks to VladimirMangos)
* Prevent autostoring of not empty bags (thanks to L1ghtGu4rd)

Changes need testing. Please post bugs on our tracker.

--HG--
branch : trunk
2010-08-05 22:08:07 +06:00
Shauren a042b972ed Fixed pet talents amount exploit
Closes issue #3273.

--HG--
branch : trunk
2010-08-05 11:33:54 +02:00
QAston 6353e7dd8c *Update movement enums - thanks to Zor for info.
*Add functions for position data streaming.

--HG--
branch : trunk
2010-08-04 14:39:45 +02:00
Shauren 850868c8a3 Fixed issues with taking items from mail
Closes issue #3263.

--HG--
branch : trunk
2010-08-04 14:31:47 +02:00
Shauren b7d34dcb53 Cleaned up item flags: separated item proto flags and item field flags
Implemented use of:
ITEM_PROTO_FLAG_PROSPECTABLE and ITEM_PROTO_FLAG_MILLABLE now checked instead of bag family mask
ITEM_PROTO_FLAG_SMART_LOOT for profession recipes, player has to have skillline and not know the recipe
ITEM_PROTO_FLAG_OPENABLE item has to have it set to use item_loot_template
ITEM_PROTO_FLAG_NOT_USEABLE_IN_ARENA if this is set item can never be used in arena
ITEM_FLAG_UNLOCKED marks unlocked items

Simplified BoA check for mail sending
Stackable items are no longer refundable
Removed useless code that always set ITEM_FIELD_FLAGS equal to proto flags
Unlocking items (lockpicking) is now blizzlike

--HG--
branch : trunk
2010-08-04 10:34:30 +02:00
Shauren 46c1a4640d Groups are now stored by low guid in map
Creatures and gameobjects also store looting group by low guid instead of full guid

--HG--
branch : trunk
2010-08-02 17:28:47 +02:00
thenecromancer 270367abfc Prevent players from gaining rest state in hostile capital zones.
Fix a bug where PvP status never resets when not moving to another zone.
Reset PvP status at Taxi node end/worldport when moving into friendly territory.

--HG--
branch : trunk
2010-07-31 13:55:23 +02:00
thenecromancer bdf20fa420 Fix exploit with Shiv giving 100% chance to apply any enchant on offhand items
--HG--
branch : trunk
2010-07-31 13:49:13 +02:00
silinoron 71b1c781e3 Add basic support for NPCs on transports; DB data required.
Currently no support for combat while the transport is in motion.
Based on a patch by Socolin.
Fixes issue #168

--HG--
branch : trunk
2010-07-30 21:54:46 -07:00
click c298bdb662 Remove duplicate "Error:" from some outError messages...
--HG--
branch : trunk
2010-07-31 03:12:51 +02:00
QAston 48b360097c *use ASSERT macro instead of regular assert for better output.
--HG--
branch : trunk
2010-07-30 20:04:28 +02:00
Shauren 77fc91bde8 Deleted data blob in item_instance
Fixed issues with displaying sockets/enchants/durability on heroic items

--HG--
branch : trunk
2010-07-30 13:15:31 +02:00
Xanadu 3565bbccf3 Fixed NPCs not offering quests with warlock or druid in SkillOrClassMask to these classes.
--HG--
branch : trunk
2010-07-30 06:22:55 +02:00
Shauren ade1bbdd62 Remade access_requirement table, now each difficulty mode for each instance has its own entry (for future Dungeon Finder development)
Added completed achievement as new requirement type
Removed obsolete access_id from areatrigger_teleport table
Implemented automatic downscaling of raid difficulty when requested mode does not exist
Changed dungeon_difficulty in characters table to instance_mode_mask saving both dungeon and raid difficulty in form (dungeon diff | raid diff << 4)

--HG--
branch : trunk
2010-07-29 18:11:41 +02:00
Liberate f5e3943e54 Makes Auto-accepted quests show up the way they should. They should work perfectly again now.
--HG--
branch : trunk
2010-07-28 13:47:32 +02:00
QAston 86576de982 *Remove assert from opcode handler - to prevent remote crashing the server.
--HG--
branch : trunk
2010-07-28 01:39:37 +02:00
QAston e232c0e235 *Cleanup in ObjectAccessor - this should fix some crashes
--HG--
branch : trunk
2010-07-28 00:08:21 +02:00
QAston dd8d6701b8 *Implement RepRewardRate for spells.
--HG--
branch : trunk
2010-07-27 02:25:22 +02:00
Brian 4565242e94 * Implement reputation reward rate for quest / creatures
* Need DB data for this to work
* Original patch by NoFantasy

--HG--
branch : trunk
2010-07-26 16:21:10 -06:00
Shauren 4fb256254c Fixed bug in Player::Satisfy that allowed to sometimes bypass instance requirements
Fixed DisableMgr incorrectly blocking entry into maps when only one mode was disabled

--HG--
branch : trunk
2010-07-26 22:25:03 +02:00
QAston 31820f0340 *Typofix - forgotten assigment in 00dc724412 - fixes weapon usage.
--HG--
branch : trunk
2010-07-26 19:54:32 +02:00
QAston 7b87ab4de7 *Add more Player::CanUseAttackType checks in places where item bonuses are applied.
--HG--
branch : trunk
2010-07-26 16:08:55 +02:00
Brian 356cd25e67 * Added new specialflag in quest_template for auto-accept quests.
* SpecialFlags|4
* After much research it was determined that blizz does this serverside.

--HG--
branch : trunk
2010-07-24 16:30:48 -06:00
Brian 9ff821d8bb * Add the ability to set player orientation for new characters.
* Requires DB data to actully do anything, however not needed for working
* server
* Original patch by Vladimir

--HG--
branch : trunk
2010-07-22 14:37:32 -06:00
QAston 13a2a1afc6 *Fix amount calculation for spell effect with EffectDieSides set to 0.
--HG--
branch : trunk
2010-07-22 12:21:11 +02:00
Shauren cab2f7bad1 Fix new character delete system. Those queries were not supposed to be there.
patch by Az@zel

--HG--
branch : trunk
2010-07-22 12:16:47 +02:00
Brian 4320b10901 * Implement the ability to delete characters without them being removed from
* the DB, so they can be unerased
* Original patch by DasBlub
* Ported to Trinty by Az@zel

--HG--
branch : trunk
2010-07-21 12:13:23 -06:00