-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(Core/Scripting): Add new hooks for Ticket #21238
base: master
Are you sure you want to change the base?
Conversation
CALL_ENABLED_HOOKS(TicketScript, TICKETHOOK_ON_TICKET_RESOLVE, script->OnTicketResolve(player, ticket)); | ||
} | ||
|
||
TicketScript::TicketScript(const char* name, std::vector<uint16> enabledHooks) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
char const* name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't understand why you want to change this, when it has no impact, is it by convention?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh ok, thanks :D
class TicketScript : public ScriptObject | ||
{ | ||
protected: | ||
TicketScript(const char* name, std::vector<uint16> enabledHooks = std::vector<uint16>()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
char const*
{ | ||
_lastChange = GameTime::GetGameTime().count(); | ||
|
||
sScriptMgr->OnTicketUpdate(ticket->GetPlayer(), ticket); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
probably better named as OnTicketUpdateLastChange
?
#include "ScriptMgr.h" | ||
#include "ScriptMgrMacros.h" | ||
|
||
void ScriptMgr::OnTicketCreate(Player* player, GmTicket* ticket) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i must say that I don't see a benefit of adding the player
parameter here. you can always get it from the ticket, right? by adding this parameter, you're also adding a call to ticket->GetPlayer()
for each hook call even if the hooks are unused
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that's right, you can access the player directly from GMTicket, I've added ‘player’ out of habit x)
Changes Proposed:
This PR proposes changes to:
Issues Addressed:
SOURCE:
The changes have been validated through:
Tests Performed:
This PR has been:
How to Test the Changes:
Known Issues and TODO List:
How to Test AzerothCore PRs
When a PR is ready to be tested, it will be marked as [WAITING TO BE TESTED].
You can help by testing PRs and writing your feedback here on the PR's page on GitHub. Follow the instructions here:
http://www.azerothcore.org/wiki/How-to-test-a-PR
REMEMBER: when testing a PR that changes something generic (i.e. a part of code that handles more than one specific thing), the tester should not only check that the PR does its job (e.g. fixing spell XXX) but especially check that the PR does not cause any regression (i.e. introducing new bugs).
For example: if a PR fixes spell X by changing a part of code that handles spells X, Y, and Z, we should not only test X, but we should test Y and Z as well.