diff options
| author | Crystalwarrior <Varsash@Gmail.com> | 2021-01-19 16:02:28 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-19 16:02:28 +0300 |
| commit | 0926f3c15842a71002c0ec374fd54832469036d8 (patch) | |
| tree | e679c1b6f567f29ae09cbd52fa442dd752107f85 /src/aolayer.cpp | |
| parent | 8c60fb2fcd32081daae94de62ff1d626192d7fae (diff) | |
Implement sticker logic with animated image support (#414)
* Implement sticker logic with animated image support (will probably be remade in a much better way for AOLayers)
* port to aolayer
Co-authored-by: in1tiate <radwoodward@vikings.grayson.edu>
Diffstat (limited to 'src/aolayer.cpp')
| -rw-r--r-- | src/aolayer.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/aolayer.cpp b/src/aolayer.cpp index de8a451c..f95773b0 100644 --- a/src/aolayer.cpp +++ b/src/aolayer.cpp @@ -49,6 +49,11 @@ InterfaceLayer::InterfaceLayer(QWidget *p_parent, AOApplication *p_ao_app) { } +StickerLayer::StickerLayer(QWidget *p_parent, AOApplication *p_ao_app) + : AOLayer(p_parent, p_ao_app) +{ +} + QString AOLayer::find_image(QList<QString> p_list) { QString image_path; @@ -278,6 +283,25 @@ void InterfaceLayer::load_image(QString p_filename, QString p_miscname) start_playback(find_image(pathlist)); } +void StickerLayer::load_image(QString p_charname) +{ + QString miscname = ao_app->get_char_shouts(p_charname); + transform_mode = ao_app->get_misc_scaling(miscname); + QList<QString> pathlist = { + ao_app->get_image_suffix(ao_app->get_base_path() + "misc/" + + miscname + "/sticker/" + p_charname), // Misc path + ao_app->get_image_suffix(ao_app->get_custom_theme_path(miscname, "sticker/" + p_charname)), // Custom theme path + ao_app->get_image_suffix(ao_app->get_theme_path("sticker/" + p_charname)), // Theme path + ao_app->get_image_suffix( + ao_app->get_default_theme_path("sticker/" + p_charname)), // Default theme path + ao_app->get_image_suffix( + ao_app->get_character_path(p_charname, "sticker")), // Character folder + ao_app->get_image_suffix( + ao_app->get_character_path(p_charname, "showname")), // Scuffed DRO way + }; + start_playback(find_image(pathlist)); +} + void CharLayer::start_playback(QString p_image) { movie_effects.clear(); |
