-
Notifications
You must be signed in to change notification settings - Fork 57
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
Effects follow offset, add ini option to disable offset for effect #663
Conversation
This is pretty hacky, but the offset data is necessary to move the effect layer in relation to the character.
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.
Need to make ignore_offsets work lol
+ Some comments
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.
Looks good
int self_offset = self_offsets[0].toInt(); | ||
int self_offset_v; | ||
if (self_offsets.length() <= 1) | ||
self_offset_v = 0; | ||
else | ||
self_offset_v = self_offsets[1].toInt(); | ||
ui_vp_player_char->move(ui_viewport->width() * self_offset / 100, ui_viewport->height() * self_offset_v / 100); | ||
|
||
//If an effect is ignoring the users offset, we force it to the default position of the viewport. | ||
if (ao_app->get_effect_property(play_effect[0], current_char, "ignore_offset") == "true") { |
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.
Very good, thank you. Let's document this.
EDIT: Let's pretend I didn't see that global variable there
@@ -3321,7 +3321,7 @@ void Courtroom::start_chat_ticking() | |||
// handle expanded desk mods | |||
switch(m_chatmessage[DESK_MOD].toInt()) { | |||
case 4: | |||
set_self_offset(m_chatmessage[SELF_OFFSET]); | |||
set_self_offset(m_chatmessage[SELF_OFFSET], QString("||")); |
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.
QString("||")
is not necessary. You may either use "||"
or QStringLiteral("||")
(some also prefer QLatin1String
for efficiency, but the performance benefit is negligible)
@@ -3762,15 +3762,28 @@ void Courtroom::set_scene(QString f_desk_mod, QString f_side) | |||
} | |||
} | |||
|
|||
void Courtroom::set_self_offset(QString p_list) { | |||
void Courtroom::set_self_offset(QString p_list, QString p_effect) { |
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 am not sure why this method takes in a QString when it should really take in a QStringList.
This is pretty hacky and ugly, but the offset data is necessary to move the effect layer in relation to the character.
closes #639