-
Notifications
You must be signed in to change notification settings - Fork 164
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
Quest translations do not update w/paging #2966
Comments
i've no idea if who is working on this... if no injection into game client's pixi event system, stick to our legacy overlay method, the solution might be:
the snippet of click event pass through might be (not tested on real game yet): $(".overlay_button").on("click", function(e) {
console.debug("Button clicked", e);
// do the same thing that game does
// hide this button first
$(this).hide();
// simulate the same position click event on canvas so that the game still work
const elm = document.elementFromPoint(e.clientX, e.clientY);
const ev = new window.MouseEvent("click", {
'view': window,
'bubbles': true,
'cancelable': true,
'clientX': e.clientX,
'clientY': e.clientY,
'screenX': e.screenX,
'screenY': e.screenY,
});
elm.dispatchEvent(ev);
// show this button again
$(this).show();
}); if i'm working on this method, my poor network might slow progress... |
@sinsinpub How about this? |
@HitomaruKonpaku no sure if people who can't read Japanese are able to match the English list in the panel with the in-game screen list? specially when selected period tab is not |
@sinsinpub I can add page number for more clarify
I dont understand this part |
i meant the left-side tabs for |
Yea it following api result
will do |
I had same problem too I no have idea to get out of this |
Wait for the 34.5.0 release, @tinefanforvettel Hopefully in about a week due to chrome webstore delays and such, however that could be postponed etc. |
|
After a lot of debugging, I managed to write a code that hook into the PIXI event emitter and successfully intercept the new quest page and filter change event. I have no experience in developing this extension, so someone here who have can use the code below. Inject the code below as content script into the game page to intercept event. (function(){
var PIXIEventEmitter = PIXI.utils.EventEmitter;
var _emit = PIXIEventEmitter.prototype.emit;
PIXIEventEmitter.prototype.emit = function EmitterHook(t, e, r, n, i, o){
if( t == "pointerup" ){
if( e && e.type == "pointerup" && e.currentTarget ){
if( e.currentTarget._page_no !== undefined ){
console.log( "Quest page changed to " + e.currentTarget._page_no );
}
else if( e.currentTarget._filter !== undefined ){
if( !e.currentTarget._selected )
console.log( "Quest filter changed to " + e.currentTarget._filter );
else
console.log( "Quest filter unset" );
}
else if( e.currentTarget.parent && e.currentTarget.parent._next == e.currentTarget ){
console.log( "Quest page next" );
}
else if( e.currentTarget.parent && e.currentTarget.parent._prev == e.currentTarget ){
console.log( "Quest page prev" );
}
else if( e.currentTarget.parent && e.currentTarget.parent._first == e.currentTarget ){
console.log( "Quest page first" );
}
else if( e.currentTarget.parent && e.currentTarget.parent._last == e.currentTarget ){
console.log( "Quest page last" );
}
}
}
_emit.apply( this, arguments );
}
})(); |
How to use this code? |
Replace a console log with event message to KC3 extension to notify it about the page change. I don't know how to implement it at the moment because I don't have a lot of experience with chrome extension. Someone within the KC3 development team should have an idea how to implement it. |
I've already made a working branch on my own fork, so have a look. I think it's a bit of a dirty fix. Someone here maybe able to do it better. It even uses the hidden option that enabled the game code hooking. |
Not defined |
Just would like to bump this that the issue is still appearing in 34.8.0. |
Versions:
Chrome: 80.0.3987.149
OS: Windows 7 SP 1 64-bit
KC3 Kai: 34.4.4
Build: webstore
Game Mode: "Customize DMM Website" (the default)
Steps to reproduce:
Log in, go to the ingame Quests page, select a duration with more than 5 quests (e.g. "Once"), and then move from the first page to any other. Alternatively, instead of moving, use the new "Type" tabs at the upper-right.
Actual behaviour:
Quest translation overlay does not update to match the quests underneath.
Expected behaviour:
Quest translation overlay updates to match the quests underneath.
Screenshots (if applicable):
As seen here, page 1 of the "Others" duration contained five quests, four of which are Arsenal quests. Moving to page 2 did not change the overlay, thus the translations do not match the quests being displayed.
Other comments:
The game used to load from the server when you changed pages, as well as when you changed durations. While it still loads when you change duration, it no longer loads when changing pages (or using the new "Type" tabs). I suspect this is the reason why the overlay isn't updating.
The text was updated successfully, but these errors were encountered: